:root{--primary-color:#8F6A7A;--secondary-color:#C6A76A;--accent-color:#B76E79;--background-color:#F7F1F3;--body-bg:#F7F1F3;--card-bg:rgba(255, 255, 255, 0.88);--text-color:#332C30;--heading-color:#5B434D;--muted-text:#6E5C63;--white:#ffffff;--gray-light:#EEE7EA;--gray-medium:#B7A9AF;--color-cta-hover:#9E5A64;--font-primary:"Montserrat", sans-serif;--font-body:"Lora", serif;--font-ui:"Inter", sans-serif;--text-xs:0.8rem;--text-sm:0.9rem;--text-base:1rem;--text-md:1.1rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:2rem;--text-3xl:2.5rem;--text-4xl:3rem;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--border-radius:12px;--border-radius-sm:8px;--border-radius-lg:16px;--transition-base:all 0.25s ease;--shadow-sm:0 2px 6px rgba(143, 106, 122, 0.08);--shadow-md:0 4px 12px rgba(143, 106, 122, 0.12);--shadow-lg:0 8px 24px rgba(143, 106, 122, 0.16);--box-shadow:var(--shadow-md);--container-width:1200px}[data-theme=dark]{--background-color:#1F1A1D;--body-bg:#1F1A1D;--card-bg:rgba(40, 32, 36, 0.9);--text-color:#E7DDE1;--heading-color:#F8F3F5;--muted-text:#BCAEB4;--gray-light:#2D2528;--gray-medium:#6E5C63;--shadow-sm:0 2px 6px rgba(0, 0, 0, 0.2);--shadow-md:0 4px 12px rgba(0, 0, 0, 0.25);--shadow-lg:0 8px 24px rgba(0, 0, 0, 0.3)}@keyframes breathe{0%{transform:scale(1)}50%{transform:scale(1.02)}100%{transform:scale(1)}}.breathe{animation:breathe 6s ease-in-out infinite}.roadmap{background:var(--body-bg);padding:var(--space-xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);max-width:80rem;margin:0 auto var(--space-2xl);position:relative;color:var(--text-color);display:flex;flex-direction:column;align-items:center}.roadmap-header{text-align:center;margin-bottom:var(--space-xl);display:flex;flex-direction:column;align-items:center;width:100%}.roadmap-header h2{color:var(--heading-color);font-size:var(--text-3xl);font-weight:600;margin-bottom:var(--space-sm);font-family:var(--font-primary)}.roadmap-header p{font-size:var(--text-lg);font-family:var(--font-body);color:var(--text-color);line-height:1.6}.roadmap-timeline{position:relative;margin-bottom:var(--space-xl)}.timeline-track{position:absolute;height:6px;width:100%;background-color:var(--gray-medium);top:50%;transform:translateY(-50%);border-radius:9999px}.timeline-progress{position:absolute;height:6px;background:var(--primary-color);top:50%;transform:translateY(-50%);border-radius:9999px;transition:width .7s ease-in-out}.timeline-points{position:relative;display:flex;justify-content:space-between;padding:0 var(--space-md)}.timeline-point{display:flex;flex-direction:column;align-items:center}.point-button{width:3rem;height:3rem;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:10;transition:var(--transition-base);cursor:pointer;border:none;outline:none}.point-button:hover{transform:translateY(-2px)}.point-button.active{background:var(--primary-color);color:var(--white)}.point-button:not(.active):not(.completed){background:var(--gray-medium);color:var(--white)}.point-button:not(.active):not(.completed):hover{background:var(--secondary-color)}.point-button.completed{background:var(--secondary-color);color:var(--white);position:relative}.point-button.completed::after{content:"\2713";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--white)}.point-button.completed .point-number{display:none}.point-button.completed .point-check{display:block}.point-check{display:none}.point-title{margin-top:.75rem;font-size:var(--text-lg);font-weight:500;transition:color .3s;color:var(--text-color);font-family:var(--font-body)}.timeline-point.active .point-title{color:var(--primary-color)}.roadmap-content{background:var(--card-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--border-radius);box-shadow:var(--shadow-md);padding:var(--space-lg);border-radius:var(--border-radius-lg);transition:all .5s}.roadmap-content.animating{opacity:0;transform:scale(.95)}.step-content{display:none;font-size:var(--text-lg)}.step-content.active{display:block}.step-header{display:flex;align-items:center;gap:var(--space-lg);margin-bottom:var(--space-lg)}.step-header h2{font-size:var(--text-2xl);font-weight:600;color:var(--heading-color);font-family:var(--font-primary)}.step-icon{background:var(--secondary-color);color:var(--white);padding:var(--space-md);border-radius:var(--border-radius-sm);box-shadow:var(--shadow-md)}.step-description{margin-bottom:var(--space-lg);font-size:var(--text-lg);font-family:var(--font-body);color:var(--text-color);line-height:1.6}.step-tasks{background:var(--card-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--border-radius);box-shadow:var(--shadow-md);padding:var(--space-lg);border-radius:var(--border-radius-sm)}.step-tasks h3{font-weight:600;margin-bottom:var(--space-md);color:var(--heading-color);font-size:var(--text-xl);font-family:var(--font-primary)}.step-tasks ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-md)}.step-tasks li{display:flex;align-items:center;gap:.75rem;font-size:var(--text-lg);font-family:var(--font-body);color:var(--text-color)}.task-number{width:1.5rem;height:1.5rem;background:var(--primary-color);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:var(--text-sm);color:var(--white)}.step-navigation{margin-top:var(--space-lg);display:flex;justify-content:space-between}.prev-button,.next-button{background:var(--accent-color);color:#fff;border:none;border-radius:var(--border-radius);transition:var(--transition-base);cursor:pointer;font-family:var(--font-ui);font-weight:600;letter-spacing:.02em;padding:.75rem 1.25rem;display:flex;align-items:center;gap:var(--space-sm);font-weight:500}.prev-button:not([disabled]):hover,.next-button:not([disabled]):hover{background:var(--color-cta-hover);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md)}.prev-button[disabled],.next-button[disabled]{background-color:var(--gray-medium);color:var(--muted-text);cursor:not-allowed}@media(max-width:768px){.roadmap{padding:var(--space-md)}.point-button{width:2rem;height:2rem}.point-title{font-size:var(--text-sm)}.step-header{flex-direction:column;text-align:center;gap:var(--space-sm)}.step-navigation{flex-direction:column;gap:var(--space-md)}.prev-button,.next-button{width:100%;justify-content:center}}