/* Plan (A3): layout only; every value is a kit token. */
[data-screen="plan"] { gap: var(--space-8); }
.plan-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-3) var(--space-6); }
.plan-path .k-path--full { gap: var(--space-8); }
.plan-phase-line { margin: calc(-1 * var(--space-2)) 0 var(--space-2); font-size: var(--text-body); line-height: var(--leading-body); color: var(--color-ink-3); }
.plan-packet { flex-direction: column; align-items: center; gap: var(--space-4); }
.plan-packet__stack { width: 160px; }

/* The plan as a learning path: each phase a chapter (number, name, weeks) beside its trail of typed nodes */
.plan-path .k-path--full { gap: var(--space-6); }
.plan-path .k-path__block { padding: var(--space-6); border-radius: var(--radius-xl); background: var(--color-surface); box-shadow: var(--shadow-1); }
.plan-path .k-path__block[data-now] { box-shadow: var(--shadow-2), inset 0 0 0 2px var(--color-brand-tint-2); }
.plan-path .k-path__phead { flex-direction: column; align-items: flex-start; gap: var(--space-2); }
.plan-path .k-path__ptitle { flex-direction: column; align-items: flex-start; gap: var(--space-1); font-family: var(--font-display); font-weight: var(--weight-regular); font-size: var(--display-s); line-height: var(--display-s-leading); }
.plan-path .k-path__pnum { font-size: var(--text-caption); line-height: var(--leading-caption); font-family: var(--font-sans); font-weight: var(--weight-medium); letter-spacing: var(--tracking-caps); text-transform: uppercase; color: var(--color-brand); }
.plan-path .k-path__pnum::before { content: "Chapter "; }
.plan-path .k-path__step { border-radius: var(--radius-lg); }
.plan-path .k-path__node { width: 44px; height: 44px; }
.plan-path .k-path__step::before { left: 33px; width: 3px; border-radius: var(--radius-full); }
.plan-path .k-path__step[data-type="packet"]:not([data-state="done"]) .k-path__node { background: var(--mat-clay-hi); color: var(--mat-clay-deep); }
.plan-path .k-path__step[data-type="course"]:not([data-state="done"]) .k-path__node { background: var(--mat-slate-hi); color: var(--mat-slate-deep); }
.plan-path .k-path__step[data-type="badge"]:not([data-state="done"]) .k-path__node { background: var(--mat-sand-hi); color: var(--mat-sand-deep); }
.plan-path .k-path__step[data-state="current"] .k-path__node { background: var(--color-surface); color: var(--color-brand); box-shadow: 0 0 0 6px var(--color-brand-tint), inset 0 0 0 3px var(--color-brand); }
.plan-path .k-path__step[data-state="current"] .k-path__title { font-size: var(--text-lead); line-height: var(--leading-lead); }
@media (min-width: 900px) {
  .plan-path .k-path__block { display: grid; gap: var(--space-8); align-items: start; grid-template-columns: 220px minmax(0, 1fr); padding: var(--space-8); }
  .plan-path .k-path__phead { position: sticky; top: calc(var(--topbar) + var(--space-6)); }
}

/* Who does what is said once per chapter; a row keeps only its "Your part · N min" (or "Handed to …"). */
.plan-path .k-path__end .k-pill--brand, .plan-path .k-path__whosm .k-pill--brand { display: none; }
.plan-sub { max-width: 52ch; font-size: var(--text-body); line-height: var(--leading-body); color: var(--color-ink-3); }
