.map-viewer {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.map-viewer > .map-stage {
  flex: 0 1 auto;
}

.map-viewer > .map-tools {
  flex: 0 0 150px;
}

@media (max-width: 980px) {
  .map-viewer {
    flex-direction: column;
    align-items: stretch;
  }

  .map-viewer > .map-stage {
    align-self: center;
  }

  .map-viewer > .map-tools {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 100%;
    flex-basis: auto;
  }
}

@media (max-width: 540px) {
  .map-viewer > .map-tools {
    grid-template-columns: 1fr;
  }
}

.equipment-tooltip {
  position: fixed;
  z-index: 120;
  width: 290px;
  padding: 13px;
  border: 1px solid var(--border-strong);
  border-radius: 8px;
  background: rgba(14, 9, 7, .98);
  color: var(--text);
  box-shadow: 0 18px 45px rgba(0, 0, 0, .62);
  pointer-events: none;
}

.equipment-tooltip-head {
  display: grid;
  grid-template-columns: 48px 1fr;
  align-items: center;
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--border);
}

.equipment-tooltip-head > span {
  width: 48px;
  height: 54px;
  display: grid;
  place-items: center;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: radial-gradient(circle, rgba(225,190,142,.13), #0e0a08);
  overflow: hidden;
}

.equipment-tooltip-head img {
  max-width: 43px;
  max-height: 49px;
}

.equipment-tooltip-head small {
  display: block;
  color: var(--gold-muted);
  font-size: 8px;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.equipment-tooltip-head strong {
  display: block;
  margin-top: 3px;
  color: var(--gold-light);
  font-family: Georgia, serif;
  font-size: 14px;
}

.equipment-tooltip-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 9px 0;
}

.equipment-tooltip-meta span {
  padding: 3px 6px;
  border: 1px solid var(--border);
  border-radius: 12px;
  color: var(--muted);
  font-size: 8px;
}

.equipment-tooltip ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.equipment-tooltip li {
  padding-left: 13px;
  color: #9fca8b;
  font-size: 10px;
}

.equipment-tooltip li::before {
  content: "+";
  margin-left: -13px;
  margin-right: 6px;
  color: var(--gold);
}

.equipment-tooltip li.empty {
  color: var(--muted);
}

.equipment-tooltip li.empty::before {
  content: "·";
}

@media (hover: none) {
  .equipment-tooltip {
    display: none !important;
  }
}

.result-card[data-key^="craft:"] {
  border-color: rgba(225, 190, 142, .28);
  background:
    radial-gradient(circle at 14% 50%, rgba(225, 190, 142, .12), transparent 30%),
    linear-gradient(145deg, rgba(38, 28, 22, .98), rgba(16, 11, 9, .98));
}

.craft-data {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.workspace.craft-detail-open {
  max-width: 1460px;
}

.workspace.craft-detail-open .detail-panel {
  overflow: visible;
}

.workspace.craft-detail-open .detail-head,
.workspace.craft-detail-open .craft-detail-page {
  width: min(1180px, calc(100% - 48px));
  margin-inline: auto;
}

.workspace.craft-detail-open .detail-head {
  margin-top: 12px;
  border: 1px solid var(--border);
  border-radius: 9px 9px 0 0;
}

.workspace.craft-detail-open .craft-detail-page {
  padding: 24px;
  border: 1px solid var(--border);
  border-top: 0;
  border-radius: 0 0 9px 9px;
  background: rgba(16, 11, 9, .58);
}

.workspace.craft-detail-open .craft-recipe {
  grid-template-columns: minmax(260px, .8fr) 46px minmax(420px, 1.35fr);
}

.workspace.craft-detail-open .craft-material-grid {
  grid-template-columns: repeat(2, minmax(190px, 1fr));
}

.workspace.craft-detail-open .detail-section .relation-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.craft-recipe {
  display: grid;
  grid-template-columns: minmax(190px, .8fr) 34px minmax(260px, 1.2fr);
  align-items: center;
  gap: 12px;
  margin: 4px 0 25px;
  padding: 17px;
  border: 1px solid var(--border-strong);
  border-radius: 9px;
  background:
    radial-gradient(circle at 18% 50%, rgba(225, 190, 142, .12), transparent 34%),
    rgba(10, 7, 5, .48);
}

.craft-reward {
  min-height: 128px;
  display: grid;
  grid-template-columns: 82px 1fr;
  align-items: center;
  gap: 13px;
  padding: 12px;
  border: 1px solid rgba(225, 190, 142, .32);
  border-radius: 8px;
  background: linear-gradient(145deg, rgba(225, 190, 142, .1), rgba(20, 14, 11, .9));
}

.craft-reward > span {
  width: 82px;
  height: 94px;
  display: grid;
  place-items: center;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: radial-gradient(circle, rgba(225, 190, 142, .18), #0d0907);
}

.craft-reward img {
  max-width: 74px;
  max-height: 86px;
  filter: drop-shadow(0 7px 10px rgba(0, 0, 0, .72));
}

.craft-reward small {
  display: block;
  color: var(--gold-muted);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.craft-reward strong {
  display: block;
  margin-top: 6px;
  color: var(--gold-light);
  font-family: Georgia, serif;
  font-size: 16px;
  line-height: 1.25;
}

.craft-reward em {
  display: inline-block;
  margin-top: 7px;
  padding: 3px 7px;
  border: 1px solid var(--border);
  border-radius: 12px;
  color: var(--gold);
  font-size: 9px;
  font-style: normal;
}

.craft-arrow {
  color: var(--gold);
  font-size: 19px;
  text-align: center;
  text-shadow: 0 0 14px rgba(225, 190, 142, .55);
}

.craft-material-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.craft-material {
  min-width: 0;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: rgba(18, 12, 9, .82);
  color: var(--text);
  text-align: left;
  cursor: pointer;
  transition: border-color .2s, background .2s, transform .2s;
}

.craft-material:hover {
  transform: translateY(-2px);
  border-color: var(--gold-muted);
  background: rgba(225, 190, 142, .08);
}

.craft-material > span:first-child {
  width: 46px;
  height: 50px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(225, 190, 142, .12);
  border-radius: 6px;
  background: #0e0a08;
  overflow: hidden;
}

.craft-material img {
  max-width: 41px;
  max-height: 45px;
}

.craft-material strong,
.craft-material small {
  display: block;
}

.craft-material strong {
  overflow: hidden;
  color: var(--text);
  font-size: 10px;
  line-height: 1.25;
  text-overflow: ellipsis;
}

.craft-material small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 8px;
}

.craft-material b {
  padding: 4px 6px;
  border: 1px solid var(--border);
  border-radius: 12px;
  color: var(--gold);
  font-size: 9px;
  white-space: nowrap;
}

.craft-location-empty {
  padding: 13px;
  border: 1px dashed var(--border);
  border-radius: 7px;
  background: rgba(10, 7, 5, .3);
  color: var(--muted);
  font-size: 10px;
  line-height: 1.55;
}

@media (max-width: 1240px) {
  .craft-recipe,
  .workspace.craft-detail-open .craft-recipe {
    grid-template-columns: 1fr;
  }

  .craft-arrow {
    transform: rotate(90deg);
  }
}

@media (max-width: 560px) {
  .workspace.craft-detail-open .detail-head,
  .workspace.craft-detail-open .craft-detail-page {
    width: 100%;
  }

  .workspace.craft-detail-open .craft-detail-page {
    padding: 12px;
  }

  .craft-data,
  .craft-material-grid,
  .workspace.craft-detail-open .craft-material-grid,
  .workspace.craft-detail-open .detail-section .relation-list {
    grid-template-columns: 1fr;
  }

  .craft-recipe {
    padding: 11px;
  }

  .craft-reward {
    grid-template-columns: 68px 1fr;
  }

  .craft-reward > span {
    width: 68px;
    height: 78px;
  }
}

.wiki-language select{border:1px solid #695338;border-radius:6px;background:#18120e;color:#e8d6b8;padding:8px;cursor:pointer}.top-actions{flex-wrap:wrap}.top-actions select:focus-visible{outline:2px solid #dcb77b;outline-offset:2px}

/* Selector de idiomas */
.wiki-language {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.wiki-language::after {
    content: "";
    position: absolute;
    right: 15px;
    width: 6px;
    height: 6px;
    border-right: 2px solid #d5ad70;
    border-bottom: 2px solid #d5ad70;
    transform: translateY(-2px) rotate(45deg);
    pointer-events: none;
}

.wiki-language select {
    appearance: none;
    -webkit-appearance: none;
    color-scheme: dark;
    min-width: 86px;
    height: 42px;
    padding: 0 36px 0 17px;

    background: linear-gradient(145deg, #302319, #15100c);
    border: 1px solid #806039;
    border-radius: 10px;
    color: #f0d5a6;

    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    cursor: pointer;

    box-shadow: inset 0 1px 0 #ffffff0a,
                0 4px 14px #00000040;
    transition: border-color .2s, box-shadow .2s;
}

.wiki-language select:hover {
    border-color: #d5ad70;
    box-shadow: 0 0 14px #c99b4926;
}

.wiki-language select:focus-visible {
    outline: 2px solid #d5ad70;
    outline-offset: 3px;
}

.wiki-language select option {
    background: #1c1510;
    color: #ead5b3;
}

.wiki-language select option:checked {
    background: #49331e;
    color: #ffe1a5;
}

.realm-icon {
    width: 40px;
    height: 40px;
    object-fit: contain;
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, .5));
}

/* Fichas amplias de objetos y monstruos */
.workspace.map-detail-open:not(.craft-detail-open) {
    max-width: 1380px;
}

.workspace.map-detail-open:not(.craft-detail-open) .detail-head h2 {
    font-size: clamp(24px, 3vw, 34px);
}

.workspace.map-detail-open:not(.craft-detail-open) .detail-sub {
    font-size: 13px;
    line-height: 1.6;
}

.workspace.map-detail-open:not(.craft-detail-open)
.relation-list:not(.map-monster-list) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.workspace.map-detail-open:not(.craft-detail-open) .relation {
    min-width: 0;
    min-height: 76px;
    padding: 13px;
    gap: 13px;
    border-radius: 9px;
}

.workspace.map-detail-open:not(.craft-detail-open) .relation strong {
    font-size: 14px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.workspace.map-detail-open:not(.craft-detail-open) .relation small {
    font-size: 12px;
    line-height: 1.5;
    margin-top: 4px;
}

.workspace.map-detail-open:not(.craft-detail-open) .detail-section {
    margin-top: 28px;
}

.workspace.map-detail-open:not(.craft-detail-open) .detail-section-title {
    font-size: 19px;
}

@media (max-width: 760px) {
    .workspace.map-detail-open:not(.craft-detail-open)
    .relation-list:not(.map-monster-list) {
        grid-template-columns: 1fr;
    }
}
