.dashboard-wrapper:where(.astro-3nssi2tu){display:flex;flex-direction:column;gap:2rem;margin-top:1.5rem}.welcome-section:where(.astro-3nssi2tu) h2:where(.astro-3nssi2tu){margin-top:0!important;font-size:1.75rem!important;font-weight:700}.welcome-section:where(.astro-3nssi2tu) p:where(.astro-3nssi2tu){color:var(--sl-color-text-muted, #9CA3AF);margin:.5rem 0 0}.stats-grid:where(.astro-3nssi2tu){display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1.5rem}@media(min-width:640px){.stats-grid:where(.astro-3nssi2tu){grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.stats-grid:where(.astro-3nssi2tu){grid-template-columns:repeat(3,minmax(0,1fr))}}.stat-card:where(.astro-3nssi2tu){background:var(--sl-color-bg-nav, #111827);border:1px solid var(--sl-color-border, #1F2937);border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;opacity:0;transform:translateY(12px);animation:cardEnter .5s cubic-bezier(.4,0,.2,1) forwards}.stat-card:where(.astro-3nssi2tu):nth-child(1){animation-delay:.05s}.stat-card:where(.astro-3nssi2tu):nth-child(2){animation-delay:.15s}.stat-card:where(.astro-3nssi2tu):nth-child(3){animation-delay:.25s}@keyframes cardEnter{to{opacity:1;transform:translateY(0)}}.stat-label:where(.astro-3nssi2tu){font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--sl-color-text-muted, #9CA3AF)}.stat-value:where(.astro-3nssi2tu){font-size:2.25rem;font-weight:700;color:var(--sl-color-text, #F9FAFB);line-height:1}.stat-desc:where(.astro-3nssi2tu){font-size:.85rem;color:var(--sl-color-text-muted, #9CA3AF);margin:0!important}.progress-bar-container:where(.astro-3nssi2tu){height:6px;background:var(--sl-color-border, #1F2937);border-radius:3px;overflow:hidden;margin-top:auto}.progress-bar-fill:where(.astro-3nssi2tu){height:100%;width:0%;background:var(--sl-color-text-accent, #C5F441);transition:width .6s cubic-bezier(.4,0,.2,1);position:relative}.progress-bar-fill:where(.astro-3nssi2tu):after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);animation:shimmer 2s ease-in-out infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.details-section:where(.astro-3nssi2tu) h3:where(.astro-3nssi2tu){font-size:1.25rem!important;font-weight:700;margin-bottom:1.25rem!important}.module-progress-item:where(.astro-3nssi2tu){background:var(--sl-color-bg-nav, #111827);border:1px solid var(--sl-color-border, #1F2937);border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;opacity:0;transform:translateY(12px);animation:cardEnter .5s cubic-bezier(.4,0,.2,1) .35s forwards}.module-info:where(.astro-3nssi2tu){display:flex;justify-content:space-between;align-items:flex-start}.module-info:where(.astro-3nssi2tu) h4:where(.astro-3nssi2tu){margin:0!important;font-size:1.1rem!important;font-weight:600}.module-desc:where(.astro-3nssi2tu){font-size:.85rem;color:var(--sl-color-text-muted, #9CA3AF);margin:.25rem 0 0!important}.module-percentage:where(.astro-3nssi2tu){font-size:1.25rem;font-weight:700;color:var(--sl-color-text-accent, #C5F441)}.lesson-list:where(.astro-3nssi2tu){list-style:none!important;padding-left:0!important;margin:.5rem 0 0!important;display:flex;flex-direction:column;gap:.75rem}.lesson-list:where(.astro-3nssi2tu) li:where(.astro-3nssi2tu){display:flex;align-items:center;gap:.75rem;margin:0!important}.status-indicator:where(.astro-3nssi2tu){width:8px;height:8px;border-radius:50%;background:var(--sl-color-border, #1F2937);display:inline-block}.status-indicator:where(.astro-3nssi2tu).completed{background:#22c55e}.status-indicator:where(.astro-3nssi2tu).in-progress{background:#f59e0b}.lesson-title:where(.astro-3nssi2tu){font-size:.9rem;color:var(--sl-color-text, #F9FAFB)}.sharing-section:where(.astro-3nssi2tu){display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1.5rem;margin-top:1rem}@media(min-width:768px){.sharing-section:where(.astro-3nssi2tu){grid-template-columns:repeat(2,minmax(0,1fr))}}.sharing-card:where(.astro-3nssi2tu){background:var(--sl-color-bg-nav, #111827);border:1px solid var(--sl-color-border, #1F2937);border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.sharing-card:where(.astro-3nssi2tu) h4:where(.astro-3nssi2tu){margin:0!important;font-size:1.1rem!important;font-weight:600}.sharing-card:where(.astro-3nssi2tu) p:where(.astro-3nssi2tu){font-size:.85rem;color:var(--sl-color-text-muted, #9CA3AF);margin:0!important}.share-actions:where(.astro-3nssi2tu){display:flex;gap:.75rem;margin-top:.5rem;align-items:center;width:100%}.code-output-container:where(.astro-3nssi2tu){display:flex;gap:.5rem;flex-grow:1;width:100%}.code-output-container:where(.astro-3nssi2tu).hidden{display:none}.sharing-card:where(.astro-3nssi2tu) input:where(.astro-3nssi2tu)[type=text]{background:#0d1117;border:1px solid var(--sl-color-border, #1F2937);border-radius:6px;padding:.5rem .75rem;color:var(--sl-color-text, #F9FAFB);font-family:JetBrains Mono,monospace;font-size:.85rem;flex-grow:1;min-width:0}.dashboard-btn:where(.astro-3nssi2tu){border:none;border-radius:6px;padding:.5rem 1rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.primary-btn:where(.astro-3nssi2tu){background:var(--sl-color-text-accent, #C5F441);color:#000}.primary-btn:where(.astro-3nssi2tu):hover{background:#b2dd34;transform:translateY(-1px)}.secondary-btn:where(.astro-3nssi2tu){background:var(--sl-color-border, #1F2937);color:var(--sl-color-text, #F9FAFB);border:1px solid var(--sl-color-border, #1F2937)}.secondary-btn:where(.astro-3nssi2tu):hover{background:#2d3748}.feedback-msg:where(.astro-3nssi2tu){margin-top:.25rem!important;font-size:.8rem;font-weight:500;min-height:1.2rem}.feedback-msg:where(.astro-3nssi2tu).success{color:#22c55e}.feedback-msg:where(.astro-3nssi2tu).error{color:#ef4444}
