/* public/css/oldbk.css — ВЕТКА ОлдБК (2026-08-26): стили новых систем. Подключён ПОСЛЕ etalon.css.
   Правило: каждая система добавляет СВОЙ блок с заголовком-комментарием и своим префиксом классов
   (.anketa-tabs / .housing__ / .temple__ / .sbadge / .chatorder / .gates) — чтобы параллельные правки не толкались.
   Палитра — токены эталона «Камень+Золото» (var(--…)), без новых цветов «с потолка». */

/* ===== Статусы перед ником: Берсеркер / Отверженный (общие для площади, чата, анкеты) ===== */
.sbadge { display: inline-flex; align-items: center; justify-content: center; min-width: 1.1em; height: 1.1em; padding: 0 .25em; margin-right: .25em; border-radius: .2em; font-size: .72em; font-weight: 700; line-height: 1; vertical-align: middle; }
.sbadge--berserk { background: #7a1010; color: #ffd27a; border: 1px solid #b03030; }
.sbadge--outcast { background: #2a2a2a; color: #c9c9c9; border: 1px solid #555; text-decoration: line-through; }
/* СТ-81.2 (заказчик 2026-09-05): участник турнира чемпионов — значок СПРАВА от ника; кубок цвета занятого места — ПЕРЕД ником */
.sbadge--champ { background: #3a2a00; color: #ffd27a; border: 1px solid #a67c00; margin-left: .25em; margin-right: 0; font-size: .8em; }
.cup-badge { display: inline-block; width: 1.05em; height: 1.05em; margin-right: .25em; vertical-align: -.15em; }
.cup-badge svg { width: 100%; height: 100%; display: block; }
.cup-badge--1 { color: #e6b422; } .cup-badge--2 { color: #b8bcc4; } .cup-badge--3 { color: #b87333; }

/* ===== Знания: таблица гейтов по уровням (HELP_GATES_ENABLED) ===== */
.gates__wrap { overflow-x: auto; }
.gates { width: 100%; border-collapse: collapse; font-size: .92em; }
.gates th, .gates td { text-align: left; padding: .25em .5em; border-bottom: 1px solid rgba(255,255,255,.08); vertical-align: top; }
.gates__lvl { width: 4.5em; font-weight: 700; color: var(--accent, #d4af37); white-space: nowrap; }

/* ===== Настройки: порядок окон чата (CHAT_PREFS_ENABLED) + имя чата виллы ===== */
.chatorder { display: flex; flex-direction: column; gap: .3em; margin: .4em 0; }
.chatorder__row { display: flex; align-items: center; gap: .6em; }
.chatorder__num { width: 3.2em; text-align: center; }
.settings__field.is-disabled .settings__opts { opacity: .5; }

/* ===== Правая колонка: окно «кто в жилье» (HOUSING_ENABLED) ===== */
.sidep__home { margin-top: .5em; }
.sidep__role { font-size: .75em; opacity: .7; margin-left: .3em; }
.sidep__row.is-offline .sidep__nick { opacity: .45; }

/* ===== Жилые кварталы (.housing__) и Храм всех религий (.temple__) — агент «Жильё (клиент)» =====
   Каркас — «Банк» (screen--bank: панели 620px по центру, чипы в шапке). Вкладки — ярлыки как в Лавке/Знаниях,
   той же ширины, что панели. Сетки карточек — auto-fill (мобильная вёрстка без медиазапросов). */
:is(.screen--housing, .screen--temple) > .tabs { max-width: 620px; margin: 6px auto 0; gap: 2px; border-bottom: 1px solid var(--et-plate-edge); }
:is(.screen--housing, .screen--temple) .tabs__item {
  min-height: auto; padding: 4px 13px; border-radius: 2px 2px 0 0;
  font: 700 11px var(--et-font-display); letter-spacing: .4px; color: var(--et-ink);
  background: linear-gradient(var(--et-plate-1), var(--et-plate-2)); border: 1px solid var(--et-plate-edge); border-bottom: none;
}
:is(.screen--housing, .screen--temple) .tabs__item.is-active { background: linear-gradient(#fff, var(--et-paper)); color: var(--et-head); }
/* Строки списков: жильцы/гости, вещи шкафа и сумки, обстановка, заявления Храма — кнопка действия прижата вправо. */
.housing__member, .temple__row { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; padding: 5px 0; border-bottom: 1px dotted var(--et-paper-edge); }
.housing__member:last-child, .temple__row:last-child { border-bottom: 0; }
.housing__member .housing__mbtn, .temple__row .btn { margin-left: auto; flex: 0 0 auto; }
.housing__member .housing__actions { margin-left: auto; }
.housing__iname { font-weight: 700; }
.housing__online { color: var(--et-win); font-weight: 700; font-size: .75rem; }
.screen--housing .housing__actions, .screen--housing .housing__chips { margin-top: 0; gap: 6px; }
/* Плашка «Вы в гостях у …» над панелями. */
.housing__banner {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px; max-width: 620px; margin: 0 auto; padding: 6px 10px;
  border: 1px solid var(--et-gold-lo); background: linear-gradient(var(--et-plate-1), var(--et-plate-2)); font-weight: 700; font-size: .85rem;
}
.housing__banner .btn { margin-left: auto; flex: 0 0 auto; }
.housing__sub { margin: 10px 0 4px; font: 700 12px var(--et-font-display); color: var(--et-head); }
.housing__names { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 0; }
.housing__names .btn { flex: 0 0 auto; }
/* Кварталы: строка размера — «N комн.» + цены чипами + кнопки покупки справа. */
.housing__size { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; padding: 5px 0; border-bottom: 1px dotted var(--et-paper-edge); }
.housing__size:last-child { border-bottom: 0; }
.housing__size .housing__actions { margin-left: auto; }
.housing__rooms { min-width: 64px; }
/* Карточки рынка и каталога обстановки — сетка auto-fill (плиты как в магазине «Бонусы»). */
.housing__cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 8px; }
.housing__card {
  display: flex; flex-direction: column; gap: 4px; min-width: 0; padding: 7px 8px; font-size: .8rem;
  border: 1px solid var(--et-plate-edge); border-radius: 3px; background: linear-gradient(var(--et-plate-1), var(--et-plate-2));
}
.housing__card .housing__actions { margin-top: auto; align-items: center; }
.housing__cardhead { display: flex; align-items: center; gap: 6px; min-width: 0; }
.housing__icon { font-size: 22px; line-height: 1; flex: 0 0 auto; }
/* Фильтры рынка — сетка полей одной высоты; селект в стиле поля ввода банка. */
.housing__filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 8px; }
.screen--housing .housing__filters .field { margin-bottom: 0; }
.housing__select { width: 100%; height: 21px; padding: 0 6px; font: inherit; font-size: .8rem; color: var(--et-ink); background: #fff; border: 1px solid var(--et-paper-edge); border-radius: 2px; }
.housing__check { display: flex; align-items: center; gap: 6px; margin-bottom: 12px; font-size: 11px; cursor: pointer; }
.housing__check input { margin: 0; }
.housing__forsale { color: var(--et-head); font-weight: 700; }
/* Храм: правила списком мелко, статус — красным display-шрифтом, предупреждения (развод/кулдаун) — цветом поражения. */
.temple__rules { margin: 0; padding-left: 18px; font-size: 11px; color: var(--et-ink-dim); }
.temple__rules li { margin: 2px 0; }
.temple__status { margin: 0 0 6px; font: 700 14px var(--et-font-display); color: var(--et-head); }
.temple__warn { color: var(--et-loss); font-weight: 700; }
@media (max-width: 520px) {
  .housing__member .housing__mbtn, .housing__member .housing__actions, .housing__size .housing__actions, .housing__banner .btn, .temple__row .btn { margin-left: 0; width: 100%; }
}

/* ===== Анкета-паспорт (.anketa-tabs, PROFILE_TABS_ENABLED) и подарки (.gifts__, GIFTS_ENABLED) — агент «Анкета+подарки» =====
   Вкладки — те же ярлыки, что у жилья/Лавки; сетка подарков — auto-fill (мобильная вёрстка без медиазапросов). */
.anketa-tabs { display: flex; flex-wrap: wrap; gap: 2px; margin: 4px 0 8px; border-bottom: 1px solid var(--et-plate-edge); }
.anketa-tabs .tabs__item {
  min-height: auto; padding: 4px 13px; border-radius: 2px 2px 0 0;
  font: 700 11px var(--et-font-display); letter-spacing: .4px; color: var(--et-ink);
  background: linear-gradient(var(--et-plate-1), var(--et-plate-2)); border: 1px solid var(--et-plate-edge); border-bottom: none;
}
.anketa-tabs .tabs__item.is-active { background: linear-gradient(#fff, var(--et-paper)); color: var(--et-head); }
.anketa-tabs__title { display: flex; align-items: center; gap: 2px; }
.anketa-tabs__chips { flex-wrap: wrap; gap: 6px; }
.anketa-about { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.anketa-about__ta { display: block; width: 100%; min-height: 9em; box-sizing: border-box; resize: vertical; font: inherit; margin-bottom: 6px; }
.gifts__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; }
.gifts__item, .gifts__card { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 8px 6px; text-align: center; background: var(--panel-2); border: 1px solid var(--border); border-radius: var(--radius); }
.gifts__icon { font-size: 28px; line-height: 1.15; }
.gifts__name, .gifts__from { font-size: .85em; }
.gifts__msg { font-size: .85em; overflow-wrap: anywhere; }
.gifts__date { font-size: .75em; }
.gifts__cat-h { margin: 10px 0 4px; font: 700 14px var(--et-font-display); color: var(--et-head); }
.gifts__form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 4px 12px; margin-bottom: 6px; }
.gifts__form .field { flex: 1 1 200px; margin: 0; }
.gifts__anon { display: inline-flex; align-items: center; gap: 4px; padding-bottom: 8px; cursor: pointer; }
.gifts__buy { flex-direction: column; gap: 4px; width: 100%; margin-top: 4px; }
.gifts__buy .btn { width: 100%; }

/* ===== СТ-70.1 (заказчик 2026-08-26) ===== */
/* Список игроков в правой колонке: вкладки как в чате дока (.dock__tabs) — «Общее · Общага · Клан»;
   полоса на всю ширину бумажного окна (гасим padding .sidep__side отрицательными полями). */
.sidep__tabs { display: flex; gap: 2px; align-items: flex-end; flex-wrap: wrap; background: #ddd; border-bottom: 1px solid #999; padding: 3px 6px 0; margin: -6px -8px 6px; }
.sidep__tab { appearance: none; font: 400 11px var(--font, Arial); cursor: pointer; padding: 2px 10px; white-space: nowrap; border: 1px solid transparent; border-bottom: none; color: var(--link); background: transparent; }
.sidep__tab:hover { text-decoration: underline; }
.sidep__tab:focus-visible { outline: 2px solid var(--accent-2); outline-offset: -2px; }
.sidep__tab.is-active { color: var(--et-head); background: var(--et-paper); font-weight: 700; border-color: #999; margin-bottom: -1px; cursor: default; text-decoration: none; }
.sidep__row.is-me .sidep__nick { font-weight: 700; }

/* Лавка: отделы столбиком слева кнопками ОДНОЙ ширины (колонка max-content = самая длинная подпись
   «Чёрный рынок»), ассортимент — справа; на узком экране — прежняя строка вкладок над товаром. */
.screen--bshop .bshop__body { display: grid; grid-template-columns: max-content 1fr; gap: 8px 10px; align-items: start; }
.screen--bshop .bshop__tabs { flex-direction: column; flex-wrap: nowrap; gap: 4px; margin: 0; border-bottom: 0; overflow: visible; }
.screen--bshop .bshop__tabs .tabs__item { width: 100%; text-align: center; border-radius: 2px; border-bottom: 1px solid #7c868f; }
.screen--bshop .bshop__body > .panel { margin: 0; min-width: 0; }
.screen--bshop .bshop__grid { grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); }
@media (max-width: 700px) {
  .screen--bshop .bshop__body { grid-template-columns: 1fr; }
  .screen--bshop .bshop__tabs { flex-direction: row; flex-wrap: wrap; }
  .screen--bshop .bshop__tabs .tabs__item { width: auto; }
}

/* «Моё жильё»: слева картинка жилья (4:3, заглушка до рисунка заказчика) и описание под ней, справа «Кто здесь». */
.housing__top { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; align-items: start; margin-top: 8px; }   /* СТ-70.2: отступ от вкладок = отступ картинка→описание; верх «Жильцов» = верх картинки */
.housing__top .panel, .housing__top .panel ~ .panel { margin: 0; border-top: 0; }   /* margin-inline: 0 — иначе .screen--bank .panel ужмёт «Кто здесь» по содержимому */
/* СТ-70.3: слот 4:3 (низ слота = верх «Общаги №1», как было); рамка картинки на 8px короче слота → отступ до «Общаги»
   равен отступу от вкладок до картинки. (margin-top у панели не работал: его перебивает .screen--bank .bank__content .panel.) */
.housing__pic { aspect-ratio: 4 / 3; padding-bottom: 8px; box-sizing: border-box; }
.housing__picbox { height: 100%; box-sizing: border-box; display: flex; align-items: center; justify-content: center; text-align: center; padding: 6px; border: 1px dashed var(--et-paper-edge); background: #fff; overflow: hidden; }
.housing__picimg { width: 100%; height: 100%; object-fit: cover; display: block; }
.housing__left .kv__k, .housing__left .kv__v { font-size: 11px; }   /* СТ-70.3: текст «Общаги №1» — как «Уровень N» в «Жильцах» (.muted = 11px) */
@media (max-width: 700px) { .housing__top { grid-template-columns: 1fr; } }

/* СТ-86: экран «Статистика» (админ) — строки «метка: значение» с отступами как на gstat.php */
.stats__line { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: baseline; padding: 2px 0; }
.stats__line--sub { padding-left: 24px; }
.stats__line .stats__v { font-family: var(--et-font-display, inherit); }
.stats__levels { line-height: 1.9; }
.stats__lvl { display: inline-block; margin-right: 14px; white-space: nowrap; }
.stats__periods td:first-child { text-align: left; }

/* СТ-81.6 блок 3: суммы ставок бара под зонами удара/блока */
.f2__bets { font-size: 12px; margin-top: 4px; opacity: .85; }
.bar__pool { margin: 2px 0 6px; }
