/* fun-home.css · 22fun.ing · подключается после fun-tokens.css. Раздел «ж» HOME_SPEC.md: то, что не лечится перекраской переменных —
   первый экран «билет», ленты-ярлыки, кнопки, шапка, подвал, карточки акций с артом. Тайская типографика (интерлиньяж, без прописных и разрядки) — в fun-tokens.css. */

/* ── фон страницы и первый экран ── */
.ff-np136{background:var(--ff-night)}
.ff-np136>.ff-aozdi{padding-top:var(--ff-s5);padding-bottom:var(--ff-s7)}
.ff-aozdi{max-width:var(--ff-wrap)}
.ff-xyjwu{background:var(--ff-night-2)}
.ff-r3gm8,.ff-xyjwu{border-top:0}
.ff-r3gm8,.ff-xyjwu,.ff-bds6x{padding-block:0}
.ff-r3gm8>.ff-aozdi,.ff-xyjwu>.ff-aozdi,.ff-bds6x>.ff-aozdi{padding-block:var(--ff-band-y)}
@media (max-width:899px){.ff-aozdi{padding-inline:var(--ff-gutter)}.ff-np136>.ff-aozdi{padding-top:var(--ff-s4);padding-bottom:var(--ff-s6)}}

/* ── кнопки: золотой скруглённый прямоугольник с «ребром»; не таблетка ── */
html:lang(th) a.ff-k7qmo,html:lang(th) a.ff-1h4ir,html:lang(th) a.ff-v47cg,html:lang(th) a.ff-rcsl6,html:lang(th) a.ff-rcsl6.tw-pale,
html:lang(th) a.ff-1h4ir.tw-pale,html:lang(th) .tw-tray-go,html:lang(th) a.tw-panel-go{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;min-height:var(--ff-btn-h);
  padding:var(--ff-s3) var(--ff-s5);border:0;border-radius:var(--ff-r-pill);background:var(--ff-flame);color:var(--ff-on-flame);
  font:600 var(--ff-fs-btn)/var(--ff-lh-btn) var(--ff-text);white-space:normal;text-align:center;text-decoration:none;box-shadow:var(--ff-sh-btn)}
html:lang(th) a.ff-k7qmo:hover,html:lang(th) a.ff-1h4ir:hover,html:lang(th) a.ff-v47cg:hover,html:lang(th) a.ff-rcsl6:hover,
html:lang(th) .tw-tray-go:hover,html:lang(th) a.tw-panel-go:hover{background:var(--ff-flame-hi);color:var(--ff-on-flame)}
html:lang(th) a.ff-k7qmo:active,html:lang(th) a.ff-1h4ir:active,html:lang(th) a.ff-v47cg:active,html:lang(th) a.ff-rcsl6:active,
html:lang(th) .tw-tray-go:active,html:lang(th) a.tw-panel-go:active{transform:translateY(2px);box-shadow:var(--ff-sh-btn-press)}
html:lang(th) a.ff-6whby,html:lang(th) .tw-ln.ff-oli3m{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:var(--ff-btn-h);
  padding:var(--ff-s3) var(--ff-s5);border:2px solid var(--ff-line-ctl);border-radius:var(--ff-r-pill);background:transparent;color:var(--ff-ink);
  font:600 var(--ff-fs-btn)/var(--ff-lh-btn) var(--ff-text);white-space:normal;text-align:center;text-decoration:none}
html:lang(th) a.ff-6whby:hover,html:lang(th) .tw-ln.ff-oli3m:hover{border-color:var(--ff-flame);color:var(--ff-gold)}
html:lang(th) main a:not([class]),html:lang(th) .tw-floor a:not(.tw-floor-mail){text-decoration:underline;text-underline-offset:.2em}
html:lang(th) main p a:not([class]),html:lang(th) main li a:not([class]){color:var(--ff-link)}

