.roadmap-intro[data-astro-cid-ffvum5eo]{margin-bottom:2rem}.roadmap-intro[data-astro-cid-ffvum5eo] p[data-astro-cid-ffvum5eo]{margin-bottom:1.25rem}.intro-actions[data-astro-cid-ffvum5eo]{flex-wrap:wrap;gap:.75rem;display:flex}.intro-actions[data-astro-cid-ffvum5eo] .btn[data-astro-cid-ffvum5eo]{align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.intro-actions[data-astro-cid-ffvum5eo] .btn-primary[data-astro-cid-ffvum5eo],.intro-actions[data-astro-cid-ffvum5eo] .btn-primary[data-astro-cid-ffvum5eo]:hover{color:#fff}.intro-actions[data-astro-cid-ffvum5eo] .btn-outline-light[data-astro-cid-ffvum5eo],.intro-actions[data-astro-cid-ffvum5eo] .btn-outline-light[data-astro-cid-ffvum5eo]:hover{color:var(--md-text-primary)}.roadmap-tabs[data-astro-cid-ffvum5eo]{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);gap:.25rem;margin-bottom:1.5rem;padding:.25rem;display:inline-flex}.roadmap-tab[data-astro-cid-ffvum5eo]{border-radius:var(--radius-md);min-height:44px;color:var(--color-text-secondary);white-space:nowrap;cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:0 1rem;font-weight:500;transition:background-color .15s,color .15s;display:inline-flex}.roadmap-tab[data-astro-cid-ffvum5eo]:hover:not(.active){background:var(--color-bg-hover);color:var(--color-text-primary)}.roadmap-tab[data-astro-cid-ffvum5eo].active{background:var(--color-accent);color:#fff}.roadmap-tab[data-astro-cid-ffvum5eo]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.tab-count[data-astro-cid-ffvum5eo]{background:var(--color-bg-tertiary);min-width:1.375rem;color:var(--color-text-primary);text-align:center;border-radius:999px;padding:0 .375rem;font-size:.75rem;font-weight:600;line-height:1.375rem}.tab-count[data-astro-cid-ffvum5eo][hidden]{display:none}.roadmap-tab[data-astro-cid-ffvum5eo].active .tab-count[data-astro-cid-ffvum5eo]{color:var(--color-accent);background:#fff}.roadmap-panel[data-astro-cid-ffvum5eo][hidden]{display:none}.roadmap-panel[data-astro-cid-ffvum5eo]:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px;border-radius:var(--radius-sm)}.panel-content[data-astro-cid-ffvum5eo]{flex-direction:column;gap:1.5rem;display:flex}.load-error[data-astro-cid-ffvum5eo] p[data-astro-cid-ffvum5eo]{margin-bottom:1rem}.roadmap .panel-status{color:var(--color-text-secondary);margin:0}.roadmap .milestone{background:var(--md-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.roadmap .milestone-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem 1.5rem;display:flex}.roadmap .milestone-name{min-width:0}.roadmap .milestone-title{margin:0;font-size:1.5rem;font-weight:700}.roadmap .milestone-title a[data-astro-cid-ffvum5eo]{color:var(--color-text-primary);text-decoration:none}.roadmap .milestone-title a[data-astro-cid-ffvum5eo]:hover{color:var(--color-accent);text-decoration:underline}.roadmap .milestone-description{color:var(--color-text-secondary);margin:.25rem 0 0}.roadmap .timeline{margin:0;padding:0;list-style:none}.roadmap .timeline-item{--dot-size:16px;--rail:.5rem;flex-direction:column;gap:.75rem;padding-block-end:2rem;padding-inline-start:2.5rem;display:flex;position:relative}.roadmap .timeline-item:before{content:"";top:.75rem;bottom:-.75rem;background:rgba(var(--md-primary-rgb), .35);width:2px;position:absolute;inset-inline-start:calc(var(--rail) + var(--dot-size) / 2 - 1px)}.roadmap .timeline-item:last-child{padding-block-end:0}.roadmap .timeline-item:last-child:before{display:none}.roadmap .timeline-dot{top:.25rem;box-sizing:border-box;width:var(--dot-size);height:var(--dot-size);border:3px solid var(--color-accent);background:var(--color-bg-primary);z-index:1;border-radius:50%;position:absolute;inset-inline-start:var(--rail)}.roadmap .timeline-item.today .timeline-dot{border-color:var(--color-success);background:var(--color-success);box-shadow:0 0 0 4px var(--color-success-muted)}.roadmap .timeline-item.overdue .timeline-dot{border-color:var(--color-warning)}.roadmap .timeline-item.undated .timeline-dot{border-color:var(--color-border-light);border-style:dashed}.roadmap .timeline-when{flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;margin:0;line-height:1.5rem;display:flex}.roadmap .timeline-distance{color:var(--color-text-primary);font-size:1.125rem;font-weight:700}.roadmap .today .timeline-distance{color:var(--color-success)}.roadmap .overdue .timeline-distance{color:var(--color-warning)}.roadmap .timeline-date{color:var(--color-text-secondary);font-size:.875rem}.roadmap .milestone-progress{align-items:center;gap:.75rem;display:flex}.roadmap .progress-track{background:var(--color-border-light);border-radius:999px;flex:1;height:.5rem;overflow:hidden}.roadmap .progress-fill{border-radius:inherit;background:var(--color-success);height:100%;display:block}.roadmap .progress-label{color:var(--color-text-secondary);flex:none;font-size:.8125rem;font-weight:500}.roadmap .issue-list{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin:0;padding:0;list-style:none;overflow:hidden}.roadmap .issue-row{border-top:1px solid var(--color-border);align-items:flex-start;gap:.75rem;padding:.875rem 1rem;transition:background-color .15s;display:flex}.roadmap .issue-row:first-child{border-top:none}.roadmap .issue-row:hover{background:var(--color-bg-hover)}.roadmap .issue-state{box-sizing:border-box;border:2px solid var(--color-success);border-radius:50%;flex:none;justify-content:center;align-items:center;width:16px;height:16px;margin-top:.1875rem;display:flex}.roadmap .issue-state:after{content:"";background:var(--color-success);border-radius:50%;width:4px;height:4px}.roadmap .issue-state.done{color:#fff;background:#a371f7;border-color:#a371f7;font-size:.5625rem}.roadmap .issue-state.done:after{display:none}.roadmap .issue-body{overflow-wrap:anywhere;flex-direction:column;flex:1;gap:.375rem;min-width:0;display:flex}.roadmap .issue-title{color:var(--color-text-primary);font-weight:600;text-decoration:none}.roadmap .issue-title:hover{color:var(--color-accent);text-decoration:underline}.roadmap .issue-meta{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:.25rem .75rem;font-size:.75rem;display:flex}.roadmap .issue-number{font-family:var(--font-mono)}.roadmap .issue-area{border:1px solid var(--color-border-light);color:var(--color-text-secondary);border-radius:999px;padding:.0625rem .5rem}.roadmap .issue-stats{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:.5rem;max-width:45%;display:flex}.roadmap .reactions{flex-wrap:wrap;justify-content:flex-end;gap:.375rem;margin:0;padding:0;list-style:none;display:flex}.roadmap .reaction{border:1px solid var(--color-border-light);background:var(--color-bg-tertiary);color:var(--color-text-primary);border-radius:999px;align-items:center;gap:.3125rem;padding:.125rem .5rem;font-size:.8125rem;font-weight:600;display:inline-flex}.roadmap .reaction.upvote{border-color:rgba(var(--md-primary-rgb), .5);background:var(--color-accent-muted)}.roadmap .reaction-emoji{font-size:.875rem;line-height:1}.roadmap .issue-comments{color:var(--color-text-muted);align-items:center;gap:.3rem;font-size:.75rem;display:inline-flex}@media (width<=575.98px){.roadmap-tabs[data-astro-cid-ffvum5eo]{display:flex}.roadmap-tab[data-astro-cid-ffvum5eo]{flex:1;justify-content:center;padding:0 .5rem}.roadmap .milestone{padding:1.125rem}.roadmap .timeline-item{--rail:0px;padding-inline-start:1.75rem}.roadmap .issue-row{flex-wrap:wrap}.roadmap .issue-stats{justify-content:flex-start;width:100%;max-width:none;padding-inline-start:calc(16px + .75rem)}.roadmap .reactions{justify-content:flex-start}}
