/* ===== Витрина №147 cctv «Northline» — canadacasinotop.com =====
   палитра от шапки сайта: сланец #223448 · изумруд #0e8f6f · красный флага #ce202f · лёд #f5f7f9
   раскладка: лента-шеврон ранга слева · СВЕТЛАЯ квадратная плашка лого 78 · имя+балл+чипы ·
   панель оффера с изумрудной полосой СВЕРХУ · колонка CTA · строка фактов · 2 разворота-пилюли */

.cctv-wrap{--v-slate:#223448;--v-emerald:#0e8f6f;--v-emerald-dk:#0a5f4a;--v-red:#ce202f;
  --v-ice:#f5f7f9;--v-ink:#1d2733;--v-muted:#5a6b7b;--v-line:#dfe5ea;
  margin:22px 0 26px;width:100%;max-width:100%;box-sizing:border-box;color:var(--v-ink)}
.cctv-wrap *{box-sizing:border-box}
.cctv-wrap h2{margin:0 0 6px!important;font-size:21px!important;line-height:1.3!important;color:var(--v-slate)!important}
.cctv-meta{font-size:12.5px;color:var(--v-muted);margin:0 0 12px}
.cctv-meta time{font-weight:600;color:var(--v-slate)}

/* полоса фильтров */
.cctv-f{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
.cctv-f label{flex:0 0 auto;display:inline-block;padding:6px 12px;border:1px solid var(--v-line);
  border-radius:999px;background:#fff;font-size:13px;color:var(--v-slate);cursor:pointer;white-space:nowrap;
  line-height:1.25}
.cctv-f label:hover{border-color:var(--v-emerald);color:var(--v-emerald-dk)}
.cctv-in{position:fixed;top:0;left:0;width:1px;height:1px;opacity:0;pointer-events:none}

/* список */
.cctv-wrap ol.cctv-list{margin:0!important;padding:0!important;list-style:none!important;counter-reset:none!important}
.cctv-list>li{display:grid!important;position:relative;grid-template-columns:44px 92px minmax(0,1fr) minmax(0,250px) 168px;
  grid-template-areas:"rk logo id offer cta" "rk facts facts facts cta" "rk more more more more";
  gap:8px 12px;align-items:center;margin:0 0 10px!important;padding:12px 14px 12px 0!important;
  background:#fff;border:1px solid var(--v-line);border-radius:12px;overflow:hidden;
  box-shadow:0 1px 2px rgba(24,41,60,.05);float:none!important;width:auto!important}
.cctv-list>li::before,.cctv-list>li::after{content:none!important;display:none!important}
.cctv-list>li.cctv-hid{display:none!important}

/* ранг — лента-шеврон */
.cctv-rk{grid-area:rk;align-self:stretch;background:var(--v-slate);color:#fff;display:flex;
  flex-direction:column;align-items:center;justify-content:center;gap:2px;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),50% 100%,0 calc(100% - 14px));
  padding:10px 0 18px;font-weight:800;font-size:18px;line-height:1}
.cctv-rk span{font-size:9px;font-weight:700;letter-spacing:.8px;opacity:.8}
.cctv-list>li.cctv-top .cctv-rk{background:var(--v-red)}

/* логотип — ОДНА светлая плашка на всех */
.cctv-logo{grid-area:logo;width:78px!important;height:78px!important;border-radius:10px;background:#fff!important;
  border:1px solid var(--v-line);display:flex!important;align-items:center;justify-content:center;
  padding:6px;margin:0!important;float:none!important;position:static!important;overflow:hidden}
.cctv-logo img{max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;
  object-fit:contain;margin:0!important;float:none!important;border-radius:0!important;display:block}

