/* Evolution details share the public Pokédex portraits and portal colors. */
.dex-card .dex-evolution-button{display:block;width:100%;min-height:44px;margin:18px 0 0;padding:10px 8px;border:1px solid #68877c;border-radius:9px;background:#182b25;color:#b9efd6;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.dex-card .dex-evolution-button:hover{background:#233e32;border-color:#9bddb7;color:#effff5}
.dex-evolution-open{overflow:hidden}
.dex-evolution-dialog{box-sizing:border-box;width:min(760px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 40px);padding:0;border:1px solid #718479;border-radius:20px;background:#101c19;color:#ecf5ed;box-shadow:0 30px 100px #000a;font-family:inherit;overflow:auto;overscroll-behavior:contain;color-scheme:dark}
.dex-evolution-dialog::backdrop{background:#020b09cc;backdrop-filter:blur(5px)}
.dex-evolution-shell{padding:24px 28px 28px;background:linear-gradient(145deg,#d4ffe309,transparent 45%)}
.dex-evolution-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.dex-evolution-dialog button{min-height:44px;border:1px solid #66776e;border-radius:9px;background:#233029;color:#eaf2e9;font:inherit;font-size:14px;font-weight:700;padding:10px 14px;cursor:pointer}
.dex-evolution-dialog button:hover{background:#314437;border-color:#b1d3b6}
.dex-evolution-close{margin-left:auto}
.dex-evolution-dialog :is(button,h2):focus-visible,.dex-card .dex-evolution-button:focus-visible{outline:3px solid #ffe079;outline-offset:3px}
.dex-evolution-dialog h2{font-size:clamp(22px,3vw,29px);line-height:1.25;letter-spacing:-.02em;margin:0;overflow-wrap:anywhere;color:#f1f8ed}
.dex-evolution-current{display:flex;align-items:center;gap:18px;padding:12px 0 18px;border-bottom:1px solid #42584c;font-size:18px;font-weight:700}
.dex-evolution-portrait{width:96px;height:96px;flex:0 0 96px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 8px 12px #63c88920)}
.dex-evolution-label{font-size:16px;font-weight:650;margin:22px 0 14px;color:#b9d4c5}
.dex-evolution-list{display:grid;gap:12px;list-style:none;margin:0;padding:0}
.dex-evolution-option{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:10px 20px;padding:18px;border:1px solid #496052;border-radius:14px;background:linear-gradient(115deg,#b4efcb09,#020a0730);min-width:0}
.dex-evolution-info{min-width:0}
.dex-evolution-info h3{font-size:19px;line-height:1.3;color:#eff7eb;margin:0 0 12px;overflow-wrap:anywhere}
.dex-evolution-material{display:flex;align-items:center;gap:10px;color:#f7dfa0;font-size:16px;line-height:1.4;overflow-wrap:anywhere}
.dex-evolution-quantity{display:grid;place-items:center;min-width:36px;min-height:34px;padding:2px 6px;border:1px solid #8c7646;background:#d9b74713;border-radius:7px;font-size:18px;font-variant-numeric:tabular-nums}
.dex-evolution-level{margin:10px 0 0;color:#b7cbbd;font-size:14px;line-height:1.5}
.dex-evolution-option .dex-evolution-next{grid-column:1/-1;justify-self:stretch;margin-top:2px;color:#bbeaca}
.dex-evolution-final{grid-column:1/-1;font-size:14px;color:#a4b9ad;padding-top:8px;border-top:1px solid #33493c}
.dex-evolution-note{font-size:14px;line-height:1.65;color:#aebfb3;margin:20px 0 0}
.dex-evolution-empty,.dex-evolution-status{font-size:16px;line-height:1.65;color:#c3d3c7;margin:24px 0 4px}
.dex-evolution-retry{margin-top:16px}
.dex-evolution-dialog [hidden]{display:none!important}
@media(max-width:520px){.dex-evolution-shell{padding:18px 16px 22px}.dex-evolution-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:15px}.dex-evolution-option{padding:14px;grid-template-columns:72px minmax(0,1fr);gap:12px}.dex-evolution-option .dex-evolution-portrait{width:72px;height:72px}.dex-evolution-info h3{font-size:17px}.dex-evolution-material{gap:7px;flex-wrap:wrap}.dex-evolution-current{font-size:16px;gap:10px}}
