/* Rarity remains readable independently of illustration colour. */
.dino-card{border:2px solid color-mix(in srgb,var(--rarity) 75%,#243246);border-top:5px solid var(--rarity)}
.dino-card .card-body{background:linear-gradient(135deg,color-mix(in srgb,var(--rarity) 15%,#15253a),#132236 75%)}
.dino-card .card-rarity{background:var(--rarity);color:#0d1827;border:0;font-weight:800;padding:5px 9px;box-shadow:0 2px 10px #0003}
.card-rarity .tier-letter{color:#0d1827;border-right:1px solid #14233755;padding-right:7px;margin-right:1px;font-size:15px}
.dino-card.tier-S{box-shadow:0 0 0 1px #f1bd6233,0 5px 23px #f1bd621a}
.dino-card.tier-A{box-shadow:0 3px 18px #b492ed19}
.dino-card.tier-D{border-top-width:3px}
.team-order{justify-content:center}
.replacement-panel{margin-top:22px;padding:20px;border:1px solid #edc87e70;border-radius:16px;background:#182b40;text-align:center}
.replacement-panel h2{font-size:24px;margin:8px 0}
.replacement-panel>p:not(.eyebrow){font-size:13px;color:#b9c9da}
.replacement-cards,.level-reward-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:12px;margin-top:18px}
.replacement-card,.level-reward{min-width:0;overflow:hidden;border:1px solid #8bbce644;border-radius:12px;background:#0e2034;color:#eaf2f7;cursor:pointer;padding:0 0 12px;transition:transform .15s,border-color .15s}
.replacement-card{border-top:4px solid var(--rarity)}
.replacement-card:hover,.level-reward:hover{transform:translateY(-3px);border-color:#edc87e}
.replacement-card:focus-visible,.level-reward:focus-visible{outline:3px solid #fff;outline-offset:3px}
.replacement-card .art,.level-reward .art{aspect-ratio:1;width:100%;margin-bottom:10px}
.replacement-card b,.level-reward b{display:block;font-size:12px;line-height:1.35;padding:0 7px;overflow-wrap:anywhere}
.replacement-card small{display:block;margin:7px 0;font-size:10px;color:#b3c6d9}
.replacement-card>span{display:block;margin:8px 7px 0;font-size:9px;padding:5px 3px;border-radius:5px;background:#ffffff08}
.matchup-good{color:#99e8bd}.matchup-bad{color:#f4b2aa}.matchup-neutral{color:#b8c8dc}
.level-reward{border-color:#edc87e70}.level-reward>span{display:block;color:#edc87e;font-size:13px;font-weight:700;margin:9px 0 5px}
.level-reward small{display:flex;align-items:center;justify-content:center;gap:5px;color:#b7d2e4;font-size:11px}.level-reward svg{width:13px;height:13px}
.automatic-xp{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:18px 0}
.automatic-xp>span{font-size:10px;padding:7px 10px;background:#7bc79f0e;border:1px solid #7bc79f2a;border-radius:8px;color:#c1d5d0}
.automatic-xp b{margin-left:6px}.automatic-xp svg{width:12px;height:12px;color:#86d3ad;vertical-align:middle}
.battle-bench .active-fighter{outline:2px solid #e7c080;outline-offset:3px}
@media(max-width:700px){.replacement-panel{padding:14px 10px}.replacement-panel h2{font-size:20px}.replacement-cards,.level-reward-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.card-rarity .tier-letter{font-size:12px}.dino-card .card-rarity{padding:4px 7px}.replacement-card b{font-size:11px}}
@media(prefers-reduced-motion:reduce){.replacement-card,.level-reward{transition:none}}
.opening-choice h2{text-align:center;font-size:24px;margin:4px 0 20px}
.switch-cost{text-align:center;color:#edc87e;font-size:14px;line-height:1.6}.opening-choice>.btn{display:block;margin:20px auto 0}.battle-control{flex-wrap:wrap}
.team-xp-rewards{display:grid;gap:8px;margin:18px auto;max-width:560px;text-align:left}
.team-xp-row{display:flex;align-items:center;gap:12px;padding:8px;border:1px solid #8bbce625;border-radius:12px;background:#0c1c2d;transition:border-color .2s,background .2s}
.team-xp-row>.art{flex:0 0 54px;width:54px;height:54px;border-radius:9px;background-size:cover}
.team-xp-copy{min-width:0;flex:1}.team-xp-copy>b{font-size:13px;display:block}.team-xp-copy .xp-track{height:7px;margin:7px 0}.team-xp-copy .xp-track i{transition:none}
.team-xp-copy>small{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:#a7bfd4}.team-xp-copy strong{color:#9cddbc}
.team-xp-row.gained-level{border-color:#edc87e90;background:#2b2b25}.gained-level [data-team-xp-level]{color:#f3ce80;font-weight:800}
.result-details{animation:result-arrive .25s ease-out}.result .result-headline{margin:9px 0 17px}.result-emblem{width:56px;height:56px;margin-bottom:6px}.result-emblem svg{width:29px;height:29px}
.evolution-gallery{margin-top:16px;border:1px solid #8bbce630;border-radius:10px;padding:12px}.evolution-gallery summary{cursor:pointer;font-size:13px;color:#b6d5ec}
.evolution-portraits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.evolution-portraits figure{margin:0;min-width:0}.evolution-portraits .art{aspect-ratio:1;border-radius:8px}.evolution-portraits figcaption{text-align:center;padding-top:7px}.evolution-portraits b,.evolution-portraits small{display:block;font-size:11px}.evolution-portraits small{color:#9fb4ca;margin-top:3px}
@media(prefers-reduced-motion:reduce){.result-details,.result-emblem,.result .result-headline{animation:none}.team-xp-row{transition:none}}
