/* Items, shop, equipment */
body.theme-ashen .item {
  border-color: rgba(68, 68, 60, .76);
  border-left-width: 2px;
  background: linear-gradient(105deg, rgba(28, 30, 27, .95), rgba(12, 15, 14, .98));
  box-shadow: inset 0 1px rgba(255, 255, 255, .025), 0 5px 14px rgba(0, 0, 0, .18);
}

body.theme-ashen .item:hover {
  border-color: rgba(112, 96, 71, .76);
}

body.theme-ashen .item.common {
  border-left-color: #7d807a;
}

body.theme-ashen .item.uncommon {
  border-color: rgba(68, 68, 60, .76);
  border-left-color: #5c9e67;
  background: linear-gradient(105deg, rgba(28, 30, 27, .95), rgba(12, 15, 14, .98));
}

body.theme-ashen .item.rare {
  border-color: rgba(68, 68, 60, .76);
  border-left-color: #4d95c0;
  background: linear-gradient(105deg, rgba(28, 30, 27, .95), rgba(12, 15, 14, .98));
}

body.theme-ashen .item.epic {
  border-color: rgba(68, 68, 60, .76);
  border-left-color: #b983cc;
  background: linear-gradient(105deg, rgba(28, 30, 27, .95), rgba(12, 15, 14, .98));
}

body.theme-ashen .item.legendary {
  border-color: rgba(68, 68, 60, .76);
  border-left-color: #d1a35f;
  background: linear-gradient(105deg, rgba(28, 30, 27, .95), rgba(12, 15, 14, .98));
}

body.theme-ashen .item.mythic {
  border-color: rgba(68, 68, 60, .76);
  border-left-color: #78d7cb;
  background: linear-gradient(105deg, rgba(28, 30, 27, .95), rgba(12, 15, 14, .98));
}

body.theme-ashen .item-card-name,
body.theme-ashen .reward-item-name {
  font-family: Georgia, serif;
  letter-spacing: .01em;
}

body.theme-ashen .item-card-meta,
body.theme-ashen .item-meta,
body.theme-ashen .reward-item-kicker {
  color: #9a9f99;
}

body.theme-ashen .reward-stat-base {
  color: #d3d0c6;
}

body.theme-ashen .compare-up {
  color: #72c08a;
}

body.theme-ashen .compare-down {
  color: #d17669;
}

body.theme-ashen .compare-even {
  color: #858b87;
}

body.theme-ashen .price,
body.theme-ashen .item-detail-price {
  color: #d0a065;
}

body.theme-ashen .equipment-slot {
  position: relative;
  min-height: 50px;
  padding: 8px 10px 8px 12px;
  border: 1px solid rgba(63, 63, 56, .58);
  border-radius: 8px;
  background: rgba(7, 10, 9, .45);
}

body.theme-ashen .equipment-slot::before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  bottom: 9px;
  width: 2px;
  background: linear-gradient(180deg, transparent, rgba(183, 154, 98, .65), transparent);
}

body.theme-ashen .slot-name {
  color: #9d947f;
}

body.theme-ashen .stat {
  border-color: rgba(65, 64, 57, .68);
  background: linear-gradient(180deg, rgba(20, 23, 21, .9), rgba(7, 10, 9, .75));
  box-shadow: inset 0 1px rgba(255, 255, 255, .025);
}

body.theme-ashen .stat strong {
  color: #e7dfcc;
  font-family: Georgia, serif;
}

body.theme-ashen .hero-statistics summary {
  border-radius: 8px;
  color: #cfc9b9;
}

/* Reward and overlays */

body.theme-ashen .modal-card,
body.theme-ashen .battle-result-card,
body.theme-ashen .reward-card {
  border-color: rgba(112, 96, 71, .74);
  background:
    linear-gradient(180deg, rgba(29, 30, 26, .98), rgba(10, 13, 12, .99));
  box-shadow:
    inset 0 1px rgba(255, 242, 200, .05),
    inset 0 0 35px rgba(183, 154, 98, .025),
    0 28px 90px rgba(0, 0, 0, .8);
}

body.theme-ashen .level-up-spark {
  color: var(--ash-rune);
}