/* имя, балл, чипы */
.cctv-id{grid-area:id;min-width:0}
.cctv-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 5px}
.cctv-name b{font-size:16.5px;font-weight:700;color:var(--v-slate);line-height:1.2}
.cctv-score{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;
  border-radius:50%;background:#0a5f4a;color:#fff!important;font-size:13px;font-weight:800}
.cctv-chips{display:flex;flex-wrap:wrap;gap:5px}
.cctv-chip{display:inline-block;padding:3px 8px;border-radius:5px;background:var(--v-ice);border:1px solid var(--v-line);
  font-size:11.5px;color:var(--v-muted);line-height:1.35}
.cctv-chip--on{background:#e7f6f1;border-color:#bfe7db;color:#0b6b53}
.cctv-chip--no{background:#fdecec;border-color:#f6cdcd;color:#a51f2a}

/* оффер */
.cctv-offer{grid-area:offer;background:var(--v-ice);border:1px solid var(--v-line);border-top:3px solid var(--v-emerald);
  border-radius:9px;padding:8px 10px;min-width:0}
.cctv-offer i{display:block;font-style:normal;font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;
  color:var(--v-muted);margin:0 0 2px}
.cctv-offer b{display:block;font-size:14.5px;line-height:1.3;color:var(--v-slate);font-weight:700;word-break:break-word}

/* CTA */
.cctv-cta{grid-area:cta;display:flex;flex-direction:column;align-items:stretch;gap:5px;padding:0 6px}
.cctv-cta a.cctv-btn{display:block;text-align:center;padding:11px 12px;border-radius:8px;background:#0a5f4a;
  color:#fff!important;font-weight:700;font-size:14.5px;text-decoration:none!important;line-height:1.2}
.cctv-cta a.cctv-btn:hover{background:var(--v-emerald-dk)}
.cctv-cta a.cctv-rev{display:block;text-align:center;font-size:12.5px;color:var(--v-muted)!important;
  text-decoration:none!important}
.cctv-cta a.cctv-rev:hover{color:var(--v-emerald-dk)!important;text-decoration:underline!important}

/* факты и развороты */
.cctv-facts{grid-area:facts;font-size:12.5px;color:var(--v-muted);line-height:1.5;min-width:0;
  overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.cctv-facts b{color:var(--v-slate);font-weight:600}
.cctv-more{grid-area:more;display:flex;flex-wrap:wrap;gap:6px;margin:0}
.cctv-wrap details.cctv-d{margin:0!important;padding:0!important;flex:0 0 auto}
.cctv-wrap details.cctv-d[open]{flex:1 1 100%}
.cctv-wrap summary.cctv-s{display:block!important;list-style:none!important;padding:5px 11px;border-radius:999px;
  border:1px solid var(--v-line);background:#fff;font-size:12px;color:var(--v-slate);cursor:pointer}
.cctv-wrap summary.cctv-s::-webkit-details-marker{display:none}
.cctv-wrap details.cctv-d[open] summary.cctv-s{border-color:var(--v-emerald);color:var(--v-emerald-dk)}
.cctv-dd{padding:8px 2px 2px;font-size:12.5px;line-height:1.6;color:var(--v-ink)}
.cctv-dd b{color:var(--v-slate)}

/* показать все */
.cctv-showall{margin:4px 0 0;text-align:center}
.cctv-showall label{display:inline-block;padding:9px 20px;border-radius:9px;border:1px solid var(--v-slate);
  background:#fff;color:var(--v-slate);font-size:14px;font-weight:600;cursor:pointer}
.cctv-showall label:hover{background:var(--v-slate);color:#fff}
.cctv-wrap:has(.cctv-all:checked) .cctv-list>li.cctv-hid{display:grid!important}
.cctv-wrap:has(.cctv-all:checked) .cctv-showall label .cctv-s1{display:none}
.cctv-showall label .cctv-s2{display:none}
.cctv-wrap:has(.cctv-all:checked) .cctv-showall label .cctv-s2{display:inline}

/* фильтры — ПОСЛЕ show-all, чтобы резали и раскрытый список (общий CSS, никаких id) */
.cctv-wrap:has(.cctv-fi-idebit:checked) .cctv-list>li:not([data-idebit="1"]){display:none!important}
.cctv-wrap:has(.cctv-fi-wager:checked) .cctv-list>li:not([data-lowwager="1"]){display:none!important}
.cctv-wrap:has(.cctv-fi-spins:checked) .cctv-list>li:not([data-spins200="1"]){display:none!important}
.cctv-wrap:has(.cctv-fi-ontario:checked) .cctv-list>li:not([data-ontario="1"]){display:none!important}
.cctv-f label:has(> .cctv-in:checked),
.cctv-wrap:has(.cctv-fi-idebit:checked) .cctv-f label.cctv-l-idebit,
.cctv-wrap:has(.cctv-fi-wager:checked) .cctv-f label.cctv-l-wager,
.cctv-wrap:has(.cctv-fi-spins:checked) .cctv-f label.cctv-l-spins,
.cctv-wrap:has(.cctv-fi-ontario:checked) .cctv-f label.cctv-l-ontario{background:var(--v-slate);color:#fff;
  border-color:var(--v-slate)}

/* дисклеймер */
.cctv-note{margin:12px 0 0;font-size:12px;line-height:1.55;color:var(--v-muted)}

/* мобилка */
@media (max-width:820px){
  .cctv-list>li{grid-template-columns:34px 60px minmax(0,1fr);
    grid-template-areas:"rk logo id" "rk offer offer" "rk cta cta" "rk facts facts" "rk more more";
    gap:5px 9px;padding:8px 10px 8px 0!important}
  .cctv-logo{width:60px!important;height:60px!important;padding:5px}
  .cctv-score{width:30px;height:30px;font-size:12px}
  .cctv-chip{font-size:11px;padding:2px 7px}
  .cctv-cta a.cctv-btn{padding:9px 10px;font-size:14px}
  .cctv-offer i{font-size:10px}
  .cctv-name{margin:0 0 4px}
  .cctv-name b{font-size:15.5px}
  .cctv-offer{padding:7px 9px}
  .cctv-offer b{font-size:14px}
  .cctv-f{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .cctv-f::-webkit-scrollbar{display:none}
  .cctv-facts{-webkit-line-clamp:2;font-size:12px}
  .cctv-more{gap:5px}
  .cctv-wrap summary.cctv-s{padding:4px 9px;font-size:11.5px}
  .cctv-chip--hide-m{display:none}
}
