/* Все правила начинаются с :root - так они сильнее правил тем игр
   (html[data-alt] .btn.primary и подобных в rust.css): иначе у Rust, CS2,
   Dota и Deadlock кнопки и плитки магазина возвращались к теме игры. */
/* «Клуб» (13.10.2026, свод Марко): окна оплаты и магазин.
   Четыре цвета на всё и один акцент: фон, панель, линия, текст и янтарь.
   Акцент только на главной кнопке и одном статусе. Ни градиентов, ни
   свечения, ни теней, ни стекла: глубина - плоская заливка и линия 1 px.
   Углы 0 или 2 px. Моно для цифр и меток, обычный гротеск для текста,
   без дисплейного шрифта; капс только у мелких меток с разрядкой.
   Свои переменные в своём классе: темы игр (rust.css и другие) сюда не
   дотягиваются. */
:root .club{
  --k-bg:#121314;
  --k-panel:#1B1C1E;
  --k-line:#2E3033;
  --k-text:#D9D9D4;
  --k-acc:#FFB000;
  --k-mono:"Martian Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  --k-sans:"Golos Text","IBM Plex Sans",system-ui,sans-serif;
  font-family:var(--k-sans);
  color:var(--k-text);
  font-variant-numeric:tabular-nums;
}
/* Моно чуть уже обычного: у Martian Mono есть ось ширины, и значения в
   строках не переносятся на 360 px. */
:root .club .clabel,:root .club .crow .k,:root .club .crow .v,:root .club .cbtn,:root .club .cnote{font-stretch:87.5%}

/* Окно снизу: плоский лист на всю ширину, сверху линия. */
:root .photoview.club{background:rgba(18,19,20,.94);animation:none}
/* Лист прижат к низу во всю ширину: без плавающей карточки с отступами. */
:root .photoview.club.supsheet{padding:calc(62px + env(safe-area-inset-top, 0px)) 0 0;justify-content:flex-end}
:root .club .supbox{background:var(--k-bg);border-top:1px solid var(--k-line);border-radius:0;
  box-shadow:none;padding:16px 16px calc(16px + var(--safe-b, 0px));gap:0;color:var(--k-text);
  animation:clubin .12s steps(2, end)}
:root .club .supx{background:var(--k-bg);color:var(--k-text);box-shadow:none;border:1px solid var(--k-line);
  border-radius:0;font-family:var(--k-mono);font-size:14px}
@keyframes clubin{from{transform:translateY(24px)}to{transform:none}}

/* Мелкая метка: моно, 11 px, капс с разрядкой. */
:root .club .clabel{display:block;font-family:var(--k-mono);font-size:11px;font-weight:500;
  letter-spacing:.12em;text-transform:uppercase;opacity:.6;margin:0 0 6px}
/* Заголовок - тот же гротеск, жирнее. Не капсом. */
:root .club .ch{font-family:var(--k-sans);font-size:20px;font-weight:700;line-height:1.25;
  letter-spacing:0;text-transform:none;margin:0 0 6px;color:var(--k-text)}
:root .club .cp{font-size:14px;line-height:1.45;margin:0 0 12px;opacity:.8}
:root .club .cnote{font-family:var(--k-mono);font-size:11px;line-height:1.5;opacity:.55;margin:10px 0 0}
:root .club .cold{text-decoration:line-through;opacity:.5}

/* Строки как в таблице игроков: метка слева мелким капсом, значение моно,
   всё прижато влево, между строками линия 1 px. */
:root .club .crows{border-top:1px solid var(--k-line);margin:4px 0 0}
:root .club .crow{display:grid;grid-template-columns:minmax(112px, 42%) 1fr;align-items:baseline;
  gap:8px;padding:10px 0;border-bottom:1px solid var(--k-line)}
:root .club .crow .k{font-family:var(--k-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.6}
:root .club .crow .v{font-family:var(--k-mono);font-size:14px;text-align:left}
:root .club .crow.c3{grid-template-columns:minmax(96px, 36%) 1fr 1fr}
:root .club .crow.head .v{font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.6}
/* Один статус акцентом: «в сети» в окне фильтра. */
:root .club .crow .v.live{color:var(--k-acc)}

/* Кнопки: текст в скобках, моно. Главная - во всю ширину, 56 px,
   заливка акцентом, текст почти чёрный. Остальные - линия 1 px. */
:root .club .cacts{display:flex;flex-direction:column;gap:8px;margin-top:16px}
:root .club .cbtn{display:block;width:100%;height:48px;padding:0 12px;border:1px solid var(--k-line);
  border-radius:2px;background:transparent;color:var(--k-text);font-family:var(--k-mono);
  font-size:13px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;text-align:center;
  box-shadow:none;cursor:pointer}
:root .club .cbtn.main{height:56px;background:var(--k-acc);border-color:var(--k-acc);color:var(--k-bg);
  font-size:14px;font-weight:700}
:root .club .cbtn.text{height:40px;border-color:transparent;opacity:.6}
:root .club .cbtn:active{transform:translateY(1px)}
:root .club .cbtn:disabled{opacity:.45}
:root .club .linkbtn.support{font-family:var(--k-mono);font-size:11px;letter-spacing:.06em;color:var(--k-text);
  opacity:.5;text-align:left;margin-top:12px;background:none;border:0;padding:0}

/* ------------------------------------------------ магазин (13.10.2026) */
/* Экран целиком на фоне клуба: темы игр сюда не доходят. Блоки делятся
   линиями, а не отступами и тенями. */
:root .shopscr.club,:root .shopscr.club .scrollarea{background:var(--k-bg)}
:root .shopscr.club::before,:root .shopscr.club::after{display:none}
:root .club .shophero{display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:0;padding:14px 16px 12px;border-bottom:1px solid var(--k-line)}
:root .club .shoph-t{font-family:var(--k-sans);font-size:24px;font-weight:700;line-height:1.1;
  letter-spacing:0;text-transform:none;color:var(--k-text);margin:0}
:root .club .shoph-mine{height:36px;padding:0 10px;border:1px solid var(--k-line);border-radius:2px;
  background:none;box-shadow:none;color:var(--k-text);font-family:var(--k-mono);font-size:12px;
  letter-spacing:.04em;text-transform:uppercase;font-stretch:87.5%}
:root .club .shopnav{position:sticky;top:0;z-index:6;display:flex;gap:0;overflow-x:auto;margin:0;padding:0 8px;
  background:var(--k-bg);border-bottom:1px solid var(--k-line);scrollbar-width:none}
:root .club .shopnav button{flex:none;padding:12px 8px;border:0;border-radius:0;background:none;box-shadow:none;
  color:var(--k-text);opacity:.6;font-family:var(--k-mono);font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;font-stretch:87.5%}
:root .club .shopnav button:active{opacity:1}
:root .club .sect,:root .club .shopblock{margin:0;padding:18px 16px;background:none;box-shadow:none;border-radius:0;
  border-bottom:1px solid var(--k-line)}
:root .club .shophead{display:flex;flex-direction:column;gap:4px;margin:0 0 12px}
:root .club .shophead b{font-family:var(--k-sans);font-size:17px;font-weight:700;letter-spacing:0;
  text-transform:none;color:var(--k-text)}
:root .club .shophead span{font-size:13px;line-height:1.45;color:var(--k-text);opacity:.7}
:root .club .shophead em{font-family:var(--k-mono);font-style:normal;font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--k-text);opacity:.6;font-stretch:87.5%}
:root .club .slabel,:root .club .tgroup{display:block;margin:14px 0 8px;font-family:var(--k-mono);font-size:11px;
  font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--k-text);opacity:.6;
  font-stretch:87.5%;background:none;padding:0}
