@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../assets/fonts/inter-400.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../assets/fonts/inter-600.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/inter-700.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../assets/fonts/inter-ext-400.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../assets/fonts/inter-ext-700.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{
  --bg:#ffffff;--bg2:#f6f7fb;--card:#fff;--line:#e5e9f2;--text:#0f172a;--muted:#556274;
  --acc:#1a5cff;--acc-hover:#0d47e0;--green:#087443;--green-hover:#065f37;
  --shadow:0 4px 20px rgba(15,23,42,.06);--shadow-lg:0 12px 40px rgba(15,23,42,.1);
  --r:14px;--max:1080px;--header-h:64px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:16px/1.65 Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}
a{color:var(--acc);text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:var(--max);margin:0 auto;padding:0 1.25rem}

/* Header */
header.site{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(15,23,42,.03)}
header.site .wrap{display:flex;align-items:center;gap:.65rem;min-height:var(--header-h);flex-wrap:nowrap;position:relative}
.logo{display:flex;align-items:center;gap:.45rem;font-weight:700;color:var(--text);letter-spacing:-.01em;font-size:1.1rem}
.logo img{display:block}
nav.main{display:flex;flex-wrap:wrap;align-items:center;gap:0 .25rem;flex:1;min-width:0}
nav.main a{color:var(--muted);font-size:.92rem;font-weight:500;padding:0 .45rem;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}
nav.main a:hover,nav.main a[aria-current]{color:var(--acc);text-decoration:none}
.hdr-cta{display:inline-flex;align-items:center;gap:.35rem;background:var(--acc);color:#fff!important;font-weight:700;font-size:.9rem;padding:.55rem 1rem;border-radius:999px;min-height:44px;box-shadow:0 4px 14px rgba(26,92,255,.28);text-decoration:none!important;white-space:nowrap}
.hdr-cta:hover{background:var(--acc-hover);filter:none}
.hdr-cta svg{width:16px;height:16px}
.hdr-cta--in-nav{display:none}
.nav-toggle{display:none}
.langs{position:relative;margin-left:auto}
.langs summary{cursor:pointer;list-style:none;color:var(--muted);font-size:.85rem;padding:.4rem .7rem;border:1px solid var(--line);border-radius:999px;background:var(--bg2);font-weight:500}
.langs summary::-webkit-details-marker{display:none}
.langs[open] summary{color:var(--acc);border-color:var(--acc)}
.langs div{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:.45rem;min-width:12rem;display:flex;flex-direction:column;gap:.1rem;box-shadow:var(--shadow-lg)}
.langs a{padding:.4rem .6rem;border-radius:8px;color:var(--text);font-size:.9rem}
.langs a:hover,.langs a[aria-current]{background:var(--bg2);color:var(--acc);text-decoration:none}
.langbar{background:#eef3ff;color:var(--text);padding:.6rem 1rem;text-align:center;font-size:.92rem;border-bottom:1px solid #d6e0ff}
.langbar a{font-weight:700}.langbar button{margin-left:.6rem;background:transparent;border:0;color:var(--muted);font-size:1.2rem;cursor:pointer}

/* Hero */
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:2rem;align-items:center;padding:2.2rem 0 1.5rem}
.hero__copy h1{font-size:clamp(1.7rem,4vw,2.45rem);line-height:1.18;margin:0 0 .85rem;letter-spacing:-.02em}
.hero__lead{color:var(--muted);font-size:1.05rem;margin:0 0 1.35rem;max-width:36rem}
.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-bottom:1.1rem}
.hero__copy .byline{margin:0 0 .75rem}.byline{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .55rem;margin:0 0 .85rem;padding:0;font-size:.88rem;color:var(--muted);line-height:1.45;border:0;background:transparent;box-shadow:none}
.byline strong{color:var(--text);font-weight:600}
.byline__role{color:var(--muted)}
.byline__note{color:var(--muted)}
.byline time{color:var(--muted)}



@media(max-width:860px){.hero{grid-template-columns:1fr;padding-top:1.4rem}}

