:root{
  --miplas-accent: #2e8b57;
  --miplas-accent-2: #3da92c;
  --miplas-ink: #163;
  --miplas-muted: #6b7571;
  --miplas-bg: #fbfff9;
  --miplas-radius: 0px; /* ровные углы по дизайну attrs */
  --miplas-padding: 14px;
  --miplas-font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}

/* =========================
   Основная карточка BGG
   ========================= */
.miplas-bgg-card{
  --accent: var(--miplas-accent);
  background: #fff;
  border: 1.5px solid #e7ebe6;
  border-radius: var(--miplas-radius);
  padding: 12px 16px;
  box-shadow:
    0 1px 2px rgba(0,0,0,.04),
    0 6px 18px rgba(0,0,0,.06);
  transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
  display: flex;
  gap: 16px;
  align-items: flex-start;
  max-width: 760px;
  color: #222;
  font-family: var(--miplas-font);
  position: relative;
  overflow: visible;
}

/* Картинка (обложка) */
.miplas-bgg-cover{
  flex: 0 0 110px;
  display: block;
}
.miplas-bgg-cover img{
  width: 110px;
  height: auto;
  display:block;
  border-radius: 0;
  box-shadow: 0 4px 12px rgba(0,0,0,0.04);
  object-fit: cover;
  transition: transform .26s ease;
  transform-origin: 50% 50%;
}

/* Контент */
.miplas-bgg-meta{ flex: 1; }

/* Заголовок (имя игры) */
.miplas-bgg-row.title{
  font-size: 18px;
  font-weight: 00;
  margin: 0 0 10px;
  color: #111;
  line-height: 1.2;
}

/* Сетка параметров: две колонки на десктопе */
.miplas-bgg-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 20px;
  align-items: start;
}

/* Элемент (лейбл + значение) */
.miplas-bgg-item{
  background: transparent;
  padding: 0;
  border: none;
  border-radius: 0;
}

/* Метка (label) */
.miplas-bgg-item strong{
  display: block;
  font-size: 13px;
  color: var(--miplas-muted);
  margin-bottom: 6px;
  letter-spacing: 0.01em;
  font-weight: 600;
}

/* Значение (value) */
.miplas-bgg-item-val{
  font-size: 14px;
  font-weight: 600;
  color: #222;
  line-height: 1.3;
}