:root .club .slabel::before,:root .club .slabel::after,:root .club .tgroup::before,:root .club .tgroup::after{display:none}
:root .club .obnote{font-size:13px;line-height:1.45;color:var(--k-text);opacity:.75}

/* Плитки - слоты инвентаря: панель, линия 1 px, редкость толщиной рамки
   (r2 - 2 px, r3 - 3 px цветом текста), метка в углу, цена моно внизу. */
:root .club .shopgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
:root .club .shopcard{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:8px;
  min-width:0;padding:10px;background:var(--k-panel);border:1px solid var(--k-line);border-radius:2px;
  box-shadow:none;clip-path:none;color:var(--k-text);text-align:left;font-family:var(--k-sans)}
:root .club .shopcard::before,:root .club .shopcard::after{display:none}
:root .club .shopcard.r2{border:2px solid var(--k-text);padding:9px}
:root .club .shopcard.r3{border:3px solid var(--k-text);padding:8px}
:root .club .shopcard.owned{opacity:1;border-color:var(--k-line)}
:root .club .shopcard:active{transform:translateY(1px)}
:root .club .shopcard[hidden]{display:none}
:root .club .slot-tag{position:absolute;top:0;left:0;padding:3px 6px;background:var(--k-text);color:var(--k-bg);
  font-family:var(--k-mono);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  font-stretch:87.5%;z-index:1}
:root .club .slot-art{display:flex;align-items:center;justify-content:flex-start;min-height:56px;padding:14px 0 0;
  background:none;box-shadow:none;border:0;overflow:hidden}
