.page-container.svelte-tllgyw{max-width:900px;margin:0 auto;padding:2rem 1.5rem 4rem}.page-header.svelte-tllgyw{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}@media (min-width: 640px){.page-header.svelte-tllgyw{flex-direction:row;align-items:center;justify-content:space-between}}.page-title.svelte-tllgyw{font-size:1.75rem;font-weight:600;color:hsl(var(--foreground));margin-bottom:.25rem}.page-subtitle.svelte-tllgyw{color:hsl(var(--muted-foreground))}.period-filter.svelte-tllgyw{display:flex;gap:.25rem;background:hsl(var(--secondary));padding:.25rem;border-radius:.5rem}.period-btn.svelte-tllgyw{padding:.5rem .875rem;font-size:.875rem;font-weight:500;color:hsl(var(--muted-foreground));background:transparent;border:none;border-radius:.375rem;cursor:pointer;transition:all .15s}.period-btn.svelte-tllgyw:hover{color:hsl(var(--foreground))}.period-btn.active.svelte-tllgyw{color:hsl(var(--foreground));background:hsl(var(--background));box-shadow:0 1px 2px hsl(var(--foreground) / .05)}.your-progress-card.svelte-tllgyw{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:1rem;padding:1.5rem;margin-bottom:2rem}.your-progress-header.svelte-tllgyw{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.your-progress-title.svelte-tllgyw{font-size:1rem;font-weight:600}.percentile-badge.svelte-tllgyw{font-size:.75rem;font-weight:500;padding:.25rem .75rem;background:hsl(var(--accent) / .1);color:hsl(var(--accent));border-radius:9999px}.your-stats.svelte-tllgyw{display:flex;gap:2rem;margin-bottom:1rem}.your-stat.svelte-tllgyw{display:flex;flex-direction:column}.your-stat-value.svelte-tllgyw{font-size:1.5rem;font-weight:600}.your-stat-label.svelte-tllgyw{font-size:.75rem;color:hsl(var(--muted-foreground))}.progress-bar-container.svelte-tllgyw{display:flex;align-items:center;gap:1rem}.progress-bar.svelte-tllgyw{flex:1;height:8px;background:hsl(var(--muted));border-radius:9999px;overflow:hidden}.progress-bar-fill.svelte-tllgyw{height:100%;background:linear-gradient(90deg,hsl(var(--primary)),hsl(var(--accent)));border-radius:9999px;transition:width .5s ease-out}.progress-text.svelte-tllgyw{font-size:.75rem;color:hsl(var(--muted-foreground));white-space:nowrap}.spotlight-section.svelte-tllgyw{margin-bottom:2.5rem}.section-title.svelte-tllgyw{font-size:1rem;font-weight:600;color:hsl(var(--foreground));margin-bottom:1rem}.spotlight-grid.svelte-tllgyw{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media (max-width: 640px){.spotlight-grid.svelte-tllgyw{grid-template-columns:1fr}}.spotlight-card.svelte-tllgyw{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;padding:1.25rem;text-align:center;transition:transform .2s,box-shadow .2s}.spotlight-card.svelte-tllgyw:hover{transform:translateY(-2px);box-shadow:0 4px 12px hsl(var(--foreground) / .08)}.spotlight-card.first.svelte-tllgyw{border-color:hsl(var(--primary) / .3);background:linear-gradient(180deg,hsl(var(--primary) / .05),hsl(var(--card)))}.spotlight-rank.svelte-tllgyw{font-size:1.5rem;margin-bottom:.5rem}.spotlight-avatar.svelte-tllgyw{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;margin:0 auto .75rem}.spotlight-name.svelte-tllgyw{font-size:.9375rem;font-weight:600;margin-bottom:.25rem}.spotlight-points.svelte-tllgyw{font-size:.875rem;color:hsl(var(--primary));font-weight:500;margin-bottom:.5rem}.spotlight-meta.svelte-tllgyw{font-size:.75rem;color:hsl(var(--muted-foreground));display:flex;flex-direction:column;gap:.25rem}.spotlight-meta.svelte-tllgyw .streak:where(.svelte-tllgyw){color:hsl(var(--foreground))}.class-list-section.svelte-tllgyw{margin-bottom:2rem}.class-list.svelte-tllgyw{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.75rem;overflow:hidden}.student-row.svelte-tllgyw{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid hsl(var(--border));transition:background .15s}.student-row.svelte-tllgyw:last-child{border-bottom:none}.student-row.svelte-tllgyw:hover{background:hsl(var(--secondary) / .5)}.student-row.highlighted.svelte-tllgyw{background:hsl(var(--primary) / .03)}.student-rank.svelte-tllgyw{width:32px;flex-shrink:0}.rank-number.svelte-tllgyw{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:.875rem;font-weight:600;background:hsl(var(--secondary));border-radius:.375rem;color:hsl(var(--muted-foreground))}.student-row.highlighted.svelte-tllgyw .rank-number:where(.svelte-tllgyw){background:hsl(var(--primary) / .1);color:hsl(var(--primary))}.student-info.svelte-tllgyw{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.student-avatar.svelte-tllgyw{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.75rem;flex-shrink:0}.student-details.svelte-tllgyw{display:flex;flex-direction:column;min-width:0}.student-name.svelte-tllgyw{font-weight:500;font-size:.9375rem}.student-activity.svelte-tllgyw{font-size:.75rem;color:hsl(var(--muted-foreground));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-stats.svelte-tllgyw{display:flex;align-items:center;gap:1.5rem}@media (max-width: 640px){.student-stats.svelte-tllgyw{gap:1rem}}.stat-item.svelte-tllgyw{display:flex;flex-direction:column;align-items:flex-end;min-width:50px}.stat-value.svelte-tllgyw{font-weight:600;font-size:.9375rem}.stat-label.svelte-tllgyw{font-size:.625rem;color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em}.streak-badge.svelte-tllgyw{font-size:.75rem;padding:.25rem .5rem;background:hsl(var(--warning) / .1);border-radius:9999px}.cta-section.svelte-tllgyw{margin-top:2rem}.cta-card.svelte-tllgyw{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;background:hsl(var(--card));border:1px dashed hsl(var(--border));border-radius:.75rem;text-align:center}@media (min-width: 640px){.cta-card.svelte-tllgyw{flex-direction:row;justify-content:space-between;text-align:left}}.cta-title.svelte-tllgyw{font-size:1rem;font-weight:600;margin-bottom:.25rem}.cta-description.svelte-tllgyw{font-size:.875rem;color:hsl(var(--muted-foreground))}
