/*
 * Equipment-Frontend des Compendiums: Filterleiste (Name, Kategorie),
 * sortierbare Tabelle. Optik/Bausteine wie Spellbook/Magic Items, nur
 * wm-weq-*-Klassen und #weqApp. Rein tabellarisch (Kosten/Gewicht/Details),
 * daher ohne Aufklapp-Volltexte.
 */
.wm-weq-app{ margin: 0 auto; max-width: var(--wsc-content-width, 1200px); }

/* --- Kopf --- */
.wm-weq-head{
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 14px;
}
.wm-weq-title{ font-size: 24px; font-weight: 700; color: var(--wm-ink); }
.wm-weq-sub{ font-size: 12.5px; color: var(--wm-muted); margin-top: 2px; max-width: 640px; }
.wm-weq-count{ font-size: 12px; font-weight: 700; color: var(--wm-teal); white-space: nowrap; }

/* --- Filterleiste --- */
.wm-weq-filters{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 14px;
  background: var(--wm-surface);
  border: 1px solid var(--wm-divider);
  border-radius: var(--wm-radius);
  padding: 12px 14px;
  margin-bottom: 12px;
}
.wm-weq-field{ display: flex; flex-direction: column; gap: 4px; }
.wm-weq-field-grow{ flex: 1 1 200px; }
.wm-weq-flabel{
  font-size: 10.5px;
  font-weight: 700;
  color: var(--wm-muted2);
  text-transform: uppercase;
  letter-spacing: .05em;
}
.wm-weq-search{
  border: 1px solid var(--wm-divider);
  border-radius: 4px;
  padding: 9px 10px;
  font-family: inherit;
  font-size: 13.5px;
  color: var(--wm-ink);
  background: #fff;
  width: 100%;
  box-sizing: border-box;
}
.wm-weq-select{
  border: 1px solid var(--wm-divider);
  border-radius: 4px;
  padding: 9px 8px;
  font-family: inherit;
  font-size: 13px;
  color: var(--wm-ink);
  background: #fff;
  min-width: 120px;
}
.wm-weq-search:focus,
.wm-weq-select:focus{ outline: none; border-color: var(--wm-teal); box-shadow: 0 0 0 3px var(--wm-teal-tint); }
.wm-weq-toggles{ display: inline-flex; align-items: center; gap: 12px; min-height: 37px; }
.wm-weq-check{
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--wm-muted);
  cursor: pointer;
  user-select: none;
}
.wm-weq-check input{ accent-color: var(--wm-teal); }
.wm-weq-field-btns{ flex-direction: row; align-items: center; gap: 12px; margin-left: auto; }
.wm-weq-reset{
  border: none;
  background: transparent !important;
  color: var(--wm-teal) !important;
  font-family: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  text-decoration: underline;
  padding: 0;
}
.wm-weq-reset:hover{ color: var(--wm-teal-light) !important; }

/* --- Tabelle --- */
.wm-weq-tablewrap{
  background: var(--wm-surface);
  border: 1px solid var(--wm-divider);
  border-radius: var(--wm-radius);
  overflow-x: auto;
}
.wm-weq-table{
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  color: var(--wm-text);
}
.wm-weq-table th{
  text-align: left;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--wm-muted);
  border-bottom: 2px solid var(--wm-ink);
  padding: 10px 12px;
  white-space: nowrap;
  background: var(--wm-surface);
}
.wm-weq-th-sort{ cursor: pointer; user-select: none; }
.wm-weq-th-sort:hover{ color: var(--wm-teal); }
.wm-weq-arrows{ color: var(--wm-teal); font-size: 11px; }
.wm-weq-th-exp{ width: 36px; }

.wm-weq-table td{
  border-bottom: 1px solid var(--wm-divider);
  padding: 9px 12px;
  vertical-align: middle;
}
.wm-weq-row{ cursor: pointer; }
.wm-weq-row--alt{ background: var(--wm-panel); }
.wm-weq-row:hover{ background: var(--wm-teal-tint); }
.wm-weq-row--open{ background: var(--wm-teal-tint) !important; }

