
/* Hero Upgrades: compact responsive cards; workshop uses shared global classes. */
.upgrades .upgrade-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;align-items:stretch}
.upgrades .upgrade{display:flex;flex-direction:column;gap:6px;min-width:0;min-height:110px;padding:9px;border-radius:8px}
.upgrades .upgrade-head{display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px;align-items:center;min-width:0}
.upgrades .upgrade-icon{display:block;width:38px;height:38px;aspect-ratio:1;object-fit:cover;object-position:center;border-radius:8px}
.upgrades .upgrade-head-info{display:flex;flex-direction:column;gap:4px;min-width:0}
.upgrades .upgrade-name{display:flex;align-items:center;justify-content:space-between;gap:7px;min-width:0}
.upgrades .upgrade-name strong{font-size:12px;overflow-wrap:break-word}
.upgrades .upgrade-name span{font-size:10px;white-space:nowrap;flex:none}
.upgrades .upgrade-head-info>small{font-size:10px;line-height:1.35;color:var(--text-secondary,#a9b7ca)}
.upgrades .upgrade-bonus{margin-top:auto;font-size:12px}
.upgrades .upgrade button{width:100%;margin:0;padding:8px 6px;font-size:11px}
.ascension-panel .upgrade-grid{align-items:stretch}
.ascension-panel .upgrade{min-width:0}
.ascension-panel .upgrade button{margin-top:auto}
@media(min-width:1550px){.upgrades .upgrade-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:520px){.upgrades .upgrade-grid{grid-template-columns:1fr}}

/* Expanded upgrades: shared compact cards and lightweight fallback symbols. */
.upgrades .upgrade-symbol{display:grid;place-items:center;background:var(--surface-subtle,#142039);border:1px solid var(--border-soft,#33435d);color:var(--primary,#6ea6ff);font-size:23px;line-height:1}
.upgrades .upgrade-grid{gap:7px}
.upgrades .upgrade{min-height:110px}

/* Shared bulk-buy selector for all twelve Hero Upgrades. */
.upgrades .upgrade-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.upgrades .upgrade-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.upgrades .upgrade-multipliers{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--border-soft,#33435d);border-radius:9px;background:var(--surface-subtle,#101c2f)}
.upgrades .upgrade-multiplier{width:auto;min-width:39px;min-height:29px;margin:0;padding:5px 9px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary,#a9b7ca);font-size:11px;font-weight:700;cursor:pointer}
.upgrades .upgrade-multiplier:hover{background:color-mix(in srgb,var(--primary,#6da8ff) 13%,transparent)}
.upgrades .upgrade-multiplier.is-active{background:var(--primary,#397afa);color:#fff}
.upgrades .upgrade-multiplier:focus-visible{outline:2px solid var(--primary,#6da8ff);outline-offset:2px}
@media(max-width:650px){.upgrades .upgrade-header-actions{justify-content:flex-start;width:100%}}

/* v0.7.2: minimalist upgrade cards, still using original custom images. */
.upgrades .upgrade{border-radius:8px;box-shadow:none}
.upgrades .upgrade-head-info{gap:3px}
.upgrades .upgrade-name strong{font-size:11px}
.upgrades .upgrade-head-info>small{font-size:9px;line-height:1.25}
.upgrades .upgrade-bonus{font-size:11px}
.upgrades .upgrade button{padding:7px 5px;font-size:10px;border-radius:6px}
.upgrades .upgrade-multipliers{padding:2px;gap:2px}
.upgrades .upgrade-multiplier{min-width:34px;min-height:27px;padding:4px 7px}
@media(min-width:1050px){.upgrades .upgrade-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:650px) and (max-width:1049px){.upgrades .upgrade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.7.7 — Upgrade artwork leads the card; text stays compact. */
.upgrades .upgrade{min-height:126px;padding:9px;gap:7px}
.upgrades .upgrade-head{grid-template-columns:56px minmax(0,1fr);gap:9px;align-items:center}
.upgrades .upgrade-icon{display:block;width:56px;height:56px;min-width:56px;min-height:56px;object-fit:cover;object-position:center;border-radius:8px;flex:none}
.upgrades .upgrade-head-info{min-width:0;gap:4px}
.upgrades .upgrade-name strong{font-size:11px;line-height:1.2}
.upgrades .upgrade-name span{font-size:9px}
.upgrades .upgrade-head-info>small{font-size:9px;line-height:1.3}
.upgrades .upgrade-bonus{font-size:11px}
@media(max-width:520px){.upgrades .upgrade-head{grid-template-columns:50px minmax(0,1fr)}.upgrades .upgrade-icon{width:50px;height:50px;min-width:50px;min-height:50px}}