/* ── шапка: логотип оператора 108 × 44, меню простым текстом, одна красная кнопка ── */
.tw-head{background:rgba(var(--ff-night-rgb),.97);border-bottom:1px solid var(--ff-line)}
.tw-head-inner{max-width:var(--ff-wrap);min-height:var(--ff-head-h);padding:0 var(--ff-gutter);gap:var(--ff-s4);box-sizing:border-box}
.tw-logo{width:auto;height:44px}
.tw-bar-nav{background:none;padding:0;margin-left:var(--ff-s5);gap:var(--ff-s2);flex:1 1 auto}
.tw-shelf-tog{font:600 15px/1.5 var(--ff-text);padding:var(--ff-s3) var(--ff-s3);border-radius:0;color:var(--ff-ink-2);box-shadow:inset 0 -2px 0 transparent}
.tw-shelf-tog:hover,.tw-shelf.tw-is-up .tw-shelf-tog,.tw-shelf:focus-within .tw-shelf-tog{background:none;color:var(--ff-ink)}
.tw-shelf.tw-now-on .tw-shelf-tog{box-shadow:inset 0 -2px 0 var(--ff-red);color:var(--ff-ink)}
.tw-shelf-list{background:var(--ff-panel);border:1px solid var(--ff-line-hi);border-radius:var(--ff-r-card);top:calc(100% + 2px)}
.tw-shelf-list a{font:600 15px/1.5 var(--ff-text);color:var(--ff-ink);padding:var(--ff-s3)}
.tw-shelf-list a:hover{background:var(--ff-raise);color:var(--ff-gold)}
html:lang(th) .tw-bar-cta{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-height:40px;box-sizing:border-box;
  padding:var(--ff-s2) var(--ff-s5);background:var(--ff-red);color:#fff;border-radius:var(--ff-r-pill);font:600 16px/1.4 var(--ff-text)}
html:lang(th) .tw-bar-cta:hover{background:var(--ff-red-hi);color:#fff!important}
.tw-bar-cta .tw-cta-full{display:inline}.tw-bar-cta .tw-cta-slim{display:none}
.tw-bar-cta:focus-visible{outline-offset:3px}
@media (min-width:900px) and (max-width:1080px){.tw-bar-nav{display:flex}.tw-bars-tog{display:none}.tw-panel-nav{display:none!important}}
@media (max-width:899px){.tw-bar-nav{display:none}.tw-bars-tog{display:flex}}
.tw-bars-tog{width:44px;height:44px;border-radius:var(--ff-r-pill);background:var(--ff-panel)}
.tw-bars-tog[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.tw-bars-tog[aria-expanded="true"] span:nth-child(2){opacity:0}
.tw-bars-tog[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media (max-width:899px){
  .tw-head-inner{padding:0 var(--ff-gutter);gap:var(--ff-s2)}
  .tw-logo{width:auto;height:34px}
  html:lang(th) .tw-bar-cta{min-height:36px;padding:var(--ff-s1) var(--ff-s4);font-size:15px;margin-left:auto}
  .tw-panel-nav{position:absolute;top:100%;left:0;right:0;height:calc(100dvh - var(--ff-head-h));max-height:none;box-sizing:border-box;background:var(--ff-night);
    padding:var(--ff-s4) var(--ff-gutter) var(--ff-s7);overflow-y:auto;gap:var(--ff-s4);border-top:1px solid var(--ff-line)}
  .tw-panel-shelf summary{pointer-events:none;cursor:default;padding:var(--ff-s2) 0;font:600 14px/1.5 var(--ff-text);color:var(--ff-ink-3)}
  .tw-panel-shelf summary::after{display:none}
  .tw-panel-nav a{margin-left:0;min-height:48px;display:flex;align-items:center;box-sizing:border-box;font:600 17px/1.5 var(--ff-text);color:var(--ff-ink);padding:var(--ff-s2) var(--ff-s3)}
  .tw-panel-nav a:hover{background:var(--ff-raise);color:var(--ff-gold)}
  .tw-panel-nav a.tw-panel-go{margin-top:var(--ff-s2);justify-content:center;color:var(--ff-on-flame);font-size:var(--ff-fs-btn)}
}

/* ── первый экран: «билет с расчётом» ── */
.tw-tk{display:flex;flex-direction:column;gap:var(--ff-s4);min-width:0}
.tw-tk>*{min-width:0}
.tw-tk-seen{order:0;align-self:flex-start;display:inline-flex;align-items:center;gap:var(--ff-s2);padding:var(--ff-s1) var(--ff-s3);border-radius:var(--ff-r-tag);
  background:var(--ff-panel);color:var(--ff-ink-2);font-size:var(--ff-fs-small);line-height:var(--ff-lh-small)}
.tw-tk-seen .ff-ubfns{display:block;width:8px;height:8px;border-radius:var(--ff-r-round);background:var(--ff-ok-hi);box-shadow:none}
html:lang(th) .tw-tk-h1{order:1;margin:var(--ff-s2) 0 0;max-width:min(100%,940px);color:var(--ff-ink)}
.tw-tk-acc{color:var(--ff-gold)}
.tw-tk-lead{order:2;margin:0;max-width:820px;font-size:var(--ff-fs-lead);line-height:var(--ff-lh-lead);color:var(--ff-ink-2)}
.tw-tk-by{order:3;display:flex;align-items:center;gap:var(--ff-s3);min-height:44px;color:var(--ff-ink-2);font-size:var(--ff-fs-small)}
.tw-tk-ticket{order:4;position:relative;display:grid;grid-template-columns:524px minmax(0,1fr) 270px;margin-top:var(--ff-s2);
  background:linear-gradient(100deg,var(--ff-ticket-a),var(--ff-ticket-b));border:1px solid rgba(255,240,128,.22);border-radius:var(--ff-r-ticket);
  box-shadow:var(--ff-sh-ticket)}
.tw-tk-art{display:flex;align-items:center;overflow:hidden;border-radius:var(--ff-r-ticket) 0 0 var(--ff-r-ticket)}
.tw-tk-pic{display:block;width:524px;height:auto;max-width:100%}
.tw-tk-mid,.tw-tk-stub{position:relative;padding:var(--ff-s4) var(--ff-s5);display:flex;flex-direction:column;justify-content:center;gap:var(--ff-s2);min-width:0}
.tw-tk-mid::before,.tw-tk-stub::before{content:"";position:absolute;left:-1px;top:14px;bottom:14px;border-left:2px dashed rgba(255,240,128,.4)}
.tw-tk-mid::after,.tw-tk-stub::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 0 0,var(--ff-night) 12px,transparent 13px),radial-gradient(circle at 0 100%,var(--ff-night) 12px,transparent 13px)}
.tw-tk-stub{background:rgba(var(--ff-night-rgb),.18);border-radius:0 var(--ff-r-ticket) var(--ff-r-ticket) 0;gap:var(--ff-s3)}
.tw-tk-tags{display:flex;flex-wrap:wrap;gap:var(--ff-s2)}
.tw-tk-mid{gap:6px}
.tw-tk-tag{padding:0 var(--ff-s3);border-radius:var(--ff-r-tag);background:var(--ff-cat-new);color:#fff;font:600 var(--ff-fs-tag)/var(--ff-lh-tag) var(--ff-text)}
.tw-tk-tag-0{background:var(--ff-cat-new)}
.tw-tk-tag-1{background:var(--ff-cat-slot)}
.tw-tk-name{margin:0;font:600 16px/1.5 var(--ff-display);color:var(--ff-ink)}
.tw-tk-rows{margin:0;display:flex;flex-direction:column;gap:var(--ff-s1)}
.tw-tk-row{display:flex;align-items:baseline;gap:var(--ff-s2)}
.tw-tk-row dt{flex:1 1 auto;min-width:0;display:flex;align-items:baseline;gap:var(--ff-s2);color:var(--ff-ink);font-size:15px;line-height:1.6;white-space:nowrap}
.tw-tk-row dt::after{content:"";flex:1 1 12px;min-width:12px;border-bottom:2px dotted rgba(255,240,128,.45);transform:translateY(-4px)}
.tw-tk-row dd{margin:0;flex:0 0 auto;font:700 24px/1.35 var(--ff-num);color:var(--ff-gold)}
.tw-tk-total{margin-top:var(--ff-s1);padding-top:var(--ff-s2);border-top:2px solid rgba(255,240,128,.4)}
.tw-tk-total dd{font-size:28px}
.tw-tk-formula{margin:0;color:var(--ff-ink-2);font-size:var(--ff-fs-small);line-height:var(--ff-lh-small)}
.tw-tk-cap{color:var(--ff-ink-2);font-size:var(--ff-fs-small);line-height:var(--ff-lh-small)}
.tw-tk-sum{font:700 var(--ff-fs-num)/var(--ff-lh-num) var(--ff-num);color:var(--ff-gold);white-space:nowrap}
.tw-tk-go,.tw-tk-calc{display:flex;width:100%}
.tw-tk-tnc{order:5;margin:0;color:var(--ff-ink-3);font-size:var(--ff-fs-small);line-height:var(--ff-lh-small)}
.tw-tk-facts{order:6;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--ff-s3)}
.tw-tk-fact{display:flex;flex-direction:column;gap:2px;padding:var(--ff-s3) var(--ff-s4);background:var(--ff-panel);border:1px solid var(--ff-line);border-radius:var(--ff-r-card)}
.tw-tk-fl{color:var(--ff-ink-3);font-size:var(--ff-fs-small);line-height:var(--ff-lh-small)}
.tw-tk-fv{font:700 24px/1.4 var(--ff-num);color:var(--ff-gold)}
@media (max-width:1100px) and (min-width:900px){.tw-tk-ticket{grid-template-columns:400px minmax(0,1fr) 250px}.tw-tk-pic{width:400px}.tw-tk-row dd{font-size:20px}.tw-tk-total dd{font-size:24px}.tw-tk-sum{font-size:30px}.tw-tk-row dt{font-size:14px}}
@media (max-width:899px){
  .tw-tk{gap:var(--ff-s3)}
  .tw-tk-ticket{order:2;grid-template-columns:minmax(0,1fr);margin-top:0;border-radius:var(--ff-r-ticket)}
  .tw-tk-art{border-radius:var(--ff-r-ticket) var(--ff-r-ticket) 0 0}
  .tw-tk-pic{width:100%}
  html:lang(th) .tw-tk-h1{margin-top:0}
  .tw-tk-lead{order:3}.tw-tk-by{order:4}.tw-tk-tnc{order:5}.tw-tk-facts{order:6;grid-template-columns:repeat(2,minmax(0,1fr))}
  .tw-tk-mid,.tw-tk-stub{padding:var(--ff-s3) var(--ff-s4)}
  .tw-tk-mid::before{left:14px;right:14px;top:-1px;bottom:auto;border-left:0;border-top:2px dashed rgba(255,240,128,.4)}
  .tw-tk-mid::after{background:radial-gradient(circle at 0 0,var(--ff-night) 12px,transparent 13px),radial-gradient(circle at 100% 0,var(--ff-night) 12px,transparent 13px)}
  .tw-tk-stub{border-radius:0 0 var(--ff-r-ticket) var(--ff-r-ticket);flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:var(--ff-s1) var(--ff-s2);background:none;padding-top:0}
  .tw-tk-stub::before,.tw-tk-stub::after{display:none}
  .tw-tk-go{order:0;width:100%;margin-bottom:var(--ff-s2)}
  .tw-tk-cap{order:1}.tw-tk-sum{order:2;font-size:20px}.tw-tk-calc{order:3;width:auto;margin-left:auto;min-height:44px;border:0;padding:var(--ff-s1) 0;color:var(--ff-link);text-decoration:underline;text-underline-offset:.25em;font-size:var(--ff-fs-small)}
  .tw-tk-row dt{font-size:15px}.tw-tk-row dd{font-size:22px}.tw-tk-total dd{font-size:26px}
  .tw-tk-name{font-size:16px}
  .tw-tk-fv{font-size:20px}
}

/* ── ленты-ярлыки по продукту вместо чипов-номеров ── */
.tw-ribbon{--tw-cat:var(--ff-red);display:inline-block;padding:0 var(--ff-s5);background:var(--tw-cat);color:#fff;font:600 var(--ff-fs-tag)/1.6 var(--ff-text);
  clip-path:polygon(8% 0,100% 0,92% 100%,0 100%)}
.tw-cat-slot{--tw-cat:var(--ff-cat-slot)}.tw-cat-sport{--tw-cat:var(--ff-cat-sport)}.tw-cat-special{--tw-cat:var(--ff-cat-special)}
.tw-cat-new{--tw-cat:var(--ff-cat-new)}.tw-cat-vip{--tw-cat:var(--ff-cat-vip);color:var(--ff-on-flame)}
.ff-1z7w1:not(.tw-ribbon){color:var(--ff-flame)}
html:lang(th) h2{color:var(--ff-ink)}

/* ── номера шагов: квадрат 36 px, радиус 6 ── */
.ff-qifyh,.ff-vtewk{border-radius:var(--ff-r-tag);border:0;box-shadow:none;background:var(--ff-red)}

/* ── карточки акций: арт оператора сверху целиком (1024 × 371) ── */
.ff-1tk4o.tw-with-art{padding:0;gap:var(--ff-s2);overflow:hidden;border:1px solid var(--ff-line)}
.tw-promo-art{display:block;width:100%;height:auto}
.ff-1tk4o.tw-with-art>*:not(.tw-promo-art){margin-inline:var(--ff-s4)}
.ff-1tk4o.tw-with-art>.ff-lpgkp{margin-bottom:var(--ff-s4)}
.ff-w1xnk{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ff-s4)}
@media (max-width:899px){.ff-w1xnk{grid-template-columns:minmax(0,1fr)}.ff-w1xnk>*{flex:1 1 100%}}
.ff-lpgkp a{width:100%}

/* ── игры: обложки оператора 287 × 200 ── */
.ff-k53gn{aspect-ratio:287/200;object-fit:cover}
.ff-fwdeb.tw-col3{grid-template-columns:repeat(3,minmax(0,1fr))}.ff-fwdeb.tw-col4{grid-template-columns:repeat(4,minmax(0,1fr))}
.ff-fwdeb.tw-col5{grid-template-columns:repeat(5,minmax(0,1fr))}.ff-fwdeb.tw-col6{grid-template-columns:repeat(6,minmax(0,1fr))}
@media (max-width:899px){.ff-fwdeb,.ff-fwdeb.tw-col3,.ff-fwdeb.tw-col4,.ff-fwdeb.tw-col5{display:grid;overflow:visible;grid-template-columns:repeat(2,minmax(0,1fr))}
  .ff-fwdeb>.ff-eum55{flex:none}}
.tw-studio{border-radius:var(--ff-r-tile);background:var(--ff-panel)}
.tw-studio img{max-height:32px;max-width:120px}
html:lang(th) .tw-gloss{border-bottom:0;text-decoration:underline dashed var(--ff-gold);text-underline-offset:.28em;text-decoration-thickness:1.5px}

/* ── VIP: цвета рангов из токенов ── */
.ff-y1vq0,.ff-mb28o{color:var(--ff-gold)}

/* ── подвал ── */
.tw-floor{background:var(--ff-well);border-top:1px solid var(--ff-line)}
.tw-floor-wrap{max-width:var(--ff-wrap);gap:var(--ff-s6)}
.tw-floor .tw-logo{width:auto;height:44px}
.tw-floor-mail{width:auto;height:auto;background:none;border-radius:0;gap:var(--ff-s2);display:inline-flex;align-items:center;color:var(--ff-ink-2);font-size:var(--ff-fs-small);line-height:var(--ff-lh-small)}
.tw-floor-mail span{text-decoration:underline;text-underline-offset:.2em}
.tw-floor-seen::before{content:none}
.tw-floor-cols{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.tw-floor-cap{font:600 14px/1.6 var(--ff-text);color:var(--ff-ink-3)}
.tw-floor-col a{font:500 15px/1.6 var(--ff-text);color:var(--ff-ink)}
.tw-floor-col a:hover{color:var(--ff-gold)}
.tw-floor-care{background:none;padding:0;gap:var(--ff-s4);align-items:center}
.tw-floor-care-title{font:600 16px/1.6 var(--ff-display)}
.tw-floor-care-body p{font-size:var(--ff-fs-small);line-height:var(--ff-lh-small);color:var(--ff-ink-3)}
.tw-floor-age{width:44px;height:44px;font-size:15px}
.tw-floor-tags{display:none}
.tw-floor-strip{border-top:1px solid var(--ff-line);padding-top:var(--ff-s5)}
.tw-floor-pays{gap:var(--ff-s5)}
.tw-floor-pay img{width:auto;height:36px;max-width:120px}
.tw-floor-legal,.tw-floor-copyr{font-size:var(--ff-fs-small);line-height:var(--ff-lh-small);color:var(--ff-ink-3)}
@media (max-width:899px){.tw-floor-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.tw-floor-wrap{padding-bottom:96px}}

/* ── прочее ── */
.tw-tray{border-radius:var(--ff-r-card)}
.tw-tray-bare{justify-content:center;padding:var(--ff-s2)}
.tw-tray-bare .tw-tray-go{width:100%}

/* ══ правки по таблице критика CRITIC_HOME_v1 (13.10.2026) ══ */
/* тайский: интерлиньяж заголовков и крупных сумм не меньше 1.35 */
html:lang(th) :is(.ff-3qbhc,.ff-5z8my,.ff-uha22,.ff-hgtk6,.ff-uull1,.ff-qyp6x,.tw-hd,.tw-tk-name,.tw-tk-sum,.tw-tk-fv){line-height:1.4}
/* тайский не мельче 12.5 px: ярлык категории в карточке акции, подписи, ползунок */
.ff-j74bn{font-size:12.5px}
.ff-z3td1,.ff-htdfg,.ff-hl4qb,.ff-0adfl,.ff-3o6uc,.ff-zjadc{font-size:13px}

/* плавающая кнопка: на ширине от 900 px её нет (кнопка есть в прилипшей шапке), при открытом меню на телефоне — прячется */
@media (min-width:900px){.tw-tray,.tw-tray[hidden]{display:none!important}}
body:has(.tw-bars-tog[aria-expanded="true"]) .tw-tray{display:none!important}

/* общий вертикальный отступ полосы на широком экране — 56 px */
@media (min-width:900px){:root{--ff-band-y:56px}}

/* ── билет: арт на всю ячейку, высота билета задаёт арт (1024 × 371) ── */
@media (min-width:900px){
  .tw-tk-ticket{grid-template-columns:540fr 350fr 222fr}
  .tw-tk-art{position:relative;display:block;align-self:stretch;min-height:0}
  .tw-tk-art::before{content:"";display:block;padding-top:36.23%}
  .tw-tk-pic{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
  .tw-tk-mid,.tw-tk-stub{padding:var(--ff-s2) var(--ff-s4);gap:6px}
  html:lang(th) .tw-tk-stub a.tw-tk-calc{min-height:40px;padding-block:var(--ff-s1)}
  .tw-tk-sum{font-size:30px}
  .tw-tk-head{display:flex;align-items:center;gap:var(--ff-s2);flex-wrap:nowrap;min-width:0}
  .tw-tk-tags{flex:0 0 auto;flex-wrap:nowrap;gap:6px}
  .tw-tk-tag{padding:0 8px;white-space:nowrap}
  .tw-tk-name{flex:1 1 auto;min-width:0;font-size:15px}
  .tw-tk-rows{gap:2px}
  .tw-tk-row dd{font-size:21px}
  .tw-tk-total dd{font-size:25px}
  .tw-tk-row dt{font-size:14px}
  html:lang(th) .tw-tk-stub a.tw-tk-go{min-height:44px;padding-block:var(--ff-s2)}
  .tw-tk-by-gap{min-height:44px}
}
@media (max-width:899px){
  .tw-tk-by-gap{display:none}
  .tw-tk-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ff-s2)}
  .tw-tk-art{display:block}
  .tw-tk-pic{display:block;width:100%;height:auto}
  .tw-tk-calc{order:3;flex:1 1 100%;width:100%;margin:0;min-height:46px;padding:var(--ff-s2) var(--ff-s4);border:2px solid var(--ff-line-ctl);border-radius:var(--ff-r-pill);color:var(--ff-ink);text-decoration:none;justify-content:center}
}
.tw-tk-formula{display:inline}

/* ── нижняя полоса оффера: заголовок и условия слева, кнопка справа ── */
@media (min-width:900px){
  .ff-b5mhd{flex-wrap:nowrap}
  .ff-b5mhd>a{width:auto;flex:0 0 auto;min-width:200px}
  .ff-b5mhd .ff-i8q02{flex:1 1 auto;flex-wrap:nowrap}
}
.ff-rzmk8{padding:10px 14px}

/* ── маршруты: цветные плитки, крупный знак слева ── */
.ff-sqcno{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto 1fr auto;column-gap:var(--ff-s4);align-content:start;border:0;color:#fff}
.ff-sqcno::before{grid-row:1 / 4;grid-column:1;align-self:start;font:700 40px/1.2 var(--ff-display);text-align:center;opacity:.95}
.ff-sqcno>*{grid-column:2}
.ff-sqcno:nth-child(1){background:var(--ff-cat-slot)}.ff-sqcno:nth-child(1)::before{content:"%"}
.ff-sqcno:nth-child(2){background:var(--ff-cat-sport)}.ff-sqcno:nth-child(2)::before{content:"→"}
.ff-sqcno:nth-child(3){background:var(--ff-cat-special)}.ff-sqcno:nth-child(3)::before{content:"↓"}
.ff-sqcno:nth-child(4){background:var(--ff-cat-vip);color:var(--ff-on-flame)}.ff-sqcno:nth-child(4)::before{content:"♠"}
html:lang(th) .ff-sqcno .ff-uull1,.ff-sqcno .ff-vwiwp{color:inherit}
html:lang(th) .ff-sqcno a.ff-oli3m{border-color:currentColor;color:inherit;background:transparent}
html:lang(th) .ff-sqcno a.ff-oli3m:hover{background:rgba(255,255,255,.14);color:inherit;border-color:currentColor}
@media (max-width:899px){.ff-sqcno{grid-template-columns:40px minmax(0,1fr)}.ff-sqcno::before{font-size:32px}}

/* ── калькулятор: итог на всю ширину панели, условия внутри полосы ── */
.ff-kwhgl>.ff-ue9gs:nth-child(3){grid-column:1 / -1}
.ff-kwhgl>.ff-ue9gs:nth-child(3) .ff-hgtk6{font-size:40px;color:var(--ff-gold)}
[data-ff-join]>.ff-aozdi{padding-top:0}
[data-ff-block="B18"]:has(+ [data-ff-join])>.ff-aozdi{padding-bottom:var(--ff-s5)}
[data-ff-join] .ff-ly36k{max-width:none}

/* ── акции: 2 × 2 на всю ширину, одиночный результат фильтра — слева ── */
@media (min-width:900px){
  html:lang(th) .ff-w1xnk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:start;align-items:stretch}
  .ff-1tk4o.tw-with-art>.ff-lpgkp{margin-top:auto}
  html:lang(th) .ff-w1xnk>*{flex:none;min-width:0}
}

/* ── игры: 5 колонок на 1280, 2 на телефоне; обложка не шире 287 px ── */
.ff-k53gn{width:100%;max-width:287px;height:auto;display:block}
@media (min-width:900px){.ff-fwdeb.tw-col5{grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--ff-s3)}}
.tw-studios{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}
.tw-studio{padding:0 10px;min-width:0}
.tw-studio img{max-width:100%}
@media (max-width:899px){.tw-studios{display:grid;overflow:visible;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tw-studio{padding:0 6px}.tw-studio img{max-width:100%}}

/* ── VIP: картинка оператора слева, четыре карточки 2 × 2 справа ── */
.tw-vip-scene{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--ff-s5);align-items:start}
.tw-vip-side{display:flex;flex-direction:column;gap:var(--ff-s3);min-width:0}
.tw-vip-art{display:block;width:100%;max-width:550px;height:auto;border-radius:var(--ff-r-card)}
.tw-vip-scene .ff-aoph3{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:899px){.tw-vip-scene{grid-template-columns:minmax(0,1fr)}.tw-vip-scene .ff-aoph3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.tw-vip-scene .ff-aoph3{grid-template-columns:minmax(0,1fr)}}

