/* ==========================================================================
   stadion-zuerich.ch — рейтинг, вариант «Spielerkarte».

   Приём: язык спортивных статистических сервисов. Оценка вынесена в цветной
   чип, цвет меняется по значению (4.9 густо-зелёный → 4.3 оранжевый), а
   плашки advantages показаны шкалами относительно лучшего в списке.
   Цвет и длина читаются за долю секунды, до цифр.

   ВАЖНО: отдельный файл, а не часть бандла. На сайте есть opt-build.php,
   который пересобирает CSS с чисткой неиспользуемых классов и вырезал бы .sz-*.

   Палитра взята у сайта: синий #1E3A8A / #3B4BC8, янтарь #FBBF24,
   фиолетовая кнопка #6D5BD0, белые карточки на синем фоне.
   ========================================================================== */

.sz-rating{
  --sz-ink:#1B2340;
  --sz-ink-2:#4A5578;
  --sz-mut:#8A93B4;
  --sz-line:#EDF0F8;
  --sz-tile:#F4F6FC;
  --sz-blue:#3B4BC8;
  --sz-violet:#6D5BD0;
  --sz-violet-dk:#5A48BE;
  --sz-amber:#F59E0B;

  margin:0 0 40px;
  text-align:left;
  font-family:Rubik,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:16px;
  line-height:1.5;
}

/* тема задаёт свои p/ul/li/a и центрирование — гасим один раз внутри блока */
.sz-rating p{margin:0;color:inherit;line-height:inherit}
.sz-rating ul,.sz-rating ol,.sz-rating li{margin:0;padding:0;list-style:none}
.sz-rating a{text-decoration:none}
.sz-rating img{max-width:100%;height:auto}

.sz-rating .sz-h{
  font-family:Poppins,sans-serif;font-size:clamp(21px,2.4vw,26px);font-weight:700;
  color:#fff;margin:0 0 20px;text-align:center;line-height:1.2;
}