/* Рейтинг — главное, выделяем */
.miplas-bgg-item-val.rating{
  display: inline-block;
  font-size: 18px;
  font-weight: 800;
  color: #2f5133;
  background: linear-gradient(90deg, #f0fbf1 0%, #eaf9f0 100%);
  padding: 6px 10px;
  border-radius: 6px;
  box-shadow: 0 8px 22px rgba(46,139,87,0.06);
  transition: transform .16s ease, box-shadow .16s ease;
}

/* Rank — мягко рядом с рейтингом */
.miplas-bgg-rank{
  color: #5f6b63;
  font-weight: 00;
  font-size: 12px;
  margin-left: 8px;
  vertical-align: middle;
}

/* Ссылка и источник */
.miplas-bgg-row.link{
  margin-top: 12px;
}
.miplas-bgg-row.link a,
.miplas-bgg-source a{
  color: var(--miplas-accent);
  font-weight: 700;
  text-decoration: none;
}
.miplas-bgg-row.link a:hover,
.miplas-bgg-source a:hover{
  text-decoration: underline;
}

.miplas-bgg-source{
  margin-top: 8px;
  font-size: 12px;
  color: var(--miplas-muted);
  font-style: italic;
  line-height: 1.2;
}

/* Placeholder / ошибки */
.miplas-bgg-placeholder{
  color: var(--miplas-muted);
  font-size: 14px;
  padding: 6px 0;
}
.miplas-bgg-failed{
  color: #a00;
  font-size: 13px;
}

/* =========================
   Компактный вариант (виджеты)
   ========================= */
.miplas-bgg-compact .miplas-bgg-card{
  padding: 10px;
  max-width: 340px;
  gap: 12px;
}
.miplas-bgg-compact .miplas-bgg-grid{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.miplas-bgg-compact .miplas-bgg-item{
  min-width: 120px;
}

/* =========================
   Hover / focus эффект (по образцу miplas-attrs)
   ========================= */
.miplas-bgg-card:hover,
.miplas-bgg-card:focus-within {
  transform: translateY(-1px);
  box-shadow:
    0 2px 4px rgba(0,0,0,.05),
    0 10px 28px rgba(0,0,0,.10);
}

/* немного увеличиваем обложку при hover */
.miplas-bgg-card:hover .miplas-bgg-cover img,
.miplas-bgg-card:focus-within .miplas-bgg-cover img {
  transform: scale(1.03);
}

/* рейтинг слегка поднимается на hover карточки */
.miplas-bgg-card:hover .miplas-bgg-item-val.rating {
  transform: translateY(-2px);
  box-shadow: 0 12px 30px rgba(46,139,87,0.09);
}

/* усложнение для компактной версии — менее выраженный эффект */
.miplas-bgg-compact .miplas-bgg-card:hover,
.miplas-bgg-compact .miplas-bgg-card:focus-within {
  transform: translateY(-0.5px);
  box-shadow:
    0 1px 3px rgba(0,0,0,.04),
    0 6px 16px rgba(0,0,0,.08);
}

/* =========================
   Адаптивность
   ========================= */
@media (max-width: 700px){
  .miplas-bgg-card{ padding: 10px 12px; gap: 12px; max-width: 100%; }
  .miplas-bgg-cover{ flex: 0 0 auto; width: 100%; }
  .miplas-bgg-cover img{ width: 100%; height: auto; }
  .miplas-bgg-grid{ grid-template-columns: 1fr; gap: 8px 0; }
  .miplas-bgg-item strong{ font-size: 13px; margin-bottom: 4px; }
  .miplas-bgg-item-val{ font-size: 15px; }
}

/* Respect users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
  .miplas-bgg-card,
  .miplas-bgg-cover img,
  .miplas-bgg-item-val.rating {
    transition: none !important;
    transform: none !important;
    box-shadow: none !important;
  }
}



/* --------------------
   Доп. стили для weight, ranks и пустых cover
   -------------------- */

/* Sudėtingumas — подчеркнут, но менее агрессивно, чем рейтинг */
.miplas-bgg-item-val.weight,
.miplas-bgg-item-val.sudetingumas {
  display: inline-block;
  font-size: 15px;
  font-weight: 700;
  color: #2b5b3f; /* мягкий тёмно-зелёный */
  background: linear-gradient(90deg, #f7fbf7 0%, #eff9ee 100%);
  padding: 5px 8px;
  border-radius: 6px;
  box-shadow: 0 6px 18px rgba(46,139,87,0.04);
  line-height: 1;
  transition: transform .16s ease, box-shadow .16s ease;
}

/* при hover карточки — маленький подъем для weight */
.miplas-bgg-card:hover .miplas-bgg-item-val.weight {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(46,139,87,0.06);
}

/* Ранки — компактнее и приглушённее */
.miplas-bgg-item-val.ranks {
  font-size: 13px;
  font-weight: 700;
  color: var(--miplas-muted);
  letter-spacing: 0.01em;
}

/* Скрывать пустую обложку (если нет img) */
.miplas-bgg-cover:empty { display: none; }
.miplas-bgg-cover img[alt=""], .miplas-bgg-cover img[src=""] { display: none; }

/* Немного уменьшить gap в компактной версии если блоков стало больше */
.miplas-bgg-compact .miplas-bgg-card { gap: 10px; }

/* Защита от переполнения длинных лейблов */
.miplas-bgg-item-val { word-break: break-word; overflow-wrap: anywhere; }

/* Визуальная подсказка для source (мелкий шрифт) */
.miplas-bgg-source { opacity: .9; font-size:12px; }