/* ── приложение и ввод-вывод: одна полоса из двух колонок ── */
.tw-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--ff-s7) var(--ff-s6);align-items:start}
.tw-duo .ff-1an8q{grid-template-columns:minmax(0,1fr);gap:10px}
.tw-duo .ff-ey4ve{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:var(--ff-s4);row-gap:2px;align-items:start}
.tw-duo .ff-ey4ve .ff-qr34x{grid-row:1 / 3;grid-column:1}
.tw-duo .ff-ey4ve>*:not(.ff-qr34x){grid-column:2;min-width:0}
.tw-duo .ff-buyyk{grid-template-columns:minmax(0,1fr);gap:10px}
.tw-duo .ff-xnk15{position:relative;padding:14px 16px 14px 56px;gap:2px}
.tw-duo .ff-xnk15::before{content:"✓";position:absolute;left:16px;top:14px;width:28px;height:28px;border-radius:50%;background:var(--ff-ok);color:#fff;font:700 15px/28px var(--ff-text);text-align:center}
@media (max-width:899px){.tw-duo{grid-template-columns:minmax(0,1fr)}}

/* ── подвал: пять колонок ── */
@media (min-width:981px){
  .tw-floor-head{grid-template-columns:minmax(220px,260px) 1fr;gap:40px}
  .tw-floor-cols{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
}

/* логотип в нижней полосе: свой размер, не сжимается; значки плиток карты сайта на телефоне и подписи — не мельче 12.5 px */
.ff-rzmk8 .tw-logo{flex:none;width:auto;min-width:54px;max-width:none}
@media (max-width:600px){.ff-22fra .ff-hl4qb{font-size:13px}.ff-22fra .ff-0t60c,.ff-22fra .ff-zp3dd{font-size:14px}}

/* ── шапка: вход (контур) + «เล่นเลย» (основная); логотип не уже 96 px ── */
.tw-logo{min-width:96px;flex:none}
.tw-head-start{flex:none}
.tw-bar-nav{flex:1 1 auto}
html:lang(th) .tw-bar-alt{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-height:40px;box-sizing:border-box;flex:none;white-space:nowrap;
  padding:var(--ff-s2) var(--ff-s5);background:transparent;color:var(--ff-ink);border:2px solid var(--ff-line-ctl);border-radius:var(--ff-r-pill);font:600 16px/1.4 var(--ff-text);text-decoration:none}
html:lang(th) .tw-bar-alt:hover{background:var(--ff-panel);color:var(--ff-ink);border-color:var(--ff-ink-3)}
html:lang(th) .tw-bar-alt:focus-visible{outline-offset:3px}
html:lang(th) .tw-bar-alt + .tw-bar-cta{margin-left:0}
html:lang(th) .tw-bar-cta{flex:none;white-space:nowrap}
@media (max-width:899px){
  .tw-logo{width:auto;height:40px;min-width:96px}
  .tw-head-inner{gap:var(--ff-s2)}
  html:lang(th) .tw-bar-alt{min-height:40px;padding:0 var(--ff-s3);font-size:14px}
  html:lang(th) .tw-bar-cta{min-height:40px;padding:0 var(--ff-s3);font-size:14px}
  .tw-bars-tog{flex:none}
}
@media (max-width:359px){html:lang(th) .tw-bar-alt,html:lang(th) .tw-bar-cta{padding:0 var(--ff-s2);font-size:13px}.tw-head-inner{padding:0 12px}}

/* ── плашка автора: настоящая и заглушка стоят на одном месте; кружок без фото у заглушки ── */
.tw-tk-by .tw-face-pic{width:32px;height:32px;font-size:13px;border-width:1px}
.tw-tk-by .tw-face-photo{object-fit:cover;display:block}
.tw-tk-by .tw-face-empty{border-style:dashed}
.tw-author-stub{opacity:.85}
@media (min-width:900px){
  .tw-tk-by{min-height:32px;margin-top:calc(-1 * var(--ff-s1))}
  .tw-tk-ticket{margin-top:0}
}
@media (max-width:899px){.tw-tk-by{min-height:44px}}

/* --- правки по второму проходу дизайн-критика (13.10.2026) --- */
/* 2: студии на /games/ — три колонки, компактная кнопка */
@media (min-width:1000px){#studio-grid .tw-rows{grid-template-columns:repeat(3,minmax(0,1fr))}}
#studio-grid .ff-lpgkp a{width:auto;min-width:0;padding-left:22px;padding-right:22px}
#studio-grid .ff-lpgkp{display:flex;justify-content:flex-start}
/* 4: таблицы акций на телефоне прокручиваются внутри себя, заголовки не рвутся */
@media (max-width:600px){#promos table,#login-challenge table{min-width:560px}#promos th,#login-challenge th{white-space:nowrap}}
/* 5: баннеры акций не шире своего файла */
main img[src*="/promo-"]{max-width:min(100%,1024px);height:auto}
/* 6: мелкие подписи и межстрочный интервал чисел */
main th{font-size:13px}
.tw-dial-from,.tw-rubric-from,.ff-rj19v,.ff-rx3id,.ff-lxav8,.ff-aohur{font-size:13px}
.tw-stat-value{line-height:1.35}
.tw-stat dt,.tw-stats dt{font-size:13px}
/* 10: кружок заглушки автора заметнее */
.tw-author-stub .tw-face-empty{border-color:rgb(140,110,112)}