/* Buttons */
.btn,.btn-secondary,.btn-green{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:48px;padding:.75rem 1.35rem;border-radius:999px;font-weight:700;font-size:1rem;text-decoration:none!important;border:0;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:0 4px 16px rgba(26,92,255,.22)}
.btn{background:var(--acc);color:#fff!important}
.btn:hover{background:var(--acc-hover);transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.btn:focus-visible,.btn-secondary:focus-visible,.btn-green:focus-visible,.promo-chip:focus-visible,.hdr-cta:focus-visible{outline:3px solid #93b4ff;outline-offset:2px}
.btn-secondary{background:#fff;color:var(--text)!important;border:1.5px solid var(--line);box-shadow:var(--shadow)}
.btn-secondary:hover{border-color:var(--acc);color:var(--acc)!important}
.btn-green{background:var(--green);color:#fff!important;box-shadow:0 4px 16px rgba(18,183,106,.28)}
.btn-green:hover{background:var(--green-hover);transform:translateY(-1px)}
.btn svg,.btn-secondary svg,.btn-green svg{width:18px;height:18px;flex:0 0 auto}
.cta{margin:1.5rem 0}

/* Promo chip */
.promo-row{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;margin:1rem 0 1.4rem}
.promo-chip{display:inline-flex;align-items:center;gap:.5rem;background:#fff;border:1.5px dashed var(--acc);border-radius:12px;padding:.55rem .9rem;cursor:pointer;font:inherit;min-height:48px;box-shadow:var(--shadow);color:var(--text)}
.promo-chip:hover{background:#f5f8ff;border-style:solid}
.promo-chip code{font:700 1.1rem/1 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.08em;color:var(--acc)}
.promo-chip__hint{font-size:.78rem;color:var(--muted);font-weight:600}
.promo-aside{background:linear-gradient(135deg,#f5f8ff,#eefbf4);border:1px solid #d6e4ff;border-radius:var(--r);padding:1.15rem 1.25rem;margin:1.25rem 0;box-shadow:var(--shadow)}
.promo-aside strong{display:block;margin-bottom:.55rem;font-size:1.05rem}
.toast{position:fixed;left:50%;bottom:5.5rem;transform:translateX(-50%) translateY(12px);background:var(--text);color:#fff;padding:.65rem 1.1rem;border-radius:999px;font-weight:600;font-size:.92rem;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:60;box-shadow:var(--shadow-lg)}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* Content */
.bc{font-size:.85rem;color:var(--muted);margin:1.15rem 0 .55rem}.bc a{color:var(--muted)}.bc a:hover{color:var(--acc)}
article{padding-bottom:3.5rem}
h1{font-size:clamp(1.55rem,3.6vw,2.15rem);line-height:1.22;margin:.35rem 0 1rem;letter-spacing:-.015em}
h2{font-size:1.28rem;margin:2.1rem 0 .7rem;color:var(--text);letter-spacing:-.01em}
h3{font-size:1.05rem;margin:0 0 .35rem}
p{margin:0 0 .95rem}ul{margin:0 0 1rem;padding-left:1.2rem}li{margin:.28rem 0}
.upd{font-size:.85rem;color:var(--muted);margin-bottom:1rem}
.muted{color:var(--muted)}
.author-box{display:none}/* replaced by .byline */
.toc{background:var(--bg2);border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.15rem;margin:1.3rem 0 1.7rem;font-size:.92rem}
.toc strong{display:block;margin-bottom:.45rem}.toc ol{margin:0;padding-left:1.2rem}.toc a{color:var(--muted)}.toc a:hover{color:var(--acc)}

/* Tables */
.facts{width:100%;border-collapse:collapse;margin:1rem 0 1.5rem;font-size:.95rem;background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.facts th,.facts td{padding:.65rem .85rem;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.facts th{width:36%;color:var(--muted);font-weight:600;background:#fafbfe}
.facts tr:nth-child(even) td{background:#fafbfe}
.facts tr:last-child th,.facts tr:last-child td{border-bottom:0}
@media(max-width:640px){.facts{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.facts th{position:sticky;left:0;z-index:1;box-shadow:2px 0 0 var(--line)}}

/* Cards */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin:1.1rem 0 1.6rem}@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.cards{grid-template-columns:1fr}}
.card{display:flex;flex-direction:column;gap:.35rem;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:0;overflow:hidden;color:var(--text);text-decoration:none;box-shadow:var(--shadow);transition:transform .18s,box-shadow .18s,border-color .18s}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:#c9d7ff;text-decoration:none}
.card__img{aspect-ratio:4/3;object-fit:cover;width:100%;background:var(--bg2)}
.card__body{padding:.85rem 1rem 1rem;display:flex;flex-direction:column;gap:.25rem;flex:1}
.card__media{display:block;line-height:0;color:inherit;text-decoration:none}
.card__title{color:inherit;text-decoration:none}.card__title:hover{text-decoration:none;color:var(--acc)}
.card strong{color:var(--text);font-size:1rem}
.card__h{margin:0 0 .2rem;font-size:1rem;line-height:1.35;font-weight:700}.card__h a{color:var(--text)}
.card span{color:var(--muted);font-size:.85rem}
.card__actions{display:flex;gap:.5rem;margin-top:.55rem;flex-wrap:wrap}
.card__actions .btn,.card__actions .btn-secondary{min-height:44px;padding:.5rem .95rem;font-size:.88rem}

/* FAQ details */
.faq-list{margin:1rem 0 1.5rem}
details.faq{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:0;margin:.55rem 0;box-shadow:var(--shadow);overflow:hidden}
details.faq summary{cursor:pointer;list-style:none;padding:.95rem 1.1rem;font-weight:700;display:flex;justify-content:space-between;align-items:center;gap:1rem}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";color:var(--acc);font-size:1.25rem;font-weight:700}
details.faq[open] summary::after{content:"–"}
details.faq .faq__body{padding:0 1.1rem 1rem;color:var(--muted)}
details.faq[open] summary{border-bottom:1px solid var(--line);background:var(--bg2)}

.related ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.55rem}
.related ul a{display:inline-block;padding:.45rem .85rem;background:var(--bg2);border:1px solid var(--line);border-radius:999px;color:var(--text);font-size:.9rem;font-weight:500}
.related ul a:hover{border-color:var(--acc);color:var(--acc);text-decoration:none}










/* Figure */
figure.hero-fig{margin:1.2rem 0 1.5rem;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:var(--bg2)}
figure.hero-fig img{width:100%;height:auto}
figure.hero-fig figcaption{padding:.65rem 1rem;font-size:.85rem;color:var(--muted);background:#fff;border-top:1px solid var(--line)}

/* Footer */
footer.site{border-top:1px solid var(--line);padding:2rem 0 6.5rem;color:var(--muted);font-size:.9rem;margin-top:1.5rem;background:var(--bg2)}
footer.site .age{color:#b45309;font-weight:600}
.foot-links{margin:.9rem 0;display:flex;flex-wrap:wrap;gap:.4rem .9rem}

/* Mobile sticky CTA bar */
.mbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:.65rem .9rem calc(.65rem + env(safe-area-inset-bottom));box-shadow:0 -8px 30px rgba(15,23,42,.08)}
.mbar .wrap{display:flex;gap:.55rem;align-items:center;max-width:var(--max)}
.mbar .promo-chip{flex:1;min-width:0;justify-content:center}
.mbar .btn{flex:0 0 auto;padding:.65rem 1.1rem}
@media(max-width:820px){
  .mbar{display:block}
  .langs{margin-left:auto}
  .hdr-cta--desk{display:none}
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;background:var(--bg2);cursor:pointer;padding:0;flex:0 0 auto}
  .nav-toggle__box{display:flex;flex-direction:column;gap:5px;width:18px}
  .nav-toggle__box span{display:block;height:2px;background:var(--text);border-radius:1px;transition:transform .2s,opacity .2s}
  header.site.is-open .nav-toggle__box span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  header.site.is-open .nav-toggle__box span:nth-child(2){opacity:0}
  header.site.is-open .nav-toggle__box span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  nav.main{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;flex:none;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow-lg);padding:.55rem 1.25rem 1rem;z-index:45}
  header.site.is-open nav.main{display:flex}
  nav.main a{justify-content:flex-start;padding:.7rem 0;border-bottom:1px solid var(--line);font-size:1rem}
  nav.main a:last-child{border-bottom:0}
  .hdr-cta--in-nav{display:inline-flex!important;margin-top:.65rem;justify-content:center;width:100%;border-radius:12px}
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
}
@media(min-width:821px){
  .nav-toggle{display:none!important}
  .hdr-cta--in-nav{display:none!important}
}
@media(min-width:761px){footer.site{padding-bottom:2.4rem}}


/* Hero media frame + game info overlay */
.hero__frame{position:relative;border-radius:16px;overflow:hidden}
.hero__frame img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.hero__media{border-radius:16px;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--line);background:var(--bg2);margin:0}
.hero__cap{display:block;font-size:.78rem;color:var(--muted);margin:0;padding:8px 12px;line-height:1.35;background:#fff;border-top:1px solid var(--line)}
.game-info{position:static;display:flex;flex-wrap:wrap;gap:.25rem 1.1rem;margin:0;padding:.55rem .8rem;background:#fafbfe;border-top:1px solid var(--line);font-size:.8rem;line-height:1.3}
.game-info div{display:flex;align-items:baseline;gap:.35rem}
.game-info span{color:var(--muted);font-weight:500;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}
.game-info strong{color:var(--text);font-size:.85rem;font-weight:700}
/* Card hover zoom */
.card__media{overflow:hidden}
.card__img{transition:transform .35s ease}
.card:hover .card__img{transform:scale(1.05)}

/* Related cards */
.related--cards h2{margin:1.75rem 0 .85rem;font-size:1.25rem}
.rcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;margin:0 0 1.5rem}
.rcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;color:var(--text);text-decoration:none;box-shadow:var(--shadow);transition:border-color .2s,transform .2s}
.rcard:hover{border-color:var(--acc);text-decoration:none;transform:translateY(-2px)}
.rcard__img{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--bg2)}
.rcard__t{display:block;padding:.55rem .7rem;font-size:.88rem;font-weight:600;line-height:1.35}

/* Trust / E-E-A-T strip */
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin:1.75rem 0 1rem;padding:1rem 1.1rem;background:var(--bg2);border:1px solid var(--line);border-radius:var(--r);font-size:.86rem}
.trust__item{display:flex;flex-direction:column;gap:.2rem;min-width:0}
.trust__item span{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.trust__item strong,.trust__item time,.trust__item a{color:var(--text);font-weight:600;line-height:1.35}
@media(max-width:760px){.trust{grid-template-columns:1fr 1fr}}

/* How-to */
.howto{margin:1.5rem 0 1.25rem;padding:1.1rem 1.2rem;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}
.howto h2{margin:0 0 .75rem;font-size:1.2rem}
.howto__list{margin:0;padding:0;list-style:none;counter-reset:ht;display:grid;gap:.65rem}
.howto__step{counter-increment:ht;display:grid;grid-template-columns:auto 1fr;gap:.35rem .75rem;align-items:start}
.howto__step::before{content:counter(ht);width:1.6rem;height:1.6rem;border-radius:999px;background:var(--acc);color:#fff;font-size:.8rem;font-weight:700;display:flex;align-items:center;justify-content:center;grid-row:1/3}
.howto__step strong{font-size:.95rem}
.howto__step span{grid-column:2;color:var(--muted);font-size:.9rem;line-height:1.45}

/* Verdict */
.verdict{margin:1.25rem 0;padding:1rem 1.15rem;border-left:3px solid var(--acc);background:#f8faff;border-radius:0 var(--r) var(--r) 0}
.verdict h2{margin:0 0 .4rem;font-size:1.05rem}
.verdict p{margin:0;color:var(--muted);font-size:.95rem}

.facts-note{margin:-.75rem 0 1.25rem;font-size:.82rem;color:var(--muted)}

/* Tap targets >= 44px */
.langs summary{min-height:44px;display:flex;align-items:center}
.langs a{min-height:44px;display:flex;align-items:center}
.langbar button{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:520px){.rcards{grid-template-columns:1fr 1fr}.rcards .rcard:last-child:nth-child(odd){grid-column:1/-1}.rcards .rcard:last-child:nth-child(odd) .rcard__img{aspect-ratio:32/9}}

/* Author avatar + byline */
.avatar{display:inline-grid;place-items:center;flex:none;border-radius:50%;background:linear-gradient(135deg,#1a5cff 0%,#7a3cff 100%);color:#fff;font-weight:800;line-height:1;box-shadow:0 2px 8px rgba(26,92,255,.25);user-select:none}
.avatar--sm{width:26px;height:26px;font-size:.8rem;align-self:center}
.avatar--lg{width:96px;height:96px;font-size:2.6rem}
.byline{align-items:center}.byline__author{font-weight:600}
.author-card{display:flex;align-items:center;gap:1.1rem;margin:1rem 0 1.4rem;padding:1.1rem 1.2rem;background:var(--bg2);border:1px solid var(--line);border-radius:var(--r)}
.author-card__name{margin:0;font-size:1.25rem;font-weight:700;color:var(--text)}.author-card__role{margin:.15rem 0 0;color:var(--muted)}
/* Contacts */
.contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0}
.contact-card{display:flex;gap:.9rem;align-items:center;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:var(--r);background:#fff;box-shadow:var(--shadow);color:var(--text);text-decoration:none;min-height:44px}
.contact-card:hover{border-color:var(--acc);text-decoration:none}
.contact-card__ico{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#1a5cff,#7a3cff);color:#fff;font-size:1.2rem;font-weight:700;flex:none}
.contact-card strong{display:block}.contact-card span span{display:block;color:var(--muted);font-size:.92rem}.contact-card code{font-size:.85rem;color:var(--acc)}
.note-box{padding:.9rem 1.1rem;border-radius:var(--r);background:#fff8e6;border:1px solid #f3dfa8;color:#5c4400}
@media(max-width:700px){.contact-cards{grid-template-columns:1fr}}
/* Comments */
.comments{margin:2.2rem 0 1rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.comments__lead{color:var(--muted);margin-top:-.3rem}
.cform{display:grid;gap:.9rem;padding:1.2rem;border:1px solid var(--line);border-radius:var(--r);background:var(--bg2)}
.cform__row label,.cform__stars legend{display:block;font-weight:600;margin-bottom:.35rem;color:var(--text)}
.cform input[type=text],.cform textarea{width:100%;padding:.7rem .8rem;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff;color:var(--text);min-height:44px}
.cform input[type=text]:focus,.cform textarea:focus{outline:2px solid var(--acc);outline-offset:1px;border-color:var(--acc)}
.cform__stars{border:0;margin:0;padding:0}
.stars-in{display:inline-flex;flex-direction:row-reverse;gap:.15rem}
.stars-in input{position:absolute;opacity:0;width:1px;height:1px}
.stars-in label{display:grid;place-items:center;width:44px;height:44px;cursor:pointer;font-size:1.9rem;line-height:1;color:#c9d1de}
.stars-in label::before{content:"★"}
.stars-in label:hover,.stars-in label:hover~label,.stars-in input:checked~label{color:#f0a020}
.stars-in input:focus-visible+label{outline:2px solid var(--acc);border-radius:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cform__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cform__note{margin:0;font-size:.86rem;color:var(--muted)}
.cform .btn{justify-self:start;border:0;cursor:pointer}
.cform .btn[disabled]{opacity:.6;cursor:wait}
.cform__msg{margin:0;font-weight:600}.cform__msg:empty{display:none}.cform__msg.is-ok{color:#087443}.cform__msg.is-bad,.clist__empty.is-bad{color:#b42318}
.clist{margin-top:1.2rem;display:grid;gap:.8rem}
.clist__empty{margin:0;padding:1.2rem;text-align:center;border:1px dashed var(--line);border-radius:var(--r);color:var(--muted)}
.cmt{padding:1rem 1.1rem;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.cmt__head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .7rem}.cmt__stars{color:#f0a020;letter-spacing:.06em}.cmt__date{color:var(--muted);font-size:.86rem}
.cmt__text{margin:.55rem 0 0;overflow-wrap:anywhere}


/* Square promo heroes (home / app), full creative, never cropped */
.hero--square{grid-template-columns:1.05fr minmax(280px,440px);gap:2.25rem;align-items:center}
.hero--square .hero__media{background:transparent;border:0;box-shadow:none;overflow:visible}
.hero--square .hero__frame{border-radius:20px;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--line);background:var(--bg2);aspect-ratio:1/1;max-width:440px;margin:0 auto;width:100%}
.hero--square .hero__frame img{width:100%;height:100%;aspect-ratio:1/1;object-fit:contain;object-position:center;display:block}
.hero--square .hero__frame--link{display:block;transition:transform .2s ease,box-shadow .2s ease}
.hero--square .hero__frame--link:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(15,23,42,.16)}
.hero--square .hero__cap{border:0;background:transparent;padding:8px 4px 0;text-align:center}
@media(max-width:860px){
  .hero--square{grid-template-columns:1fr;gap:1.25rem}
  .hero--square .hero__media{order:-1;max-width:min(100%,360px);margin:0 auto}
  .hero--square .hero__frame{max-width:min(100%,360px)}
}
@media(max-width:480px){
  .hero--square .hero__media{max-width:min(100%,300px)}
  .hero--square .hero__frame{max-width:min(100%,300px);border-radius:16px}
}


/* In-article square SLOTMAPA creatives (aviator / plinko / aviamasters) */
.inline-promo{margin:1.5rem auto;max-width:560px;text-align:center}
.inline-promo__link{display:block;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--line);background:var(--bg2);transition:transform .2s ease,box-shadow .2s ease}
.inline-promo__link:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(15,23,42,.16)}
.inline-promo__link img{width:100%;height:auto;object-fit:contain;object-position:center;display:block;vertical-align:middle}
.inline-promo__cap{display:block;font-size:.8rem;color:var(--muted);margin:.55rem 0 0;line-height:1.35;padding:0 .25rem}
@media(max-width:600px){
  .inline-promo{max-width:100%;margin:1.15rem 0}
  .inline-promo__link{border-radius:14px}
}


/* Sticky bottom welcome banner (JS-injected after 5s), compact, fixed to viewport */
.wbanner{position:fixed;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));z-index:60;
  width:min(calc(var(--max) - 2.5rem + 96px), calc(100% - 24px));transform:translate(-50%,140%);opacity:0;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .3s ease}
.wbanner--in{transform:translate(-50%,0);opacity:1}
.wbanner__link{display:flex;align-items:center;gap:14px;height:72px;padding:0 64px 0 20px;border-radius:16px;overflow:hidden;position:relative;
  background:radial-gradient(120% 160% at 100% 50%,#24407a 0,#0d1a33 45%,#081022 100%);color:#fff;text-decoration:none;
  box-shadow:0 10px 30px rgba(15,23,42,.28),0 2px 6px rgba(15,23,42,.18);border:1px solid rgba(255,255,255,.1)}
.wbanner__link:hover{text-decoration:none;color:#fff}
.wb__logo{font:800 26px/1 Inter,system-ui,sans-serif;letter-spacing:-.02em;font-style:italic}
.wb__claim{font:700 12px/1.15 Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.04em;max-width:96px;padding-left:12px;border-left:1px solid rgba(255,255,255,.22)}
.wb__amt{font:800 28px/1 Inter,system-ui,sans-serif;white-space:nowrap;color:#ffd166}
.wb__amt small{font-size:16px;color:#fff;font-weight:700}
.wb__code{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin-left:auto}
.wb__code small{font:600 10px/1 Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.75)}
.wb__code b{background:#fff;color:#0d1a33;font:800 14px/1 Inter,system-ui,sans-serif;letter-spacing:.08em;padding:7px 12px;border-radius:8px}
.wb__777{font:900 30px/1 Georgia,serif;letter-spacing:-.02em;color:#f5c542;text-shadow:0 2px 0 #9a6b00,0 0 14px rgba(255,200,60,.45)}
.wbanner__close{position:absolute;top:50%;right:12px;transform:translateY(-50%);width:36px;height:36px;border:0;border-radius:999px;
  background:rgba(255,255,255,.16);color:#fff;font-size:22px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.wbanner__close:hover,.wbanner__close:focus-visible{background:rgba(255,255,255,.3);outline:2px solid #fff;outline-offset:2px}
body.wb-open{padding-bottom:calc(72px + 24px + env(safe-area-inset-bottom)) !important}
body.wb-open .mbar{display:none !important}
@media(max-width:760px){.wb__777{display:none}}
@media(max-width:640px){
  .wbanner{width:calc(100% - 16px);bottom:calc(8px + env(safe-area-inset-bottom))}
  .wbanner__link{height:64px;gap:10px;padding:0 52px 0 14px;border-radius:14px}
  .wb__logo{font-size:20px}.wb__claim{display:none}
  .wb__amt{font-size:22px}.wb__amt small{font-size:13px}
  .wb__code b{font-size:12px;padding:6px 9px}
  .wbanner__close{right:8px;width:36px;height:36px}
  body.wb-open{padding-bottom:calc(64px + 16px + env(safe-area-inset-bottom)) !important}
}
@media(max-width:360px){.wb__code small{display:none}}
@media(prefers-reduced-motion:reduce){.wbanner{transition:none}}

.inline-promo--wide{max-width:640px}


/* in-article slot card (same look as hero figure) */
figure.slot-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);padding:0}
figure.slot-card .inline-promo__link{display:block;border-radius:0}
figure.slot-card .inline-promo__link img{display:block;width:100%;height:auto;border-radius:0}
.game-info--v div::before{content:attr(data-l);color:var(--muted);font-weight:500;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}
.game-info--v div::after{content:attr(data-v);color:var(--text);font-size:.85rem;font-weight:700}
figure.slot-card .inline-promo__cap{margin:0;padding:.65rem 1rem;font-size:.85rem;color:var(--muted);background:#fff;border-top:1px solid var(--line);text-align:left}
.hero__code{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.75rem 0 0;font-size:.9rem;font-weight:600;color:var(--muted)}
.promo-chip--sm{min-height:44px;padding:.4rem .75rem;box-shadow:none}
.promo-chip--sm code{font-size:1rem}

/* in-article slot card: centered in text column, hero-card look */
figure.inline-promo.slot-card{display:block;margin:1.75rem auto;max-width:600px;width:100%;text-align:left;border-radius:16px}
figure.slot-card .inline-promo__link{box-shadow:none;border:0;border-radius:0;background:var(--bg2)}
figure.slot-card .inline-promo__link:hover{transform:none;box-shadow:none}

figure.slot-card .game-info--v{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;padding:.6rem 1rem}
figure.slot-card .game-info--v div{display:flex;align-items:baseline;gap:.35rem}
@media(max-width:600px){figure.inline-promo.slot-card{margin:1.25rem auto;border-radius:14px}}
/* comments list unavailable: neutral, not alarming */
.clist__empty.is-bad{color:var(--muted);font-weight:500;border-style:solid;background:var(--bg2)}
.apk-note{margin:.6rem 0 0;font-size:.9rem;color:var(--muted,#5b6475)}
.b500{margin:.8rem 0 0}.btn-b500{display:inline-flex;align-items:center;justify-content:center;min-height:48px;max-width:100%;white-space:normal;text-align:center;font-weight:800;font-size:1.05rem;padding:.7rem 1.3rem;background:linear-gradient(135deg,#ff8a00,#ff3d6e);color:#fff;border:0;box-shadow:0 6px 18px rgba(255,61,110,.3)}
@media (max-width:420px){.btn-b500{font-size:.94rem;padding:.7rem .9rem;letter-spacing:-.01em}}
/* Promotions & tournaments */
.pgrid__h{margin-top:1rem}
.pgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1rem 0 1.5rem}
@media (max-width:1100px){.pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.pgrid{grid-template-columns:1fr}}
.pcard{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow,0 2px 10px rgba(0,0,0,.06))}
.pcard__media{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background:#1a1030;overflow:hidden}.pcard__media img{width:100%;height:100%;object-fit:cover;display:block}
.pcard__media svg{width:38%;height:auto}
.pcard__body{display:flex;flex-direction:column;gap:.45rem;padding:.9rem 1rem 1rem;flex:1}
.pcard__badge{align-self:flex-start;font-size:.78rem;font-weight:700;letter-spacing:.02em;padding:.2rem .6rem;border-radius:999px;background:#15803d;color:#fff}
.pcard__badge.is-ended{background:#6b7280}
.pcard__title{margin:0;font-size:1.12rem}
.pcard__title a{color:inherit}
.pcard__desc{margin:0;font-size:.92rem;color:var(--muted)}
.pcard__facts{display:grid;grid-template-columns:1fr;gap:.2rem;margin:.2rem 0 0;font-size:.88rem}
.pcard__facts div{display:flex;justify-content:space-between;gap:.5rem;border-bottom:1px dashed var(--line);padding:.15rem 0}
.pcard__facts dt{color:var(--muted)}.pcard__facts dd{margin:0;font-weight:600}
.pcard__actions{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:auto 0 0;padding-top:.5rem}
.pcard__cta{min-height:44px}
.pcard__more{min-height:44px;display:inline-flex;align-items:center;font-weight:600}
.pcard--halloween{border-color:#7c3aed}
.pcard--halloween .pcard__media,.promo-fig.pcard--halloween .promo-ph{background-color:#1f0e2e;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Cellipse cx='15' cy='18' rx='8' ry='6' fill='%23f57c1f' fill-opacity='.35'/%3E%3Crect x='14' y='9' width='2' height='4' fill='%233d7a2e' fill-opacity='.5'/%3E%3Ccircle cx='45' cy='45' r='2' fill='%23a855f7' fill-opacity='.5'/%3E%3C/svg%3E");background-size:60px 60px}
.pcard--halloween .pcard__badge:not(.is-ended){background:#f57c1f;color:#1a0b26}
.pcard--halloween .pcard__title a{color:#5b21b6}
.pcard--halloween .pcard__cta{background:linear-gradient(135deg,#f57c1f,#7c3aed);color:#fff;border:0}
.promo-fig{margin:1rem 0;border-radius:16px;overflow:hidden;border:1px solid var(--line)}
.promo-ph{display:flex;align-items:center;justify-content:center;aspect-ratio:16/9}
.promo-ph svg{width:26%;height:auto}
.promo-fig figcaption{padding:.55rem .9rem;font-size:.9rem;color:var(--muted);background:#fff}
.promo-status{font-size:.95rem}
.promo-status .pcard__badge{display:inline-block;vertical-align:middle}
.promo-arch{padding:.7rem 1rem;border-radius:12px;background:#fff7ed;border:1px solid #fdba74}
.promo-inline{max-width:520px;margin-left:auto;margin-right:auto}.promo-inline img{height:auto!important;object-fit:contain!important;width:100%}
body.page-haunted-treats{background:#fff url(../assets/img/promo/halloween-bg.webp) repeat center top;background-size:584px auto}
body.page-haunted-treats main,body.page-haunted-treats .page{background:rgba(255,255,255,.9)}
@media (max-width:600px){body.page-haunted-treats{background-size:390px auto}}
/* in-text figures: always show the full image, natural aspect ratio */
.inline-promo__link img,figure.slot-card .inline-promo__link img,.inline-promo--wide .inline-promo__link img,figure.hero-fig img,.promo-inline img{height:auto!important;max-height:none!important;object-fit:contain!important;width:100%}
figure.inline-promo.slot-card,.promo-inline{max-width:640px}
