/* Общая раскладка модулей (A38): колонка плавающих кнопок справа у края сцены */
.mod-fabs {
  position: absolute; z-index: 7;
  right: calc(8px + var(--sar, 0px));
  top: calc(var(--head-h, 150px) + 6px);
  bottom: calc(var(--panel-h, 45vh) + 32px);   /* над лентой новостей */
  display: flex; flex-direction: column; flex-wrap: wrap-reverse; justify-content: center; align-content: flex-start;
  gap: 8px; pointer-events: none;
  transition: bottom 0.32s cubic-bezier(.2, .9, .3, 1);
}
body.panel-drag .mod-fabs { transition: none; }
.mod-fabs:empty { display: none; }
.mod-fabs > .mod-fab {
  position: relative; flex: none; pointer-events: auto;
  width: 42px; height: 42px; margin: 0; padding: 0; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 20px; line-height: 1; color: var(--text, #fff);
  background: rgba(0, 0, 0, 0.5); border: 1px solid rgba(255, 255, 255, 0.18);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);
  -webkit-tap-highlight-color: transparent; touch-action: manipulation; cursor: pointer;
}
.mod-fabs > .mod-fab:active { transform: scale(0.92); }
.mod-fabs > .mod-fab.hidden { display: none !important; }
.mod-fabs.mod-fabs-tight { gap: 6px; }
.mod-fabs.mod-fabs-tight > .mod-fab { width: 36px; height: 36px; font-size: 17px; }
/* бейдж-счётчик на кнопке (общий вид) */
.mod-fab .fab-badge, .mod-fab .cht-badge, .mod-fab .qst-b {
  position: absolute; top: -4px; right: -5px; min-width: 18px; height: 18px; padding: 0 5px; box-sizing: border-box;
  border-radius: 9px; background: var(--red, #ff3b3b); color: #fff; font: 800 11px/18px system-ui, sans-serif; text-align: center;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.45);
}
.mod-fab .fab-cap {   /* подпись под иконкой, напр. «1/3» */
  position: absolute; left: 50%; bottom: -6px; transform: translateX(-50%);
  padding: 0 4px; border-radius: 6px; background: rgba(0, 0, 0, 0.75); color: var(--muted, #8a9);
  font: 700 9px/13px system-ui, sans-serif; white-space: nowrap;
}
.mod-fabs > .adm-fab { left: auto; top: auto; z-index: auto; opacity: 0.8; font-size: 18px; line-height: 1; border-color: rgba(43, 255, 136, 0.45); }
/* панель вытянута, сцена — полоска: бегущую строку не кладём поверх монеты */
.mod-stage-tiny .nws { display: none !important; }
/* единые поля у экранов модулей в панели (как у встроенных: 10–12 px от края) */
.subpage[data-sub="pvp_boss"] > .mod-root, .subpage[data-sub="chests"] > .mod-root,
.subpage[data-sub="quests"] > .mod-root { padding: 4px 10px 12px; box-sizing: border-box; }
.subpage > .pm-root, .subpage > .pd-root { padding: 6px 10px 12px; box-sizing: border-box; }
/* светлая тема «Минимал»: кнопки и поля модулей (остальное — theme_light.css) */
html.theme-minimal .mod-fabs > .mod-fab { background: rgba(255, 255, 255, 0.9); border-color: var(--card-b); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); }
html.theme-minimal .cht-foot textarea { background: rgba(0, 0, 0, 0.04); }
html.theme-minimal .cht-back { background: rgba(0, 0, 0, 0.35); }
