/* ============================================================
   onlinecasinotopp.com — каркас «Midnattssol» (oct-)
   палитра: ночная слива #2b1b46 + янтарь #f2a71b + бумага #f7f5f0
   (разведено с соседями по SE: casinoinsikt «Klarhet» сталь+мята,
    scorecasinos «Fyrbåk» петроль+медь, casinosresource «Blågul»)
   ============================================================ */
:root{
  --oct-ink:#2b1b46;
  --oct-ink-2:#1e1233;
  --oct-ink-3:#463069;
  --oct-amber:#f2a71b;
  --oct-amber-d:#b97c07;
  --oct-paper:#ffffff;
  --oct-paper-2:#f7f5f0;
  --oct-line:#e3ddd3;
  --oct-text:#221a2e;
  --oct-mut:#6b6076;
  --oct-cta:#0f7f4a;
  --oct-cta-h:#0b6a3d;
  --oct-w:1180px;
  --pad:20px;
}

/* ---------- 1. общий горизонтальный отступ ---------- */
.oct-w{width:100%;max-width:var(--oct-w);margin:0 auto;
       padding-left:var(--pad);padding-right:var(--pad);box-sizing:border-box}
body #page > .container,body #page .content-wrapper,body main{box-sizing:border-box}

/* ---------- 2. база ---------- */
html{-webkit-text-size-adjust:100%}
body{background:var(--oct-paper-2)!important;margin:0;
     font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
body #page{background:var(--oct-paper)!important}
body main{background:var(--oct-paper)}
img{max-width:100%;height:auto}
h1,h2,h3,h4{line-height:1.25}
body main{display:flow-root;margin-top:22px}
body main > *{max-width:var(--oct-w)!important;margin-left:auto!important;margin-right:auto!important;
  width:100%!important;box-sizing:border-box}
/* R11: контейнеры темы сводим к одной сетке (1180 внешние / 1140 контент) */
body .container,body .container-fluid,body .content-wrapper,
body .general,body .general-info{max-width:var(--oct-w)!important;
  margin-left:auto!important;margin-right:auto!important;padding-left:20px!important;
  padding-right:20px!important;box-sizing:border-box;width:100%!important}
body .container .container{padding-left:0!important;padding-right:0!important;max-width:none!important}
/* bootstrap-овские .row с отрицательными полями давали четвёртую ширину секций (1164) */
body .row{margin-left:0!important;margin-right:0!important}

/* мёртвые органы донора: попап подписки, куки-баннер, всплывашки плагинов */
body .popup,body .popup-overlay-tup,body #subscribe_popup,body .tsipan-subscriber,
body #cookie-notice,body .cookie-notice,body .my-popup,body .pseudo-clearfy-link{display:none!important}

/* FAQ донора без JS: ответы «Questions to the expert» должны быть РАСКРЫТЫ (правило владельца) */
body .expert-review-qa__answer,body .expert-review-qa__answer > div,
body .expert-review-faq-item__answer,body .expert-review-faq-item__answer.js-expert,
body .faq__item > div,body .faq-item > div,body .accordion__content,body .spoiler__content{
  display:block!important;height:auto!important;max-height:none!important;
  overflow:visible!important;visibility:visible!important}
body .expert-review-qa__question{font-weight:800;color:var(--oct-ink);margin-top:12px}
body .expert-review-qa__answer{margin:6px 0 10px;color:var(--oct-text)}
body .expert-review-faq-item{border-bottom:1px solid var(--oct-line);padding:10px 0}
body .expert-review-faq-item__question{font-weight:800;color:var(--oct-ink)}
body .expert-review-faq-item__answer{margin-top:6px;color:var(--oct-text)}

/* ---------- 3. шапка ---------- */
body header.oct-hd,body .oct-hd{position:relative!important;top:auto!important;left:auto!important;
  right:auto!important;width:100%!important;height:auto!important;transform:none!important;
  z-index:auto!important;background:var(--oct-ink)!important;color:#fff!important;
  border-bottom:3px solid var(--oct-amber);font-family:inherit}
.oct-hd *{box-sizing:border-box}
.oct-hd a{color:#fff!important;text-decoration:none}
.oct-hd__in{display:flex;align-items:center;gap:22px;min-height:72px}
.oct-hd__logo{display:flex;align-items:center;gap:11px;padding:10px 0;flex:0 0 auto}
.oct-hd__name{font-size:19px;font-weight:800;letter-spacing:.2px;line-height:1.05;color:#fff}
.oct-hd__name b{color:var(--oct-amber);font-weight:800}
.oct-hd__tag{display:block;font-size:10.5px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase;
  color:#c9b8e6;margin-top:4px}
.oct-nav{margin-left:auto}
.oct-nav > ul{display:flex;list-style:none;margin:0;padding:0;gap:2px}
.oct-nav > ul > li{position:relative}
.oct-nav > ul > li > a{display:block;padding:14px 13px;font-size:14.5px;font-weight:700;color:#fff!important;
  border-radius:7px}
.oct-nav > ul > li > a::after{content:"";display:inline-block;margin-left:6px;vertical-align:middle;
  border:4px solid transparent;border-top-color:var(--oct-amber)}
.oct-nav > ul > li:hover > a,.oct-nav > ul > li:focus-within > a{background:var(--oct-ink-3)}
.oct-nav ul ul{position:absolute;left:0;top:100%;min-width:246px;margin:0;padding:8px 0;list-style:none;
  background:var(--oct-ink-3);border:1px solid rgba(255,255,255,.16);border-radius:9px;
  box-shadow:0 16px 34px rgba(20,10,40,.4);visibility:hidden;opacity:0;transform:translateY(6px);
  transition:.14s;z-index:60}
.oct-nav > ul > li:hover ul,.oct-nav > ul > li:focus-within ul{visibility:visible;opacity:1;transform:none}
.oct-nav > ul > li:nth-last-child(-n+2) ul{left:auto;right:0}
.oct-nav ul ul li a{display:block;padding:9px 16px;font-size:13.5px;color:#efe8fa!important}
.oct-nav ul ul li a:hover{background:rgba(242,167,27,.2);color:#fff!important}

/* ---------- 4. подвал ---------- */
body footer.oct-ft,body .oct-ft{background:var(--oct-ink-2)!important;color:#d3c9e4!important;
  border-top:3px solid var(--oct-amber);margin-top:44px;width:100%!important}
.oct-ft *{box-sizing:border-box}
.oct-ft a{color:#efe8fa!important;text-decoration:none}
.oct-ft a:hover{color:var(--oct-amber)!important;text-decoration:underline}
.oct-ft__in{padding-top:34px;padding-bottom:10px}
.oct-ft__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:26px}
.oct-ft h3{font-size:13px;letter-spacing:1.3px;text-transform:uppercase;color:var(--oct-amber)!important;
  margin:0 0 12px}
.oct-ft ul{list-style:none;margin:0;padding:0}
.oct-ft li{margin:0 0 8px;font-size:13.5px}
.oct-ft p{font-size:13.5px;line-height:1.65;color:#d3c9e4}
.oct-ft__badges{display:flex;flex-wrap:wrap;gap:9px;margin-top:10px}
.oct-ft__badge{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700;
  color:#efe8fa}
.oct-ft__badge b{color:var(--oct-amber)}
.oct-ft__bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:24px;padding-top:15px;
  padding-bottom:26px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:12.5px;
  color:#a293b8}
.oct-ft__18{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;
  border-radius:7px;border:2px solid var(--oct-amber);color:var(--oct-amber);font-weight:800;font-size:11.5px}

/* ---------- 5. блоки донора под новую палитру ---------- */
body .header,body .footer{background:transparent}
body a{color:var(--oct-ink-3)}
body a:hover{color:var(--oct-amber-d)}
body .btn,body .button,body .top5__item-content-link,body .general__compilation-item-link{
  background:var(--oct-cta)!important;color:#fff!important;border-color:var(--oct-cta)!important;
  font-weight:700;border-radius:8px}
body .btn:hover,body .button:hover{background:var(--oct-cta-h)!important}
body table{border-collapse:collapse;color:var(--oct-text)}
body table th,body table thead tr{background:var(--oct-ink)!important;color:#fff!important;
  padding:9px 12px;text-align:left}
body table td{padding:9px 12px;border-bottom:1px solid var(--oct-line)}

/* своё оглавление */
.oct-toc{border:1px solid var(--oct-line);border-radius:10px;background:var(--oct-paper-2);margin:22px 0}
.oct-toc > summary{cursor:pointer;padding:14px 18px;font-weight:800;color:var(--oct-ink);list-style:none}
.oct-toc > summary::-webkit-details-marker{display:none}
.oct-toc > summary::after{content:"▾";float:right;color:var(--oct-amber-d)}
.oct-toc ol{margin:0;padding:0 18px 16px 34px}
.oct-toc li{margin:6px 0;font-size:14.5px}

/* дата обновления */
.oct-upd{display:inline-block;font-size:12.5px!important;line-height:1.2;background:var(--oct-paper-2)!important;
  border:1px solid var(--oct-line);border-radius:8px;padding:5px 12px!important;color:#5b5168!important;
  margin:2px 0 14px!important}
.oct-upd time{font-weight:800;color:var(--oct-ink)!important}

/* ---------- 6. свои страницы-индексы ---------- */
.oct-page{padding-top:24px;padding-bottom:30px}
/* R11: свой блок «Läs vidare» на хабе не должен давать отдельную ширину */
body main > .oct-w.oct-page{padding-left:0!important;padding-right:0!important}
.oct-page h1{font-size:2rem;margin:0 0 12px;color:var(--oct-ink)}
.oct-lead{font-size:16px;line-height:1.7;color:var(--oct-text);max-width:76ch}
.oct-idx{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px 18px;list-style:none;
  margin:18px 0 6px;padding:0}
.oct-idx li{margin:0;font-size:14.5px;line-height:1.45;padding:8px 11px;border-radius:8px;
  background:var(--oct-paper-2);border:1px solid var(--oct-line)}
.oct-idx li a{color:var(--oct-ink-3);text-decoration:none}
.oct-idx li a:hover{color:var(--oct-amber-d);text-decoration:underline}
.oct-grp{margin:26px 0 6px;font-size:1.1rem;color:var(--oct-ink);border-left:4px solid var(--oct-amber);
  padding-left:10px}
.oct-note{background:var(--oct-paper-2);border:1px solid var(--oct-line);border-left:4px solid var(--oct-amber);
  border-radius:8px;padding:14px 18px;margin:20px 0;font-size:14.5px;color:var(--oct-text)}

/* ---------- 7. мобилка ---------- */
@media (max-width:980px){
  :root{--pad:14px}
  body main{margin-top:16px}
  .oct-hd__in{flex-wrap:wrap;gap:10px;min-height:0;padding:10px 0}
  .oct-nav{margin-left:0;width:100%;overflow-x:auto}
  .oct-nav > ul{flex-wrap:nowrap;width:max-content;gap:0}
  .oct-nav > ul > li > a{padding:10px 11px;font-size:13.5px;white-space:nowrap}
  .oct-nav > ul > li > a::after{display:none}
  .oct-nav ul ul{display:none}
  .oct-ft__grid{grid-template-columns:1fr 1fr;gap:18px}
}
@media (max-width:640px){
  .oct-ft__grid{grid-template-columns:1fr}
  .oct-idx{grid-template-columns:1fr}
  body #page h1{font-size:1.5rem}
}
