.card.svelte-1pbzx1x{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);box-shadow:var(--shadow-sm);transition:transform var(--transition-base), box-shadow var(--transition-base);flex-direction:column;display:flex;overflow:hidden}.card.svelte-1pbzx1x:hover{box-shadow:var(--shadow-md);text-decoration:none;transform:translateY(-3px)}.cover.svelte-1pbzx1x{aspect-ratio:2.4;background:var(--color-surface-sunken);position:relative;overflow:hidden}.cover-image.svelte-1pbzx1x{transition:transform var(--transition-base);position:absolute;inset:0}.card.svelte-1pbzx1x:hover .cover-image:where(.svelte-1pbzx1x){transform:scale(1.08)}.category.svelte-1pbzx1x{left:var(--space-3);bottom:var(--space-3);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);color:#fff;font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.02em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000059;position:absolute}.body.svelte-1pbzx1x{gap:var(--space-2);padding:var(--space-4) var(--space-5) var(--space-5);flex-direction:column;display:flex}.level.svelte-1pbzx1x{text-transform:uppercase;letter-spacing:.06em;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-primary)}.body.svelte-1pbzx1x h3:where(.svelte-1pbzx1x){font-size:var(--text-lg)}.body.svelte-1pbzx1x p:where(.svelte-1pbzx1x){color:var(--color-text-muted);font-size:var(--text-sm);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.meta.svelte-1pbzx1x{align-items:center;gap:var(--space-2);margin-top:var(--space-2);color:var(--color-text-subtle);font-size:var(--text-sm);display:flex}.not-enrolled.svelte-1pbzx1x{color:var(--color-text-subtle)}.progress-ring.svelte-1pbzx1x{align-items:center;gap:var(--space-1);color:var(--color-success);font-weight:var(--weight-medium);display:inline-flex}.progress-ring.svelte-1pbzx1x svg:where(.svelte-1pbzx1x){flex-shrink:0;transform:rotate(-90deg)scaleY(-1)}.ring-track.svelte-1pbzx1x{fill:none;stroke:var(--color-border-strong);stroke-width:2.5px}.ring-fill.svelte-1pbzx1x{fill:none;stroke:var(--color-success);stroke-width:2.5px;stroke-linecap:round;transition:stroke-dashoffset var(--transition-base)}
