/* Passe de temporada: só o específico (trilha em duas faixas, missões). Slots, selos, barras, abas, avisos, vazios e botões vêm de ui-casca.css e ui-pecas.css. */
.passe { display: flex; flex-direction: column; gap: var(--au-esp-4); padding: var(--au-esp-4); font-family: var(--au-fonte-texto); font-size: var(--au-t-2); color: var(--au-texto); }
.passe-cab { display: flex; align-items: center; flex-wrap: wrap; gap: var(--au-esp-2); }
.passe-cab__nome { flex: 1 1 100%; margin: 0; font-family: var(--au-fonte-titulo); font-size: var(--au-t-4); font-weight: 500; }
.passe-xp { display: flex; align-items: center; flex-wrap: wrap; gap: var(--au-esp-3); }
.passe-xp > .au-barra { flex: 1 1 200px; min-width: 0; }
.passe-xp > .au-botao { flex: 0 0 auto; min-height: var(--au-toque); }
.passe-trilha { display: flex; align-items: flex-start; gap: var(--au-esp-2); }
.passe-rotulos { display: flex; flex-direction: column; flex: 0 0 auto; gap: var(--au-esp-2); width: 56px; }
.passe-rotulo { display: flex; align-items: center; height: 64px; font-size: var(--au-t-1); font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--au-texto-suave); }
.passe-rolagem { flex: 1 1 auto; min-width: 0; overflow-x: auto; padding-bottom: var(--au-esp-2); overscroll-behavior-x: contain; }
.passe-rolagem:focus-visible { outline: 2px solid var(--au-sistema); outline-offset: 2px; border-radius: var(--au-raio-2); }
.passe-grade { display: flex; flex-direction: column; gap: var(--au-esp-2); width: max-content; }
.passe-faixa { display: grid; grid-template-columns: repeat(var(--passe-colunas), 64px); gap: var(--au-esp-2); }
.passe-t { display: flex; align-items: center; justify-content: center; height: 20px; font-family: var(--au-fonte-num); font-size: var(--au-t-1); color: var(--au-texto-fraco); }
.passe-celula { position: relative; }
.passe-celula .au-slot { cursor: default; }
.passe-celula[data-estado="resgatado"] .au-slot { opacity: 0.6; }
.passe-celula[data-estado="pronto"] .au-slot { border-color: var(--au-valor); }
.passe-celula[data-faixa="premium"] .au-slot[aria-disabled="true"] { cursor: not-allowed; }
.passe-celula .au-slot__marca { color: var(--au-ok); }
.passe-premium { display: flex; align-items: center; flex-wrap: wrap; gap: var(--au-esp-3); }
.passe-sub { margin: 0; font-family: var(--au-fonte-titulo); font-size: var(--au-t-3); font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; }
.passe-nota { margin: 0; font-size: var(--au-t-1); line-height: 1.5; color: var(--au-texto-suave); }
.passe-missoes { display: flex; flex-direction: column; gap: var(--au-esp-2); }
.passe-missao { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--au-esp-2) var(--au-esp-3); padding: var(--au-esp-3); border: 1px solid var(--au-borda); border-radius: var(--au-raio-3); background: var(--au-superficie); }
.passe-missao__nome { grid-column: 1 / -1; font-weight: 600; }
.passe-missao > .au-barra { min-width: 0; }
.passe-missao__feita { border-color: var(--au-ok); }
.passe-opcoes { display: flex; flex-wrap: wrap; gap: var(--au-esp-2); margin: var(--au-esp-2) 0; }
@media (max-width: 420px) {
  .passe { padding: var(--au-esp-3); }
  .passe-missao { grid-template-columns: minmax(0, 1fr); }
}