.wm-weq-td-exp{
  padding: 9px 4px 9px 8px !important;
  text-align: center;
  width: 36px;
}
.wm-weq-expbtn{
  width: 24px;
  height: 24px;
  border-radius: 999px;
  border: 1px solid var(--wm-teal);
  background: #fff !important;
  color: var(--wm-teal) !important;
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  font-family: inherit;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.wm-weq-expbtn:hover{ background: var(--wm-teal) !important; color: #fff !important; }

.wm-weq-td-level{ font-weight: 700; color: var(--wm-muted); white-space: nowrap; }
.wm-weq-namerow{ display: flex; align-items: center; gap: 5px; flex-wrap: wrap; }
.wm-weq-name{ font-size: 14px; font-weight: 700; color: var(--wm-teal); }
.wm-weq-flag{ font-size: 9.5px !important; padding: 2px 7px !important; }
.wm-weq-flag--custom{ background: var(--wm-gold-tint) !important; color: #8a6a2f !important; }
.wm-weq-schoolsub{
  font-size: 11px;
  font-weight: 700;
  color: var(--wm-muted2);
  margin-top: 1px;
}
.wm-weq-td-classes{
  max-width: 170px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  color: var(--wm-muted);
}
@media (max-width: 800px){
  .wm-weq-th-classes, .wm-weq-td-classes{ display: none; }
}

/* Aufgeklappter Volltext */
.wm-weq-exp td{
  background: var(--wm-panel);
  border-bottom: 1px solid var(--wm-divider);
  padding: 0 !important;
}
.wm-weq-exp-box{
  padding: 14px 18px 14px 52px;
  max-width: 760px;
  font-size: 13px;
  line-height: 1.55;
}
.wm-weq-exp-box p{ margin: 0 0 8px; }
.wm-weq-exp-box > p:first-child{ font-style: italic; color: var(--wm-muted); }
.wm-weq-exp-box .wm-wbt-sb-tablewrap{ overflow-x: auto; margin: 8px 0; }
.wm-weq-exp-box table{ border-collapse: collapse; font-size: 11.5px; }
.wm-weq-exp-box td, .wm-weq-exp-box th{ border: 1px solid var(--wm-parchment-dark); padding: 3px 6px; }

.wm-weq-nores{
  padding: 40px 20px !important;
  text-align: center;
  color: var(--wm-muted2);
  font-size: 13.5px;
}

/* --- Pager --- */
.wm-weq-pager{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 5px;
  margin-top: 12px;
}
.wm-weq-pager:empty{ display: none; }
.wm-weq-pagebtn{
  border: 1px solid var(--wm-divider);
  background: #fff !important;
  color: var(--wm-teal) !important;
  border-radius: 4px;
  padding: 7px 12px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: background .12s ease, color .12s ease, border-color .12s ease;
}
.wm-weq-pagebtn:hover:not(:disabled):not(.active){ border-color: var(--wm-teal); }
.wm-weq-pagebtn.active{
  background: var(--wm-teal) !important;
  color: var(--wm-on-teal) !important;
  border-color: var(--wm-teal);
  cursor: default;
}
.wm-weq-pagebtn:disabled{ opacity: .45; cursor: not-allowed; }
.wm-weq-pagegap{ color: var(--wm-muted2); font-weight: 700; padding: 0 2px; }

/*
 * EN/DE-Sprachumschalter (WSB_I18n::toggle_html() + i18n in spellbook.js).
 * Identisch zum Generators-Baustein; !important gegen Theme-Regeln (Magenta).
 */
.wm-weq-title-row{ display:flex; align-items:center; gap:10px; }
.wm-weq-app .wmg-lang-toggle{
  display:inline-flex;
  border:1px solid var(--wm-divider);
  border-radius:4px;
  overflow:hidden;
}
.wm-weq-app .wmg-lang-btn{
  appearance:none;
  -webkit-appearance:none;
  border:0;
  background:#fff !important;
  color:var(--wm-muted) !important;
  font-family:inherit;
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  padding:4px 10px;
  min-height:24px;
  cursor:pointer;
  transition:background .15s ease, color .15s ease;
}
.wm-weq-app .wmg-lang-btn + .wmg-lang-btn{ border-left:1px solid var(--wm-divider); }
.wm-weq-app .wmg-lang-btn:hover{ color:var(--wm-teal) !important; }
.wm-weq-app .wmg-lang-btn.active{ background:var(--wm-teal) !important; color:var(--wm-on-teal) !important; }

/* --- Magic-Items-spezifisch: Typ-Spalte, Attunement, Seltenheits-Badges --- */
.wm-weq-td-type{ font-size: 12.5px; color: var(--wm-muted); white-space: nowrap; }
.wm-weq-att{ color: var(--wm-gold); font-weight: 700; }
.wm-weq-subtitle{ font-style: italic; color: var(--wm-muted); }

.wm-weq-rarity{
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 999px;
  border: 1px solid currentColor;
  white-space: nowrap;
}
.wm-weq-rarity--common{ color: #6b6558; }
.wm-weq-rarity--uncommon{ color: #1a7f5a; }
.wm-weq-rarity--rare{ color: #2f6fb0; }
.wm-weq-rarity--very-rare{ color: #7d3ca8; }
.wm-weq-rarity--legendary{ color: #c07a1e; }
.wm-weq-rarity--artifact{ color: #a6432b; }
.wm-weq-rarity--varies{ color: #6b6558; }

/* --- Equipment-spezifisch: Kategorie-Badges + Detail-Spalte --- */
.wm-weq-td-cost{ font-weight: 700; color: var(--wm-ink); white-space: nowrap; }
.wm-weq-td-weight{ color: var(--wm-muted); white-space: nowrap; }
.wm-weq-td-detail{ font-size: 12px; color: var(--wm-muted); }

.wm-weq-cat{
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 999px;
  border: 1px solid currentColor;
  white-space: nowrap;
}
.wm-weq-cat--weapon{ color: #a6432b; }
.wm-weq-cat--armor{ color: #2f6fb0; }
.wm-weq-cat--gear{ color: #1a7f5a; }
.wm-weq-cat--mount{ color: #8a6a2f; }
.wm-weq-cat--vehicle{ color: #6b6558; }