/* Bottom navigation */
body.theme-ashen .bottom-nav {
  border-top-color: rgba(91, 82, 63, .78);
  background: rgba(7, 10, 9, .95);
  box-shadow: 0 -12px 32px rgba(0, 0, 0, .48), inset 0 1px rgba(183, 154, 98, .04);
  backdrop-filter: blur(14px);
}

body.theme-ashen .nav-button {
  position: relative;
  color: #7f8781;
  letter-spacing: .03em;
}

body.theme-ashen .nav-button .nav-glyph {
  color: #8b8d83;
  font-family: Georgia, serif;
  font-size: 22px;
  filter: none;
}

body.theme-ashen .nav-button.active {
  color: #ddcca5;
}

body.theme-ashen .nav-button.active::before {
  content: "";
  position: absolute;
  top: -7px;
  left: 26%;
  right: 26%;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--ash-rune), transparent);
  box-shadow: 0 0 9px rgba(98, 180, 163, .45);
}

body.theme-ashen .nav-button.active .nav-glyph {
  color: #c9af75;
  text-shadow: 0 0 12px rgba(98, 180, 163, .22);
}

/* Scrollbars */
body.theme-ashen * {
  scrollbar-color: #5b5548 #0b0e0d;
  scrollbar-width: thin;
}

body.theme-ashen *::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

body.theme-ashen *::-webkit-scrollbar-track {
  background: #0b0e0d;
}

body.theme-ashen *::-webkit-scrollbar-thumb {
  border: 2px solid #0b0e0d;
  border-radius: 999px;
  background: #5b5548;
}

/* Responsive */
@media (max-width: 760px) {
  body.theme-ashen::before {
    background-position: 57% 0;
    opacity: .42;
  }

  body.theme-ashen .topbar {
    padding: 8px 9px;
  }

  body.theme-ashen .brand-rune {
    width: 33px;
    height: 33px;
    background-size: 27px;
  }

  body.theme-ashen .world-tagline {
    font-size: 8px;
    letter-spacing: .11em;
  }

  body.theme-ashen .version {
    display: none;
  }

  body.theme-ashen .battle-panel,
  body.theme-ashen.ruins-active .battle-panel {
    background-size: auto, 115% 230px, auto;
    background-position: 0 0, 50% 74px, 0 0;
  }

  body.theme-ashen .battle-stage {
    padding: 6px;
  }

  body.theme-ashen .combatant {
    min-height: 150px;
    padding: 8px 6px;
  }

  body.theme-ashen .figure {
    height: 70px;
  }

  body.theme-ashen .combatant-name {
    font-size: 14px;
  }

  body.theme-ashen .enemy-role {
    min-height: 18px;
    padding: 1px 6px;
    font-size: 8px;
  }

  body.theme-ashen .versus {
    width: 30px;
    height: 30px;
    background-size: 23px;
  }

  body.theme-ashen .map-card {
    min-height: 68px;
    padding-left: 64px;
  }

  body.theme-ashen .map-card::before {
    left: 10px;
    width: 40px;
    height: 40px;
    font-size: 22px;
  }
}

@media (max-width: 480px) {
  body.theme-ashen .topbar {
    align-items: center;
  }

  body.theme-ashen .top-actions {
    gap: 4px;
  }

  body.theme-ashen .developer-toggle-label {
    display: block;
    width: 23px;
    overflow: hidden;
    font-size: 0;
  }

  body.theme-ashen .developer-toggle-label::after {
    content: "DEV";
    font-size: 8px;
    letter-spacing: .08em;
  }

  body.theme-ashen .top-summary > span {
    min-height: 26px;
    padding: 4px 6px;
  }

  body.theme-ashen .world-tagline {
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  body.theme-ashen .battle-stage {
    gap: 5px;
  }

  body.theme-ashen .combatant {
    min-height: 143px;
  }

  body.theme-ashen .figure {
    height: 64px;
  }

  body.theme-ashen .versus {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.theme-ashen *,
  body.theme-ashen *::before,
  body.theme-ashen *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}


/* v0.9.0: rarity lives on the icon; item shells stay quiet. */
body.theme-ashen .item-card-name.epic,body.theme-ashen .item-card-name.legendary,body.theme-ashen .item-card-name.mythic{ text-shadow:none; }
