.phase-page.svelte-1yocwvl{max-width:var(--container-lg);margin:0 auto}.phase-header.svelte-1yocwvl{border-radius:var(--radius-xl);padding:var(--space-8);margin-bottom:var(--space-8);color:#fff}.header-content.svelte-1yocwvl{max-width:600px}.phase-badge.svelte-1yocwvl{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background-color:#fff3;border-radius:var(--radius-full);margin-bottom:var(--space-4)}.phase-icon.svelte-1yocwvl{font-size:var(--text-xl)}.phase-label.svelte-1yocwvl{font-size:var(--text-sm);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em}.phase-title.svelte-1yocwvl{font-size:var(--text-3xl);font-weight:var(--font-bold);margin:0 0 var(--space-3) 0}.phase-description.svelte-1yocwvl{font-size:var(--text-lg);opacity:.9;margin:0 0 var(--space-6) 0;line-height:var(--leading-relaxed)}.phase-stats.svelte-1yocwvl{display:flex;gap:var(--space-6)}.stat.svelte-1yocwvl{display:flex;flex-direction:column;align-items:center}.stat-value.svelte-1yocwvl{font-size:var(--text-2xl);font-weight:var(--font-bold)}.stat-label.svelte-1yocwvl{font-size:var(--text-sm);opacity:.8}.section-title.svelte-1yocwvl{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--space-4) 0}.modules-section.svelte-1yocwvl{margin-bottom:var(--space-8)}.modules-list.svelte-1yocwvl{display:flex;flex-direction:column;gap:var(--space-3)}.module-card.svelte-1yocwvl{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background-color:var(--color-bg-primary);border:var(--border-width) solid var(--color-border-primary);border-radius:var(--radius-lg);text-decoration:none;color:inherit;transition:all var(--duration-150) var(--ease-out)}.module-card.svelte-1yocwvl:hover{border-color:var(--color-primary-500);box-shadow:var(--shadow-md);text-decoration:none}.module-number.svelte-1yocwvl{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text-secondary);flex-shrink:0}.module-content.svelte-1yocwvl{flex:1;min-width:0}.module-title.svelte-1yocwvl{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--space-1) 0}.module-description.svelte-1yocwvl{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0 0 var(--space-2) 0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.module-meta.svelte-1yocwvl{display:flex;gap:var(--space-4)}.meta-item.svelte-1yocwvl{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-tertiary)}.module-progress.svelte-1yocwvl{margin-top:var(--space-2)}.module-arrow.svelte-1yocwvl{color:var(--color-text-tertiary);transition:transform var(--duration-150) var(--ease-out)}.module-card.svelte-1yocwvl:hover .module-arrow:where(.svelte-1yocwvl){transform:translate(4px);color:var(--color-primary-500)}.labs-section.svelte-1yocwvl{margin-bottom:var(--space-8)}.labs-grid.svelte-1yocwvl{display:grid;grid-template-columns:1fr;gap:var(--space-4)}@media(min-width:640px){.labs-grid.svelte-1yocwvl{grid-template-columns:repeat(2,1fr)}}.lab-card.svelte-1yocwvl{display:flex;flex-direction:column;padding:var(--space-4);background-color:var(--color-bg-primary);border:var(--border-width) solid var(--color-border-primary);border-radius:var(--radius-lg);text-decoration:none;color:inherit;transition:all var(--duration-150) var(--ease-out)}.lab-card.svelte-1yocwvl:hover{border-color:var(--color-warning-500);box-shadow:var(--shadow-md);text-decoration:none}.lab-header.svelte-1yocwvl{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.lab-icon.svelte-1yocwvl{display:flex;align-items:center;justify-content:center;color:var(--color-warning-500)}.lab-difficulty.svelte-1yocwvl{font-size:var(--text-xs);font-weight:var(--font-medium);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.difficulty-beginner.svelte-1yocwvl{background-color:var(--difficulty-beginner-bg);color:var(--difficulty-beginner-text)}.difficulty-intermediate.svelte-1yocwvl{background-color:var(--difficulty-intermediate-bg);color:var(--difficulty-intermediate-text)}.difficulty-advanced.svelte-1yocwvl{background-color:var(--difficulty-advanced-bg);color:var(--difficulty-advanced-text)}.lab-title.svelte-1yocwvl{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0}.lab-description.svelte-1yocwvl{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin:0 0 var(--space-3) 0;flex:1}.lab-meta.svelte-1yocwvl{display:flex;gap:var(--space-4)}.deliverable-section.svelte-1yocwvl{margin-bottom:var(--space-8)}.deliverable-card.svelte-1yocwvl{display:flex;gap:var(--space-4);padding:var(--space-6);background:var(--deliverable-card-gradient);border:var(--border-width-2) solid var(--deliverable-card-border);border-radius:var(--radius-xl)}.deliverable-icon.svelte-1yocwvl{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-primary-500)}.deliverable-content.svelte-1yocwvl{flex:1}.deliverable-label.svelte-1yocwvl{display:block;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--deliverable-label-text);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.deliverable-title.svelte-1yocwvl{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0}.deliverable-description.svelte-1yocwvl{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin:0}.phase-nav.svelte-1yocwvl{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-6);border-top:var(--border-width) solid var(--color-border-secondary)}.nav-link.svelte-1yocwvl{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);text-decoration:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);transition:all var(--duration-150) var(--ease-out)}.nav-link.svelte-1yocwvl:hover{color:var(--color-primary-600);background-color:var(--color-bg-secondary);text-decoration:none}.nav-link.overview.svelte-1yocwvl{background-color:var(--color-bg-secondary)}