:root .club .slot-line{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}
:root .club .slot-nick{font-family:var(--k-sans);font-size:13px;font-weight:600;color:var(--k-text);opacity:.8;
  max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:root .club .slot-art .title{max-width:100%}
:root .club .slot-word{font-family:var(--k-sans);font-size:15px;font-weight:700;line-height:1.2;color:var(--k-text)}
:root .club .shopcard .cosmswatch{width:auto;height:auto;margin:0;background:none;box-shadow:none}
:root .club .shopname{font-size:13px;font-weight:600;text-align:left;color:var(--k-text)}
:root .club .shopsub{margin:-4px 0 0;font-size:12px;line-height:1.35;text-align:left;color:var(--k-text);opacity:.6}
:root .club .slot-foot{display:flex;align-items:baseline;justify-content:space-between;gap:6px;margin-top:auto;
  padding-top:8px;border-top:1px solid var(--k-line)}
:root .club .slot-price{font-family:var(--k-mono);font-size:13px;font-weight:500;color:var(--k-text);
  font-stretch:87.5%;white-space:nowrap}
:root .club .slot-price s{margin-right:5px;font-size:11px;opacity:.5}
:root .club .slot-act{font-family:var(--k-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;
  color:var(--k-text);opacity:.6;font-stretch:87.5%;white-space:nowrap}
:root .club .shopcard.owned .slot-price{text-transform:uppercase;font-size:11px;letter-spacing:.06em;opacity:.7}
:root .club .shopmore{width:100%;height:44px;margin-top:8px;padding:0;border:1px solid var(--k-line);border-radius:2px;
  background:none;box-shadow:none;color:var(--k-text);font-family:var(--k-mono);font-size:12px;
  letter-spacing:.04em;text-transform:uppercase;font-stretch:87.5%}
:root .club .market{margin:0;padding:0;background:none;border:0;box-shadow:none}

/* Подписки карточками (13.10.2026, ночь): Plus жёлтая целиком, Pro и MAX -
   панель с полосой и именем своего цвета. Плюсы списком с квадратиками. */
:root .club .plusbox{margin:0;padding:0;background:none;border:0;box-shadow:none;border-radius:0}
:root .club .plusbox::before,:root .club .plusbox::after{display:none}
:root .club .subcard{margin:12px 0 0;padding:16px;background:var(--k-panel);border:1px solid var(--k-line);
  border-top:4px solid var(--sub, var(--k-line));border-radius:2px;color:var(--k-text)}
:root .club .subcard.plus{background:var(--k-acc);border-color:var(--k-acc);color:var(--k-bg)}
:root .club .subhead{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px 10px}
:root .club .subname{font-family:var(--k-sans);font-size:22px;font-weight:700;letter-spacing:0;color:var(--sub, inherit)}
:root .club .subcard.plus .subname{color:var(--k-bg)}
:root .club .subnow{font-family:var(--k-mono);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  font-stretch:87.5%}
:root .club .subprice{display:block;margin:4px 0 12px;font-family:var(--k-mono);font-size:14px;font-weight:700;font-stretch:87.5%}
:root .club .sublead{display:block;margin:0 0 6px;font-size:13px;font-weight:600;opacity:.8}
:root .club .subperks{list-style:none;margin:0;padding:0}
:root .club .subperks li{position:relative;margin:0;padding:6px 0 6px 18px;font-size:14px;line-height:1.4}
:root .club .subperks li::before{content:"";position:absolute;left:0;top:12px;width:8px;height:8px;background:currentColor}
:root .club .subcard:not(.plus) .subperks li::before{background:var(--sub)}
:root .club .subperks li[hidden]{display:none}
:root .club .submore{margin:2px 0 0;padding:4px 0;border:0;background:none;color:inherit;opacity:.7;
  font-family:var(--k-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;font-stretch:87.5%}
:root .club .subbuy{margin-top:14px;height:52px;background:none;border:1px solid var(--sub);color:var(--sub)}
:root .club .subcard.plus .subbuy{background:var(--k-bg);border-color:var(--k-bg);color:var(--k-acc);font-weight:700}
:root .club .subterms{margin-top:6px;height:40px;border-color:transparent;background:none;color:inherit;opacity:.75}

/* Неделя Plus за друзей и миссии: строки и плоские полоски. */
:root .club .invplus{margin:16px 0 0;padding:12px 0 0;background:none;border:0;border-top:1px solid var(--k-line);
  box-shadow:none;border-radius:0}
:root .club .invhead{display:flex;justify-content:space-between;align-items:baseline}
:root .club .invhead b{font-family:var(--k-sans);font-size:15px;font-weight:700;letter-spacing:0;text-transform:none;color:var(--k-text)}
:root .club .invhead span{font-family:var(--k-mono);font-size:13px;color:var(--k-text);font-stretch:87.5%}
:root .club .invbar{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
:root .club .invbar i{height:8px;border-radius:0;background:none;border:1px solid var(--k-line);box-shadow:none}
:root .club .invbar i.on{background:var(--k-text);border-color:var(--k-text)}
:root .club .missions{padding:16px 0 0;border-bottom:0}
:root .club .mission .n{font-family:var(--k-sans);font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--k-text)}
:root .club .mission .when{font-family:var(--k-mono);font-size:12px;color:var(--k-text);font-stretch:87.5%}
:root .club .mbar{height:2px;border-radius:0;background:var(--k-line)}
:root .club .mbar i{border-radius:0;background:var(--k-text);box-shadow:none}

/* Старые кнопки и подписи внутри окон оплаты и магазина - плоско, моно,
   главная заливкой акцентом, остальные линией. */
:root .club .supbox .kicker{display:block;margin:0 0 6px;padding:0;background:none;font-family:var(--k-mono);
  font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--k-text);opacity:.6}
:root .club .supbox h3{margin:0 0 6px;font-family:var(--k-sans);font-size:20px;font-weight:700;line-height:1.25;
  letter-spacing:0;text-transform:none;color:var(--k-text)}
:root .club .supbox .obnote{margin:0 0 10px}
:root .club .plusbtn{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;
  width:100%;height:56px;margin:0;padding:0 14px;border:1px solid var(--k-acc);border-radius:2px;
  background:var(--k-acc);color:var(--k-bg);box-shadow:none;clip-path:none;filter:none}
:root .club .plusbtn::before,:root .club .plusbtn::after{display:none}
:root .club .plusbtn b{font-family:var(--k-mono);font-size:14px;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:inherit;font-stretch:87.5%;text-align:left}
:root .club .plusbtn span{font-family:var(--k-mono);font-size:13px;letter-spacing:0;opacity:1;color:inherit;font-stretch:87.5%}
:root .club .plusbtn.paysecond{height:48px;background:none;border-color:var(--k-line);color:var(--k-text)}
:root .club .plusbtn.paysecond b{font-size:13px;font-weight:500}
:root .club .btn{height:48px;flex:none;padding:0 12px;border:1px solid var(--k-line);border-radius:2px;
  background:none;color:var(--k-text);box-shadow:none;clip-path:none;font-family:var(--k-mono);
  font-size:13px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;font-stretch:87.5%}
:root .club .btn.support,:root .club .btn.primary,:root .club .cardbtn.main{height:56px;background:var(--k-acc);
  border-color:var(--k-acc);color:var(--k-bg);font-size:14px;font-weight:700}
:root .club .btn.ghost{height:40px;border-color:transparent;opacity:.6}
:root .club .paybtns{margin:0 0 8px}
:root .club .payfold{margin:0 0 8px}
:root .club .payfold .paystars{font-family:var(--k-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.6}
:root .club .plushero{margin:0 0 10px;padding:0 0 0 10px;background:none;border:0;border-left:2px solid var(--k-text);
  box-shadow:none;font-size:15px;color:var(--k-text)}
:root .club .mact,:root .club .mact.primary,:root .club .mact.support{height:40px;padding:0 12px;border:1px solid var(--k-line);
  border-radius:2px;background:none;color:var(--k-text);box-shadow:none;clip-path:none;font-family:var(--k-mono);
  font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;font-stretch:87.5%}
:root .club .linkbtn{font-family:var(--k-mono);font-size:11px;letter-spacing:.04em;color:var(--k-text);opacity:.6}
:root .club .pbuyrow{display:grid;gap:6px;margin:0;padding:12px 0;background:none;box-shadow:none;
  border:0;border-bottom:1px solid var(--k-line);border-radius:0}
:root .club .pbuyrow.best,:root .club .pbuyrow.forever{box-shadow:none}
:root .club .pbuyhead{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}
:root .club .pbuyhead b{font-family:var(--k-sans);font-size:16px;font-weight:700;letter-spacing:0;text-transform:none}
:root .club .pbuyprice{margin-left:auto;font-family:var(--k-mono);font-size:14px;font-weight:700;color:var(--k-text);font-stretch:87.5%}
:root .club .pbuysave{padding:1px 5px;background:none;border:1px solid var(--k-text);color:var(--k-text);
  font-family:var(--k-mono);font-size:11px;font-stretch:87.5%}
:root .club .pbuybest{flex-basis:100%;padding:0;background:none;color:var(--k-text);font-family:var(--k-mono);
  font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:.7}
:root .club .pbuyrow small{font-size:12px;color:var(--k-text);opacity:.6}
:root .club .field,:root .club textarea.field,:root .club input.field{background:var(--k-panel);border:1px solid var(--k-line);
  border-radius:2px;box-shadow:none;color:var(--k-text);font-family:var(--k-sans)}
:root .club .chip{border:1px solid var(--k-line);border-radius:2px;background:none;box-shadow:none;color:var(--k-text);
  font-family:var(--k-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-stretch:87.5%}
:root .club .chip.on{background:var(--k-text);border-color:var(--k-text);color:var(--k-bg)}

/* Поправки после первого просмотра на 375 px (13.10.2026). */
/* В магазине без украшений события: паутина Хэллоуина висела на «Мои вещи». */
html:has(.shopscr.club.on) #hwdeco{display:none}
:root .club .shophead span{text-align:left}
:root .club .plusguar{margin:10px 0 0;padding:0;background:none;border:0;box-shadow:none;color:var(--k-text)}
/* Акцент - только у главной кнопки: остальные «главные» старые кнопки
   внутри магазина (ссылка другу, миссии) - линией. */
:root .club .sect .btn.primary,:root .club .sect .btn.support{height:48px;background:none;border-color:var(--k-line);
  color:var(--k-text);font-size:13px;font-weight:500}
/* Старые кнопки в стиле свода - текстом в скобках. */
:root .club .btn::before,:root .club .mact::before,:root .club .shopmore::before{content:"[";display:inline;position:static;
  background:none;width:auto;height:auto;opacity:1;transform:none}
:root .club .btn::after,:root .club .mact::after,:root .club .shopmore::after{content:"]";display:inline;position:static;
  background:none;width:auto;height:auto;opacity:1;transform:none}
:root .club .missions .mrow{margin:0;padding:10px 0;gap:12px;align-items:baseline;background:none;box-shadow:none;
  border-radius:0;border-bottom:1px solid var(--k-line)}
:root .club .missions .mrow .info{display:flex;flex-direction:column;gap:6px}
:root .club .missions .slabel{margin-top:0}
:root .club .shopcard>.slot-tag{width:auto;right:auto}
:root .club .sect::before,:root .club .sect::after,:root .club .shopblock::before,:root .club .shopblock::after{display:none}
/* Старая цена строкой над новой: в 160 px ширины плитки «[КУПИТЬ]» иначе
   не помещался. */
:root .club .slot-foot{align-items:flex-end}
:root .club .slot-price{display:flex;flex-direction:column;gap:1px}
:root .club .slot-price s{margin:0;line-height:1}
/* Кольцо рамки шире аватарки: место слева и сверху, чтобы не обрезалось. */
:root .club .cosm .slot-art{overflow:visible;padding:18px 0 4px 8px}
/* Создатель титулов: плашка на панели, слои - плоские кнопки с линией,
   выбранная - линией цвета текста, без акцента. */
:root .club .fxstage{background:var(--k-panel);border:1px solid var(--k-line);border-radius:2px;box-shadow:none}
:root .club .fxrow .k{font-family:var(--k-mono);font-size:11px;letter-spacing:.12em;color:var(--k-text);opacity:.6;font-stretch:87.5%}
:root .club .fxopt{padding:7px 10px;background:none;border:1px solid var(--k-line);border-radius:2px;box-shadow:none;
  color:var(--k-text);font-family:var(--k-sans);font-size:13px}
:root .club .fxopt.on{border-color:var(--k-text);box-shadow:inset 0 0 0 1px var(--k-text)}
:root .club .fxdot{border-radius:0}
:root .club .field .k{font-family:var(--k-mono);color:var(--k-text);opacity:.6}
:root .club .field input{font-family:var(--k-sans);color:var(--k-text)}
/* Старые окна собраны без своих отступов - им промежуток 10 px; новые
   («клубные») расставляют отступы сами. */
:root .club .supbox{gap:10px}
:root .club .supbox.clubbox{gap:0}
:root .club .supbox .obnote{margin:0}
:root .club .titleline{margin:0}
/* В выборе срока у каждой строки своя кнопка «картой»: янтарём только у
   строки «выгоднее всего», остальные линией - акцент один на экран. */
:root .club .pbuyrow .cardbtn.main{height:48px;background:none;border-color:var(--k-line);color:var(--k-text);
  font-size:13px;font-weight:500}
:root .club .pbuyrow.best .cardbtn.main{height:56px;background:var(--k-acc);border-color:var(--k-acc);color:var(--k-bg);
  font-size:14px;font-weight:700}
:root .club .pbuyrow .mact,:root .club .payfoldin .mact{width:100%}
/* Кнопка звёзд под картой (foldStars ставит ей paysecond) - линией: янтарь
   только у одной главной кнопки. Закрыть - без подложки и в темах игр. */
:root .club .btn.paysecond,:root .club .btn.support.paysecond{height:48px;background:none;border-color:var(--k-line);
  color:var(--k-text);font-size:13px;font-weight:500}
:root .club .btn.ghost{background:none;box-shadow:none}

/* Вход в зал (13.10.2026): только при входе в магазин. Дверь во весь
   экран, под ней строки и «[ЗАЙТИ]»; открывается тремя кадрами transform
   без переходов. Остальные заходы за день - консоль на 1,6 с (ниже). */
:root .hall{position:fixed;inset:0;z-index:300;display:flex;flex-direction:column;gap:12px;
  padding:calc(12px + env(safe-area-inset-top, 0px)) 16px calc(16px + env(safe-area-inset-bottom, 0px));
  background:var(--k-bg)}
:root .hall .hallback{align-self:flex-start;height:36px;padding:0;border:0;background:none;box-shadow:none;
  color:var(--k-text);opacity:.6;font-family:var(--k-mono);font-size:12px;letter-spacing:.06em;
  text-transform:uppercase;font-stretch:87.5%}
:root .hall .doorwrap{flex:1;min-height:0;display:flex;align-items:flex-end;cursor:pointer}
:root .hall .doorsvg{display:block;width:100%;max-width:420px;height:100%}
:root .hall .leaf{transform-box:view-box;transform-origin:62px 0}
:root .hall .hallrows{display:flex;flex-direction:column;gap:8px}
:root .hall .hallrow{font-family:var(--k-mono);font-size:13px;font-weight:700;letter-spacing:.08em;line-height:1.3;
  text-transform:uppercase;color:var(--k-text);font-stretch:87.5%}
:root .club .crows + .ptable{margin-top:0;border-top:0}
:root .club .subincl{display:block;margin-top:12px;font-family:var(--k-mono);font-size:12px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;font-stretch:87.5%;opacity:.8}

/* Кейсы (13.10.2026): ежедневный строкой, три кейса плитками (толщина рамки
   - ценность), окно с шансами, барабан. Цвета редкостей - как в CS: серый,
   синий, фиолетовый, янтарь; только полосой снизу и квадратиком в шансах. */
:root .club .boxfree{display:flex;align-items:center;gap:12px;margin:0 0 10px;padding:12px;background:var(--k-panel);
  border:1px solid var(--k-line);border-radius:2px}
:root .club .boxfreeinfo{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
:root .club .boxfreeinfo b{font-size:15px;font-weight:700}
:root .club .boxfreeinfo span{font-size:12px;line-height:1.35;opacity:.7}
:root .club .boxfreebtn{width:auto;flex:none;height:40px;padding:0 12px}
:root .club .boxgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
:root .club .boxtile{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:12px 4px;
  background:var(--k-panel);border:1px solid var(--k-line);border-radius:2px;color:var(--k-text)}
:root .club .boxtile.mid{border:2px solid var(--k-text);padding:11px 3px}
:root .club .boxtile.big{border:3px solid var(--k-text);padding:10px 2px}
:root .club .boxtile b{font-size:14px;font-weight:700}
:root .club .boxprice{font-family:var(--k-mono);font-size:13px;font-weight:700;font-stretch:87.5%}
:root .club .boxpity{font-family:var(--k-mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;opacity:.6;
  font-stretch:87.5%;text-align:center}
:root .club .boxhead{display:flex;align-items:center;gap:14px;margin:0 0 12px}
:root .club .boxodds{border-top:1px solid var(--k-line);margin:0 0 4px}
:root .club .boxodd{padding:9px 0;border-bottom:1px solid var(--k-line)}
:root .club .boxodd .rn{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--k-mono);
  font-size:13px;font-stretch:87.5%}
:root .club .boxodd .ri{display:block;margin-top:3px;font-size:12px;line-height:1.35;opacity:.7}
:root .club .rsq{display:inline-block;width:9px;height:9px;margin-right:7px;background:var(--rc)}
:root .reelview{position:fixed;inset:0;z-index:250;display:flex;flex-direction:column;justify-content:center;gap:16px;
  padding:16px;background:var(--k-bg)}
:root .reelview .reelwin{position:relative;height:150px;overflow:hidden;border-top:1px solid var(--k-line);
  border-bottom:1px solid var(--k-line)}
:root .reelview .reelstrip{display:flex;gap:6px;height:100%;align-items:center;will-change:transform}
:root .reelview .reeltile{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:space-between;
  width:108px;height:130px;padding:10px 6px 0;overflow:hidden;background:var(--k-panel);border:1px solid var(--k-line);
  border-bottom:4px solid var(--rc);border-radius:2px;color:var(--k-text)}
:root .reelview .reelart{flex:1;display:flex;align-items:center;justify-content:center;max-width:100%;overflow:hidden}
:root .reelview .reelart .title{max-width:100%;font-size:11px}
:root .reelview .reelart .cosmswatch{width:auto;height:auto;margin:0;background:none}
:root .reelview .reellabel{max-height:30px;padding-bottom:6px;overflow:hidden;font-size:11px;line-height:1.25;text-align:center}
:root .reelview .reelword{font-family:var(--k-mono);font-size:16px;font-weight:700;font-stretch:87.5%}
:root .reelview .reelsub{padding:4px 8px;font-family:var(--k-mono);font-size:18px;font-weight:700;color:#121314}
:root .reelview .reelsub.plus{background:#FFB000}
:root .reelview .reelsub.pro{background:#7FB3FF}
:root .reelview .reelsub.max{background:#C46BFF}
:root .reelview .reelmark{position:absolute;top:0;bottom:0;left:50%;width:2px;margin-left:-1px;background:var(--k-acc)}
:root .reelview .reelres{display:flex;flex-direction:column;gap:12px}
:root .reelview .reelres[hidden]{display:none}
:root .reelview .reeltile.big{align-self:flex-start;width:150px;height:170px;border-bottom-width:6px}
:root .reelview .reelresinfo{display:flex;flex-direction:column;gap:4px}
:root .reelview .reelrar{font-family:var(--k-mono);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--rc);font-stretch:87.5%}
:root .reelview .reelresinfo b{font-size:20px;font-weight:700}
:root .reelview .reelwhere{font-size:13px;line-height:1.4;opacity:.7}

/* Окно подарка (14.10.2026): что даришь - крупно, предпросмотр - заметной
   кнопкой с линией цвета текста. */
:root .club .giftprev{display:flex;align-items:center;gap:14px;margin:4px 0 6px;padding:12px;background:var(--k-panel);
  border:1px solid var(--k-line);border-radius:2px}
:root .club .giftprev svg{flex:none}
:root .club .giftprevtx{display:flex;flex-direction:column;gap:3px;min-width:0}
:root .club .giftprevk{font-family:var(--k-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.6;font-stretch:87.5%}
:root .club .giftprevtx b{font-size:20px;font-weight:700;line-height:1.15}
:root .club .giftprevp{font-family:var(--k-mono);font-size:14px;font-weight:700;font-stretch:87.5%}
:root .club .giftprevd{font-size:12px;line-height:1.35;opacity:.7}
:root .club .btn.giftshow{height:44px;border:1px solid var(--k-text);opacity:1;color:var(--k-text);background:none}

/* Короткий вход в магазин - консоль (14.10.2026, Марко: «появляется на
   миллисекунду, сделай секунды на 1-2, панель cmd с кодом типа загрузки»).
   Окно с заголовком, моно-строки печатаются по одной, курсор мигает
   сменой кадра, полоска загрузки - акцентом. */
:root .hall.flash{justify-content:center;padding:0 16px;cursor:pointer}
:root .hall .cmdwin{align-self:center;width:100%;max-width:440px;background:var(--k-panel);border:1px solid var(--k-line);
  border-radius:2px}
:root .hall .cmdbar{padding:6px 10px;background:var(--k-line);font-family:var(--k-mono);font-size:11px;letter-spacing:.04em;
  color:var(--k-text);font-stretch:87.5%}
:root .hall .cmdout{min-height:150px;padding:12px 12px 14px;font-family:var(--k-mono);font-size:13px;line-height:1.6;
  color:var(--k-text);white-space:pre;overflow:hidden;font-stretch:87.5%}
:root .hall .cmdout .cmdline:last-child::after{content:"_";animation:cmdcur .8s steps(1) infinite}
:root .hall .cmdprog{color:var(--k-acc)}
@keyframes cmdcur{50%{opacity:0}}

/* Редизайн магазина (18.10.2026, docs/shop-plan.md). «Сегодня» - одно
   предложение панелью: метка, заголовок, строка, картинка 64 px справа и
   одна янтарная кнопка. Подписка одной карточкой с переключателем
   [PLUS] [PRO] [MAX]: выбранная вкладка залита цветом тарифа. */
:root .club .shophero2{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--k-panel);
  border-bottom:1px solid var(--k-line)}
:root .club .heromain{display:grid;grid-template-columns:1fr 64px;gap:12px;align-items:start}
:root .club .heromain.noart{grid-template-columns:1fr}
:root .club .herotx{min-width:0}
:root .club .herotx .ch{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
:root .club .herotx .cp{margin:0}
:root .club .heroline{display:flex;margin:10px 0 0}
:root .club .heroline .slot-line{flex-wrap:wrap}
:root .club .heroprice{display:block;margin:8px 0 0;font-family:var(--k-mono);font-size:14px;font-weight:700;font-stretch:87.5%}
:root .club .heroprice s{margin-right:6px;font-size:12px;font-weight:500;opacity:.5}
:root .club .heroart{display:flex;align-items:center;justify-content:center;width:64px;height:64px;overflow:visible}
:root .club .heroart svg{display:block}
:root .club .heroart .cosmswatch{width:auto;height:auto;margin:0;background:none;box-shadow:none}
:root .club .herosub{padding:6px 8px;background:var(--k-acc);color:var(--k-bg);font-family:var(--k-mono);
  font-size:16px;font-weight:700;letter-spacing:.04em;font-stretch:87.5%}
:root .club .shophero2 .cbtn.main{margin:0}

:root .club .subtabs{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0 0 12px;
  border:1px solid var(--k-line);border-radius:2px}
:root .club .subtab{height:40px;padding:0;border:0;border-left:1px solid var(--k-line);border-radius:0;
  background:none;box-shadow:none;color:var(--k-text);font-family:var(--k-mono);font-size:13px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;font-stretch:87.5%}
:root .club .subtab:first-child{border-left:0}
:root .club .subtab.on{color:var(--k-bg)}
:root .club .subtab.plus.on{background:#FFB000}
:root .club .subtab.pro.on{background:#7FB3FF}
:root .club .subtab.max.on{background:#C46BFF}
:root .club .subcard{margin:0;border-top:1px solid var(--k-line)}
:root .club .subcard.plus{border-color:var(--k-acc)}
:root .club .sublead{display:block;margin:8px 0;font-family:var(--k-sans);font-size:16px;font-weight:700;line-height:1.3;opacity:1}
:root .club .subprice{margin:0}
:root .club .subprice s{margin-left:6px;font-size:12px;font-weight:500;opacity:.5}
:root .club .subday{display:block;margin:2px 0 10px;font-family:var(--k-mono);font-size:12px;opacity:.7;font-stretch:87.5%}
:root .club .subdecoy{margin:0 0 10px}
:root .club .subfrom{display:block;margin:0 0 6px;font-size:13px;font-weight:600;opacity:.8}
:root .club .subcard.plus .cnote{color:var(--k-bg);opacity:.7}
:root .club .subterms{margin-top:4px;width:100%}
:root .club .subholder>.cnote{margin:8px 0 0}

/* Подарки плитками: картинка по центру, без отступа под метку, когда её нет. */
:root .club .shopcard.gift .slot-art{justify-content:center;min-height:52px;padding:12px 0 0}
/* Чужая рамка в зуме фото: панель внизу, название и [ПРИМЕРИТЬ]. */
:root .club.photoframe{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;
  gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom, 0px));background:var(--k-bg);
  border-top:1px solid var(--k-line);cursor:default}
:root .club.photoframe .k{min-width:0;font-size:13px;line-height:1.35}
:root .club.photoframe .cbtn{width:auto;flex:none;height:40px;padding:0 12px}
/* Ник и титул «на твоей карточке» в окне титула. */
:root .club .supline{margin:0 0 10px}

/* Правки по визуальному ревью магазина, круг 1 (18.10.2026). */
/* «Сегодня» про первый месяц: ниже уже залитая янтарём карточка Plus,
   поэтому кнопка hero - линией; вместо слова «PLUS» на янтаре - звезда
   линией и «лайки сразу». */
:root .club .shophero2 .cbtn.main.line{background:none;border-color:var(--k-text);color:var(--k-text)}
:root .club .heroplus{display:flex;flex-direction:column;align-items:center;gap:4px;width:64px;color:var(--k-text)}
:root .club .heroplus svg{display:block}
:root .club .heroplus b{font-family:var(--k-mono);font-size:9px;font-weight:500;letter-spacing:.08em;
  text-transform:uppercase;opacity:.7;text-align:center;font-stretch:87.5%}
/* Честная арифметика у Pro и MAX - главный аргумент, а не сноска. */
:root .club .subdecoy{font-family:var(--k-sans);font-size:13px;line-height:1.4;opacity:1;margin:0 0 10px}
/* «Другие сроки» - текстом, без скобок, одной строкой по центру. */
:root .club .subterms{font-size:12px;letter-spacing:.02em;text-transform:none;white-space:nowrap;overflow:hidden;
  text-overflow:ellipsis}
/* Окна Pro и MAX: главная кнопка цветом тарифа, текст тёмный. */
:root .club .clubbox.tier-pro .cbtn.main{background:#7FB3FF;border-color:#7FB3FF}
:root .club .clubbox.tier-max .cbtn.main{background:#C46BFF;border-color:#C46BFF}
:root .club .clubbox .subperks{margin:0 0 12px}
/* Окно рамки: крупная аватарка «сейчас / с рамкой» над карточкой. */
:root .club .cosmbig{display:flex;justify-content:center;gap:28px;margin:4px 0 14px;padding:14px 0 10px;
  background:var(--k-panel);border:1px solid var(--k-line);border-radius:2px}
:root .club .cosmbigc{display:flex;flex-direction:column;align-items:center;gap:10px}
:root .club .cosmbigc .avatar{width:96px;height:96px;font-size:40px}
:root .club .cosmbigc .k{font-family:var(--k-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.6;
  font-stretch:87.5%}
:root .club .cosmbox .cosmpreview{height:44vh;min-height:260px}
/* Превью рамки на плитке: своя аватарка 48 px, кольцо на панели. */
:root .club .shopcard .cosmswatch.frame{display:grid;place-items:center;height:72px;padding:0}
:root .club .shopcard .cosmswatch.frame .avatar{width:48px;height:48px;font-size:22px}
/* Превью появления на плитке: раньше высота схлопывалась в ноль и плитка
   стояла чёрной. Эффект крутится по кругу не чаще раза в 3 с; при
   «меньше движения» - статичный кадр (блок в styles.css). */
:root .club .shopcard .cosmswatch.entryswatch{width:100%;height:64px;background:var(--k-bg);border:1px solid var(--k-line)}
:root .club .shopcard .cosmswatch .cardfx::before,:root .club .shopcard .cosmswatch .cardfx::after,
:root .club .shopcard .cosmswatch .cardfx i{animation-duration:3s !important}
:root .club .k-entry .slot-art{padding:14px 0 0;overflow:hidden}
/* Цвета ника по четыре в ряд: цвет видно и на 70 px, кнопка «ещё» не нужна. */
:root .club .shopgrid.four{grid-template-columns:repeat(4,1fr);gap:6px}
:root .club .shopgrid.four .shopcard{padding:6px;gap:6px}
:root .club .shopgrid.four .slot-art{min-height:40px;padding:8px 0 0}
:root .club .shopgrid.four .cosmswatch.nickswatch{height:40px}
:root .club .shopgrid.four .nickswatch .nick{font-size:14px;padding:0 2px}
:root .club .shopgrid.four .shopname{font-size:11px}
:root .club .shopgrid.four .slot-act{display:none}
:root .club .shopgrid.four .slot-price{font-size:11px}
/* Редкость толщиной светлой рамки читалась как «выбрано»: рамка у всех
   одна, линия 1 px. Группа и цена говорят о редкости сами. */
:root .club .shopcard.r2{border:1px solid var(--k-line);padding:10px}
:root .club .shopcard.r3{border:1px solid var(--k-line);padding:10px}
:root .club .boxtile.mid{border:1px solid var(--k-line);padding:12px 4px}
:root .club .boxtile.big{border:1px solid var(--k-line);padding:12px 4px}
:root .club .shopcard.wide{grid-column:1 / -1}
/* Длинные титулы на плитке в одну строку: плитки в ряду одной высоты. */
:root .club .slot-art .title{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Группы титулов вкладками. */
:root .club .ttabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
:root .club .ttabs .chip{padding:7px 10px}
/* Окно подарка: поле «кому» во всю ширину, свёрнутое «Что», предметы по три. */
:root .club .giftwho input.field{width:100%;box-sizing:border-box}
:root .club .giftwhat{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0 4px;font-size:14px}
:root .club .giftwhat .giftchange{width:auto;height:32px;padding:0;opacity:.7;text-transform:none;font-size:12px}
:root .club .giftgrid{grid-template-columns:repeat(3,1fr)}
:root .club .giftgrid .gprice{font-size:11px}
:root .club .giftpay .cbtn.main:disabled{opacity:.5}

/* Правки по визуальному ревью магазина, круг 2 (18.10.2026). */
/* Окно сроков: цена один раз в кнопке; рубли первой линией, у «выгоднее
   всего» янтарём; «[ЗВЁЗДАМИ · N ★]» второй, без подписи на каждый срок. */
:root .club .pbuyrow .cbtn{margin:0}
:root .club .pbuyrow .cbtn.main{height:48px;background:none;border-color:var(--k-line);color:var(--k-text);
  font-size:13px;font-weight:500}
:root .club .pbuyrow.best .cbtn.main{height:56px;background:var(--k-acc);border-color:var(--k-acc);color:var(--k-bg);
  font-size:14px;font-weight:700}
:root .club .pbuyrow .cbtn:not(.main){height:36px;font-size:11px;opacity:.8}
:root .club .pbuyrow{padding:10px 0}
:root .club .pbuyrow .pbuysub{margin-top:-2px}
/* Плитка розы: строка цены не выталкивает «[ПОДАРИТЬ]» за край плитки. */
:root .club .slot-price{min-width:0;overflow:hidden}
:root .club .slot-act{flex:none}
/* Цвета ника по четыре: метка срока в одну строку, превью ниже метки. */
:root .club .shopgrid.four .slot-tag{padding:2px 5px;font-size:9px;white-space:nowrap}
:root .club .shopgrid.four .slot-art{padding:18px 0 0}
/* В хэллоуинском магазинчике срок уже в кикере раздела - на плитках без метки. */
:root .club .hwshop .hwcard>.slot-tag{display:none}
/* «ЛАЙКИ СРАЗУ» в hero читаемо. */
:root .club .heroplus b{font-size:11px}
/* Окно косметики: между «После оплаты наденется само» и [ЗАКРЫТЬ] 12 px. */
:root .club .cosmafter{margin:0 0 12px}
/* Окно подарка: подписи под клубными кнопками. */
:root .club .giftpay .cnote{margin:8px 0 0}
/* Прокрутка к разделу: заголовок не уезжает под липкую полосу чипов. */
:root .club .sect[data-shop]{scroll-margin-top:52px}
/* Конструктор, раскрытый из плитки: «[СВЕРНУТЬ]» сверху, кнопки оплаты парой. */
:root .club .foldback{width:auto;height:32px;margin:0 0 4px;padding:0}
:root .club .custompay{margin:10px 0 0}
:root .club .custompay .cbtn+.cbtn{margin-top:8px}
/* Рынок: превью косметики на плитке того же формата, что в разделе косметики. */
:root .club .mcell.cosm .slot-art{padding:18px 0 4px 8px}
/* Помочь автору (18.10.2026): вход строкой с баром, страница с машиной
   крупно и баром как у босса: имя слева, сумма справа, заливка акцентом. */
:root .club .authorentry{display:block;width:100%;padding:12px;background:var(--k-panel);border:1px solid var(--k-line);
  border-radius:2px;color:var(--k-text);text-align:left;cursor:pointer}
:root .club .authorentry b{display:block;font-family:var(--k-sans);font-size:15px;font-weight:700;margin-bottom:8px}
:root .club .abar{position:relative;flex:none;height:28px;background:var(--k-bg);border:1px solid var(--k-line);border-radius:2px;overflow:hidden}
:root .club .abar i{position:absolute;left:0;top:0;bottom:0;background:var(--k-acc);display:block}
:root .club .abar span{position:relative;z-index:1;font-family:var(--k-mono);font-size:11px;line-height:26px;font-stretch:87.5%;
  letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
:root .club .abar .abarname{position:absolute;left:10px;right:118px;top:0}
:root .club .abar .abarnum{position:absolute;right:10px;top:0;font-weight:700}
:root .club .abar.big{height:40px;margin:10px 0 6px}
:root .club .abar.big span{font-size:12px;line-height:38px}
:root .club .abar.big .abarname{right:150px}
:root .club .authorcar{flex:none;margin:4px 0 0;border:1px solid var(--k-line);border-radius:2px;overflow:hidden;background:var(--k-panel)}
:root .club .authorcar img{display:block;width:100%;height:auto}
:root .club .achips{flex:none;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:0 0 8px}
:root .club .cbtn.achip{height:44px;padding:0}
:root .club .cbtn.achip.on{background:var(--k-text);border-color:var(--k-text);color:var(--k-bg)}
:root .club .ainput{flex:none;width:100%;height:44px;margin:0 0 10px;padding:0 12px;background:var(--k-bg);border:1px solid var(--k-line);
  border-radius:2px;color:var(--k-text);font-family:var(--k-mono);font-size:14px;outline:none}
:root .club .ainput:focus{border-color:var(--k-text)}
:root .club .apay .cbtn+.cbtn{margin-top:8px}
:root .sect.club .authorentry{margin:0}
:root .club .ainput.anote{height:72px;padding:10px 12px;resize:none;font-family:var(--k-sans);font-size:14px;line-height:1.4}