/* ---------------------------------------------------------------- карточка */
.sz-c{
  background:#fff;color:var(--sz-ink);
  border-radius:16px;margin-bottom:14px;padding:16px 18px;
  display:grid;grid-template-columns:46px 248px minmax(0,1fr) 178px;
  gap:0 18px;align-items:center;
  box-shadow:0 12px 30px -16px rgba(6,12,40,.5);
  border:2px solid transparent;
  transition:box-shadow .25s ease,transform .25s ease,border-color .25s ease;
}
.sz-c:hover{box-shadow:0 18px 38px -18px rgba(6,12,40,.6);transform:translateY(-2px)}
.sz-c--top{border-color:var(--sz-amber);background:linear-gradient(to right,#fff 0%,#FFFBEB 100%)}

@supports (animation-timeline: view()){
  @media (prefers-reduced-motion:no-preference){
    @keyframes sz-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
    .sz-c{animation:sz-in .5s cubic-bezier(.2,.7,.3,1) both;animation-timeline:view();animation-range:entry 0% cover 16%}
  }
}

/* ---- номер позиции ---- */
.sz-rating .sz-no{
  font-family:'Chakra Petch',Poppins,sans-serif;
  font-size:15px;font-weight:700;color:#fff;background:var(--sz-ink);
  width:34px;height:38px;border-radius:9px;display:grid;place-items:center;
  letter-spacing:.02em;font-variant-numeric:tabular-nums;
}
.sz-c--top .sz-no{background:var(--sz-amber)}

/* ---- бренд ---- */
.sz-l{display:flex;align-items:center;gap:12px;min-width:0}
.sz-rating .sz-crest{
  flex:0 0 122px;height:74px;background:var(--sz-tile);border-radius:12px;
  display:flex;align-items:center;justify-content:center;padding:9px;
  transition:background .2s ease;
}
.sz-rating .sz-crest:hover{background:#E7EBF7}
.sz-rating .sz-crest img{max-width:100%;max-height:100%;width:auto;object-fit:contain;display:block}
.sz-lb{min-width:0}
.sz-rating .sz-nm{
  font-family:Poppins,sans-serif;font-weight:700;font-size:15px;
  letter-spacing:-.02em;line-height:1.15;color:var(--sz-ink);
}
.sz-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}
.sz-rating .sz-tag{
  font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  background:var(--sz-amber);color:#fff;padding:3px 7px;border-radius:5px;line-height:1;
}
.sz-rating .sz-tag--alt{background:var(--sz-tile);color:var(--sz-ink-2)}
.sz-rating .sz-avis{font-size:10.5px;color:var(--sz-mut);margin-top:4px}
.sz-rating .sz-avis a{color:var(--sz-mut);text-decoration:underline;text-underline-offset:2px}

/* чип оценки: цвет по значению */
.sz-rating .sz-chip{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:46px;height:32px;border-radius:8px;margin-top:7px;
  font-family:'Chakra Petch',Poppins,sans-serif;font-size:17px;font-weight:700;color:#fff;
  font-variant-numeric:tabular-nums;
}
.sz-rating .sz-chip--a{background:#0F9D58}
.sz-rating .sz-chip--b{background:#3DAE5B}
.sz-rating .sz-chip--c{background:#E2B007}
.sz-rating .sz-chip--d{background:#EF8836}

/* ---- середина ---- */
.sz-m{min-width:0}
.sz-of{margin:0 0 11px}
.sz-rating .sz-of,
.sz-rating .sz-of *{
  font-family:Poppins,sans-serif;
  font-size:clamp(15px,1.6vw,16.5px);font-weight:700;line-height:1.35;letter-spacing:-.02em;
  color:var(--sz-ink)!important;margin:0;
}
.sz-rating .sz-of .bonus-main{display:block}

.sz-promo{display:inline-flex;align-items:center;gap:8px;margin:0 0 10px;font-size:11.5px;color:var(--sz-mut)}
.sz-rating .sz-promo code{
  font-family:'Chakra Petch',ui-monospace,monospace;
  font-size:12.5px;font-weight:700;letter-spacing:.1em;
  background:#FEF3C7;color:#92400E;padding:4px 9px;border-radius:6px;
}

/* ---- шкалы advantages ----
   Плитками в три колонки, а не строками во всю ширину: значение стоит прямо
   под своей подписью, а не в другом конце карточки. Шкала — короткая полоска
   под значением, она сравнивает бренд с лучшим в списке и не мешает читать. */
.sz-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.sz-st{background:var(--sz-tile);border-radius:10px;padding:9px 11px;min-width:0}
.sz-rating .sz-sl{
  display:flex;align-items:center;gap:6px;
  font-size:10.5px;color:var(--sz-mut);min-width:0;line-height:1.2;
}
.sz-rating .sz-sl .sz-i{width:13px;height:13px;flex:0 0 13px;color:var(--sz-blue);display:block}
.sz-rating .sz-t{display:block;height:5px;border-radius:3px;background:#E2E6F5;overflow:hidden;margin-top:7px}
.sz-rating .sz-t i{display:block;height:100%;background:var(--sz-blue);border-radius:3px;transform-origin:left center}
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion:no-preference){
    @keyframes sz-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
    .sz-rating .sz-t i{animation:sz-fill .7s cubic-bezier(.2,.7,.3,1) both;animation-timeline:view();animation-range:entry 0% cover 20%}
  }
}
.sz-rating .sz-st b{
  display:block;margin-top:3px;
  font-family:'Chakra Petch',Poppins,sans-serif;font-size:15px;font-weight:700;
  color:var(--sz-ink);font-variant-numeric:tabular-nums;line-height:1.15;
  letter-spacing:.01em;overflow-wrap:anywhere;
}

/* ---- features из Strapi: эмодзи и разметка остаются как есть ---- */
.sz-ft{margin-top:11px;display:flex;flex-wrap:wrap;gap:3px 16px;font-size:12px;line-height:1.6}
.sz-rating .sz-ft,
.sz-rating .sz-ft *{color:var(--sz-ink-2)!important;font-weight:400!important}
/* тема рисует зелёную галочку перед .feature-item — внутри блока она лишняя */
.sz-rating .sz-ft .feature-item{display:inline-flex;align-items:center;gap:0}
.sz-rating .sz-ft .feature-item::before{content:none!important;display:none!important}
.sz-rating .sz-ft .bonus-features{display:flex;flex-wrap:wrap;gap:3px 16px}
.sz-rating .sz-ft p{margin:0}

/* ---- платёжные методы ---- */
.sz-pay{margin-top:9px;display:flex;flex-wrap:wrap;gap:5px 14px}
.sz-rating .sz-pay span{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--sz-mut)}
.sz-rating .sz-pay .sz-i{width:13px;height:13px;flex:0 0 13px;display:block;color:#A7AEC8}

/* ---- extraHtml ---- */
.sz-extra{margin-top:11px;padding-top:10px;border-top:1px solid var(--sz-line);font-size:12.5px;line-height:1.6}
.sz-rating .sz-extra,
.sz-rating .sz-extra *{color:var(--sz-ink-2)!important}
.sz-rating .sz-extra a{color:var(--sz-blue)!important;text-decoration:underline;text-underline-offset:2px}

/* ---- правая колонка ---- */
.sz-r{display:flex;flex-direction:column;gap:9px}
.sz-rating .sz-cta{
  display:block;text-align:center;
  background:var(--sz-violet);color:#fff!important;
  font-family:Poppins,sans-serif;font-weight:700;font-size:14px;
  padding:14px 10px;border-radius:11px;line-height:1.25;
  transition:background .2s ease,box-shadow .2s ease;
  box-shadow:0 4px 12px rgba(109,91,208,.3);
}
.sz-rating .sz-cta:hover{background:var(--sz-violet-dk);box-shadow:0 8px 20px rgba(109,91,208,.42)}
.sz-rating .sz-cta:focus-visible{outline:2px solid var(--sz-amber);outline-offset:3px}
.sz-c--top .sz-cta{background:var(--sz-amber);box-shadow:0 4px 12px rgba(245,158,11,.32)}
.sz-c--top .sz-cta:hover{background:#D97706;box-shadow:0 8px 20px rgba(245,158,11,.45)}

.sz-rg{font-size:10.5px;line-height:1.45;text-align:center}
.sz-rating .sz-rg,
.sz-rating .sz-rg *{color:var(--sz-mut)!important;font-size:10.5px;line-height:1.45;margin:0}

/* кнопка раскрытия — только мобильная, без JS */
.sz-more-t{position:absolute;opacity:0;width:0;height:0;pointer-events:none;margin:0}
.sz-more-b{display:none}

/* ==========================================================================
   Планшет
   ========================================================================== */
@media (max-width:1024px){
  .sz-c{grid-template-columns:42px minmax(0,1fr);gap:0 14px;row-gap:14px;padding:16px;text-align:left}
  .sz-m,.sz-r{grid-column:1 / -1}
  .sz-r{flex-direction:row;align-items:center;gap:18px}
  .sz-rating .sz-cta{flex:0 0 220px}
  .sz-rg{flex:1 1 auto;text-align:left}
}

/* ==========================================================================
   Мобильный: первая карточка целиком, вторая начинается на первом экране.
   Всё, кроме бренда, оценки и базового оффера, уходит под кнопку.
   ========================================================================== */
@media (max-width:640px){
  .sz-rating{margin-bottom:26px}
  .sz-rating .sz-h{font-size:19px;margin-bottom:14px}

  .sz-c{
    position:relative;
    grid-template-columns:36px minmax(0,1fr);
    gap:0 12px;row-gap:12px;padding:13px;border-radius:13px;margin-bottom:11px;
  }
  .sz-rating .sz-no{width:30px;height:32px;font-size:13px;border-radius:8px}
  .sz-l{gap:11px}
  .sz-rating .sz-crest{flex:0 0 96px;height:60px;padding:7px;border-radius:10px}
  .sz-rating .sz-nm{font-size:14.5px}
  .sz-rating .sz-chip{min-width:40px;height:27px;font-size:15px;margin-top:5px}
  .sz-rating .sz-avis{margin-top:3px}

  .sz-rating .sz-of,
  .sz-rating .sz-of *{font-size:15px;line-height:1.36}
  .sz-of{margin-bottom:9px}

  .sz-stats{gap:6px}
  .sz-st{padding:8px 9px;border-radius:9px}
  .sz-rating .sz-sl{font-size:9.5px;gap:5px}
  .sz-rating .sz-sl .sz-i{width:12px;height:12px;flex:0 0 12px}
  .sz-rating .sz-st b{font-size:13.5px}

  .sz-r{flex-direction:column;gap:8px}
  .sz-rating .sz-cta{flex:none;padding:13px 10px}
  .sz-rg{text-align:center}

  /* базовое предложение и кнопка видны всегда, остальное — под кнопкой */
  .sz-more-t:not(:checked) ~ .sz-stats,
  .sz-more-t:not(:checked) ~ .sz-ft,
  .sz-more-t:not(:checked) ~ .sz-pay,
  .sz-more-t:not(:checked) ~ .sz-extra,
  .sz-more-t:not(:checked) ~ .sz-promo{display:none}

  .sz-more-b{
    display:inline-flex;align-items:center;gap:7px;
    margin:0;padding:6px 0;
    font-family:Poppins,sans-serif;
    font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
    color:var(--sz-violet);cursor:pointer;user-select:none;
    border-bottom:1px solid rgba(109,91,208,.32);
  }
  .sz-more-b::before{content:'Statistik anzeigen'}
  .sz-more-b::after{content:'+';font-size:13px;letter-spacing:0}
  .sz-more-t:checked ~ .sz-more-b::before{content:'Ausblenden'}
  .sz-more-t:checked ~ .sz-more-b::after{content:'\2212'}
  .sz-more-t:focus-visible ~ .sz-more-b{outline:2px solid var(--sz-violet);outline-offset:3px}
}

/* --------------------------------------------------------------------------
   Уплотнение первого экрана на телефоне: заголовок ближе к верху,
   меньше воздуха до рейтинга.
   -------------------------------------------------------------------------- */
@media only screen and (max-width:767px){
  .header-area.sbtl-header-area{padding-top:18px!important;padding-bottom:8px!important}
  .header-inner-details .header-inner h1.title{font-size:1.28rem!important;line-height:1.22!important;margin-bottom:8px!important}
  .header-inner-details .header-inner p{font-size:.84rem!important;line-height:1.42!important;margin-bottom:0!important}
  .casino-section{padding-top:0!important;margin-top:8px!important}
  .casino-section-title{margin-bottom:9px!important;margin-top:0!important}
  .casino-section-title h2{font-size:1.22rem!important;margin-bottom:0!important;line-height:1.2!important}
}

@media (prefers-reduced-motion:reduce){
  .sz-c,.sz-rating .sz-t i{animation:none}
  .sz-c:hover{transform:none}
  .sz-rating .sz-cta,.sz-rating .sz-crest{transition:none}
}
