#xxiiiProgressionCard[role=button]{cursor:pointer}#xxiiiProgressionCard:focus-visible{outline:2px solid #91ffbd;outline-offset:3px}
.cosmeticPassDialog{width:min(1180px,94vw);max-height:90dvh;padding:0;border:1px solid #4e8c6a;border-radius:20px;background:#0b1712;color:#effff5;font:14px Inter,Arial,sans-serif;box-shadow:0 25px 100px #000b;overflow:hidden}.cosmeticPassDialog::backdrop{background:#020906d9;backdrop-filter:blur(5px)}.cosmeticPassDialog[open]{display:flex;flex-direction:column}.cosmeticPassDialog>header{display:flex;align-items:center;justify-content:space-between;padding:20px 26px;border-bottom:1px solid #294735;background:linear-gradient(110deg,#183a29,#0a1711)}.cosmeticPassDialog h2{margin:3px 0 0;font-size:27px;letter-spacing:.04em}.cosmeticPassDialog small{letter-spacing:.1em;color:#92be9e;font-size:10px}.cosmeticPassDialog button{font:inherit;cursor:pointer;color:inherit}.passClose{border:1px solid #466750;border-radius:50%;width:34px;height:34px;background:#192e21;font-size:24px!important}.passBody{padding:22px 26px;overflow:auto}.passSummary{background:#11251a;border:1px solid #31543b;border-radius:12px;padding:16px;margin-bottom:16px}.passSummary>div:first-child{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.passSummary strong{color:#a2ffbe}.passSummary span{color:#b3c5b9}.passProgress{height:7px;margin-top:13px;background:#030c07;border-radius:10px;overflow:hidden}.passProgress i{display:block;height:100%;background:#a1ffb8}.passNote{color:#9db6a6;font-size:12px}.passLayout{display:grid;grid-template-columns:250px 1fr;gap:20px}.passPreview{position:sticky;top:0;align-self:start;background:linear-gradient(145deg,#213f2b,#0c1d12);padding:18px;border:1px solid #31533c;border-radius:14px}.passPreview p{color:#a7bcae;line-height:1.6}.passPreviewStage{height:220px;display:grid;place-items:center;text-align:center;color:#9fc9ab;overflow:hidden}.passPreviewStage canvas{width:100%!important;height:100%!important;position:static!important;min-height:0!important}.passLevels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-content:start}.passLevel{text-align:left;display:flex;flex-direction:column;gap:10px;align-items:stretch;min-height:165px;padding:0;overflow:hidden;background:#0e1c14;border:1px solid #2a4332;border-radius:12px;transition:border-color .15s}.passLevel:hover,.passLevel.selected{border-color:#9df8b7;background:#1a3524}.passLevel.earned{border-color:#4d9b65}.passLevel strong{font-size:12px;line-height:1.4;overflow-wrap:anywhere}.passLevelMedia{display:grid;place-items:center;width:100%;aspect-ratio:3/2;overflow:hidden;background:linear-gradient(140deg,#264c35,#07150d);position:relative}.passLevelMedia img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.passLevel>small{padding:12px 12px 0}.passLevel>strong{padding:0 12px}.passLevel>.passLevelState{padding:0 12px 12px}.passLevel:focus-visible{outline:2px solid #a1ffb8;outline-offset:2px}.passRewardIcon{font-size:34px;line-height:1.3;text-align:center;color:#a1f5b6}.passLevelState{font-size:9px;line-height:1.4;color:#789582;margin-top:auto}.passLevel.earned .passLevelState{color:#a1f5b6}.passPrimary{padding:12px 20px;border:1px solid #a1ffb8;border-radius:9px;background:#234f30;margin-bottom:15px}.passBigIcon{font-size:90px;color:#e9c56b}
@media(max-width:850px){.passLevels{grid-template-columns:repeat(3,minmax(0,1fr))}.passLayout{grid-template-columns:200px 1fr}.passPreviewStage{height:180px}}@media(max-width:600px){.cosmeticPassDialog{width:96vw;max-height:94dvh}.cosmeticPassDialog>header,.passBody{padding:16px}.passLayout{grid-template-columns:1fr}.passPreview{position:static;display:grid;grid-template-columns:115px 1fr;gap:10px;padding:12px}.passPreviewStage{height:115px;grid-row:1/3}.passPreview h3{font-size:14px}.passPreview p{font-size:11px;margin:0}.passLevels{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.passLevel{padding:0;min-height:150px}.passLevel>small{padding:9px 8px 0}.passLevel>strong{padding:0 8px}.passLevel>.passLevelState{padding:0 8px 9px}.passSummary{font-size:12px}.passLevelState{font-size:8px}}

/* Stack the pass title and XP so MAX LEVEL REACHED fits the compact menu badge. */
#xxiiiProgressionCard .xxiiiProgressionXpLine{flex-direction:column;align-items:flex-start;gap:2px}
#xxiiiProgressionCard .xxiiiProgressionXpLine span{max-width:100%}

.passThumbnailRenderer{position:absolute;inset:0;display:block;opacity:0;pointer-events:none}.passThumbnailRenderer canvas{width:100%!important;height:100%!important}.passLevelMedia img.passModelThumbnail{object-fit:contain}
