/* v0.22 monthly Journey prototype (dark-launched): the block under the Trophy
   Road (public/js/journey-month.js). Existing tokens only. */

.mj-block { display: grid; gap: .5rem; }
.mj-block[hidden] { display: none; }
.mj-head { display: flex; justify-content: space-between; align-items: baseline; gap: .5rem; }
.mj-title { margin: 0; font-size: 1.05rem; }
.mj-points { font-variant-numeric: tabular-nums; color: var(--gold); }
.mj-rules { margin: 0; font-size: .9rem; line-height: 1.35; }
.mj-bar { height: 8px; border-radius: 999px; background: rgba(var(--tk-line-rgb), .18); overflow: hidden; }
.mj-bar > i { display: block; height: 100%; width: calc(var(--p, 0) * 100%); background: var(--gold); }
.mj-tiers { list-style: none; margin: 0; padding: 0; display: grid; gap: .35rem; }
.mj-tier { display: flex; gap: .6rem; align-items: baseline; min-height: 44px; box-sizing: border-box; padding: .5rem .6rem; border-radius: .5rem; border: 1px solid var(--line-soft); }
.mj-at { min-width: 3.2rem; font-variant-numeric: tabular-nums; }
.mj-state { font-size: .88rem; }
.mj-tier.is-claimed { background: rgba(var(--tk-gold-rgb), .1); }
.mj-tier.is-pending { outline: 2px solid var(--gold); outline-offset: -2px; }
.mj-tier.is-locked { opacity: .72; }
.mj-tier.is-unknown { opacity: .6; font-style: italic; }
.mj-block[data-state="unavailable"] .mj-tiers { display: none; }
.mj-note { margin: 0; }
.rp-journey[hidden] { display: none; }
