.roadmap-hero .t-h1{margin:.75rem 0 1rem}.roadmap-hero .lead{color:var(--fg-muted);font-size:1.05rem;line-height:1.7}.roadmap-phases{display:flex;flex-direction:column;gap:4rem;padding-bottom:5rem}.phase-header{display:flex;align-items:baseline;gap:1rem;margin-bottom:1.75rem}.phase-title{font-size:1.2rem;font-weight:600;color:var(--fg);margin:0}.badge-shipping{background:color-mix(in srgb,var(--success) 15%,transparent);color:var(--success);border:1px solid color-mix(in srgb,var(--success) 30%,transparent);font-size:.65rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.2em .65em;border-radius:99px;display:inline-flex;align-items:center;gap:.4em}.badge-shipping:before{content:"";width:5px;height:5px;background:var(--success);border-radius:50%;box-shadow:0 0 5px var(--success);animation:pulse-dot 2.5s ease infinite}.badge-planned{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);font-size:.65rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.2em .65em;border-radius:99px}.badge-exploring{background:color-mix(in srgb,var(--fg-subtle) 10%,transparent);color:var(--fg-subtle);border:1px solid color-mix(in srgb,var(--fg-subtle) 20%,transparent);font-size:.65rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.2em .65em;border-radius:99px}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.35}}.roadmap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.roadmap-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:1.25rem 1.4rem;display:flex;flex-direction:column;gap:.6rem;transition:border-color .2s,transform .15s}.roadmap-card:hover{border-color:var(--accent-dim);transform:translateY(-1px)}.roadmap-card.phase-now{border-left:3px solid var(--success)}.roadmap-card.phase-next{border-left:3px solid var(--accent)}.roadmap-card.phase-later{border-left:3px solid var(--fg-subtle)}.roadmap-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.roadmap-card-title{font-size:.925rem;font-weight:600;color:var(--fg);line-height:1.3;flex:1}.roadmap-card-desc{font-size:.845rem;color:var(--fg-muted);line-height:1.6;margin:0}.roadmap-card-tag{font-family:JetBrains Mono,monospace;font-size:.7rem;color:var(--fg-subtle);background:var(--bg-elevated);padding:.15em .5em;border-radius:4px;white-space:nowrap}.done-list{display:flex;flex-direction:column;gap:.625rem}.done-item{display:flex;align-items:flex-start;gap:.75rem;font-size:.9rem;color:var(--fg-muted);line-height:1.45}.done-check{width:18px;height:18px;flex-shrink:0;background:color-mix(in srgb,var(--success) 15%,transparent);border:1px solid color-mix(in srgb,var(--success) 30%,transparent);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-top:.1rem}.done-check svg{color:var(--success)}.done-item-label{color:var(--fg);font-weight:500}.done-item-sub{color:var(--fg-muted);font-size:.82rem}.principles-block{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:2rem 2.25rem;margin-bottom:5rem}.principles-title{font-size:1rem;font-weight:600;color:var(--fg);margin:0 0 1.25rem}.principles-list{display:flex;flex-direction:column;gap:1rem}.principle-row{display:flex;gap:1rem;align-items:flex-start}.principle-num{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--accent);font-weight:500;padding-top:.1rem;min-width:20px}.principle-text{font-size:.9rem;color:var(--fg-muted);line-height:1.6}.principle-text strong{color:var(--fg);font-weight:500}.phase-block{position:relative}.phase-connector{position:absolute;left:10px;top:2.5rem;bottom:-3.5rem;width:1px;background:linear-gradient(to bottom,var(--border),transparent);pointer-events:none}.phase-dot{display:inline-flex;width:22px;height:22px;border-radius:50%;align-items:center;justify-content:center;flex-shrink:0;margin-right:.75rem;font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:700}.phase-dot-now{background:color-mix(in srgb,var(--success) 20%,transparent);color:var(--success);border:1px solid color-mix(in srgb,var(--success) 35%,transparent)}.phase-dot-next{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}.phase-dot-later{background:var(--bg-elevated);color:var(--fg-subtle);border:1px solid var(--border)}
