/* 1xbet-casino.kg — main.css
   Палитра 1xBet: тёмно-синий + жёлтый CTA + белый
   Кириллица: PT Sans / Segoe UI / system */

:root{
  /* Палитра 1xBet (live-сайт 2026): яркий медиум-синий + зелёная Регистрация-CTA + жёлтая бонус-CTA */
  --c-bg:#0a1e3d;             /* deep navy фон страницы */
  --c-surface:#143d7a;        /* основной 1xBet синий — header/панели */
  --c-surface-2:#1a4d96;      /* hover-синий */
  --c-text:#ffffff;
  --c-muted:#9fb5d1;
  --c-line:#23548f;
  --c-brand:#1a80d9;          /* яркий «BET»-синий из логотипа */
  --c-brand-2:#3ba9ff;        /* cyan акцент из фавикона */
  --c-cta:#5fb83a;            /* зелёная «РЕГИСТРАЦИЯ» — основная CTA как у 1xBet */
  --c-cta-h:#6dcc44;          /* зелёный hover */
  --c-cta-ink:#ffffff;        /* белый текст на зелёной кнопке */
  --c-cta-2:#ffcc1f;          /* жёлтая бонус-CTA (Hero/promo) */
  --c-cta-2-ink:#0a1e3d;      /* тёмно-синий текст на жёлтой */
  --c-accent:#e63946;         /* 18+/RG красный */
  --r-sm:6px; --r-md:12px; --r-lg:18px;
  --s-xs:.5rem; --s-sm:.85rem; --s-md:1.2rem; --s-lg:2rem; --s-xl:3rem;
  --maxw:1200px;
  --font:Roboto,'PT Sans','Segoe UI',system-ui,-apple-system,sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0}

/* Anti-horizontal-scroll — обязательно */
html,body{overflow-x:hidden;max-width:100%}
html{scroll-behavior:smooth}

/* ---------- Accessibility: focus-visible ---------- */
a:focus-visible,button:focus-visible,.cta-button:focus-visible,.btn:focus-visible{
  outline:3px solid var(--c-brand-2);outline-offset:2px;border-radius:4px;
}
.burger:focus-visible{outline:3px solid var(--c-brand-2);outline-offset:3px}

/* ---------- Skip link для screen readers ---------- */
.skip-link{
  position:absolute;left:-9999px;top:0;background:var(--c-cta);
  color:var(--c-cta-ink);padding:.6rem 1rem;border-radius:0 0 6px 0;
  font-weight:700;z-index:9999;
}
.skip-link:focus{left:0}

/* ---------- Prefers-reduced-motion ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
  .winnings-feed h3::before{animation:none}
  .card:hover,.cta-button:hover,.btn:hover{transform:none}
}

/* ---------- Active nav (aria-current) ---------- */
.nav-menu a[aria-current="page"]{
  background:var(--c-surface-2);color:var(--c-brand-2);
}

body{
  font-family:var(--font);
  background:#0a1e3d;
  color:var(--c-text);
  line-height:1.7;
  font-size:17px;
  min-height:100vh;
}

img,video,iframe{max-width:100%;display:block}
a{color:var(--c-brand-2);text-decoration:none}
a:hover{text-decoration:underline}
pre,code{overflow-x:auto;word-wrap:break-word}

.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--s-md)}

/* ---------- Header ---------- */
.site-header{
  background:#143d7a;
  border-bottom:2px solid var(--c-brand-2);
  position:sticky;top:0;z-index:1000;
  box-shadow:0 2px 10px rgba(0,0,0,.35);
}
.nav{
  display:flex;align-items:center;gap:12px;
  max-width:var(--maxw);margin:0 auto;padding:.7rem var(--s-md);
}
/* Логотип — теперь <img>, не текст */
.logo{display:inline-flex;align-items:center;gap:0;text-decoration:none;line-height:0}
.logo img{height:36px;width:auto;display:block}
.nav-menu{display:flex;gap:.2rem;margin-left:auto;flex-wrap:wrap}
.nav-menu a{
  color:#fff;padding:.5rem .75rem;border-radius:var(--r-sm);
  font-size:.95rem;font-weight:600;text-decoration:none;
  transition:background .15s,color .15s;
}
.nav-menu a:hover{background:var(--c-surface-2);color:var(--c-brand-2)}
.mobile-cta{display:none}
.burger{
  display:none;background:none;border:none;color:#fff;
  font-size:1.8rem;cursor:pointer;padding:.2rem .5rem;line-height:1;
}

/* ---------- Buttons: основная CTA = зелёная (как «Регистрация» у 1xBet) ---------- */
.cta-button,.btn{
  display:inline-block;
  background:linear-gradient(180deg,var(--c-cta) 0%,#4ea82e 100%);
  color:var(--c-cta-ink) !important;
  font-weight:800;padding:.9rem 1.7rem;border-radius:var(--r-sm);
  text-align:center;border:none;cursor:pointer;font-size:1.05rem;
  text-decoration:none !important;
  box-shadow:0 3px 10px rgba(95,184,58,.35);
  transition:transform .15s,box-shadow .15s,background .15s;
  text-transform:uppercase;letter-spacing:.5px;
}
.cta-button:hover,.btn:hover{
  background:linear-gradient(180deg,var(--c-cta-h) 0%,#5ab83a 100%);
  transform:translateY(-1px);
  box-shadow:0 5px 16px rgba(95,184,58,.5);
}
.btn-sm{padding:.55rem 1.1rem;font-size:.9rem}

/* Жёлтая CTA (для бонус-блоков и promo) — оставлена как .cta-yellow */
.cta-yellow{
  background:linear-gradient(180deg,var(--c-cta-2) 0%,#e0b300 100%) !important;
  color:var(--c-cta-2-ink) !important;
  box-shadow:0 3px 10px rgba(255,204,31,.4) !important;
}
.cta-yellow:hover{
  background:linear-gradient(180deg,#ffd84a 0%,#f1bf00 100%) !important;
  box-shadow:0 5px 16px rgba(255,204,31,.55) !important;
}

/* ---------- Hero ---------- */
.hero{
  background:
    radial-gradient(circle at 80% 20%,rgba(58,169,255,.15),transparent 55%),
    radial-gradient(circle at 20% 80%,rgba(95,184,58,.10),transparent 55%),
    var(--c-surface);
  border-radius:var(--r-lg);
  padding:var(--s-xl) var(--s-lg);
  margin:var(--s-lg) 0;
  text-align:center;
  border:1px solid var(--c-line);
}
.hero h1{font-size:2.3rem;line-height:1.2;margin-bottom:var(--s-md);color:#fff}
.hero p{color:#dbe7f5;font-size:1.15rem;max-width:680px;margin:0 auto var(--s-md)}
.hero .cta-button{margin-top:var(--s-sm)}
.hero-rating{
  display:inline-flex;gap:.4rem;align-items:center;
  background:rgba(58,169,255,.18);color:var(--c-brand-2);
  padding:.35rem .8rem;border-radius:999px;
  font-weight:700;font-size:.95rem;margin-bottom:.8rem;
}

/* ---------- Content ---------- */
main{padding:var(--s-lg) 0 var(--s-xl)}
article h1{font-size:2rem;line-height:1.25;margin:var(--s-md) 0;color:#fff}
article h2{
  font-size:1.55rem;margin:var(--s-lg) 0 var(--s-sm);
  color:var(--c-cta);border-left:4px solid var(--c-cta);
  padding-left:.8rem;
}
article h3{font-size:1.2rem;margin:var(--s-md) 0 var(--s-xs);color:#fff}
article p{margin:0 0 var(--s-md);color:#e6ecf5}
article ul,article ol{margin:0 0 var(--s-md) 1.4rem;color:#e6ecf5}
article li{margin-bottom:.4rem}
article a{color:var(--c-brand-2);text-decoration:underline}
article a:hover{color:#80c4ff}

/* Адаптивная картинка — НИКАКОГО forced aspect-ratio + object-fit:cover.
   Изображение рендерится в натуральных пропорциях, занимая до 100% контейнера. */
.content-img{
  display:block;
  width:100%;height:auto;
  max-width:900px;
  margin:1.5rem auto;
  border-radius:var(--r-md);
  border:1px solid var(--c-line);
}

/* Вертикальный скриншот моб. */
.shot{
  display:block;width:auto;max-width:320px;max-height:640px;height:auto;
  margin:1.5rem auto;border-radius:var(--r-md);
  border:1px solid var(--c-line);box-shadow:0 6px 24px rgba(0,0,0,.5);
}

/* ---------- Tables ---------- */
table{
  width:100%;border-collapse:collapse;margin:var(--s-md) 0;
  background:var(--c-surface);border-radius:var(--r-md);overflow:hidden;
}
th,td{padding:.85rem 1rem;text-align:left;border-bottom:1px solid var(--c-line);color:#e6ecf5}
th{background:var(--c-surface-2);color:var(--c-brand-2);font-weight:700}
tr:last-child td{border-bottom:none}
tr:hover td{background:var(--c-surface-2)}

/* На мобиле широкие таблицы — скроллим */
@media(max-width:768px){
  table{display:block;overflow-x:auto;white-space:nowrap;border-radius:var(--r-sm)}
}

/* ---------- Callouts ---------- */
.age-disclaimer{
  background:rgba(230,57,70,.14);border:1px solid var(--c-accent);
  border-radius:var(--r-sm);padding:.75rem 1rem;font-size:.9rem;
  color:#ffb3bd;margin:var(--s-md) 0;
}
.disclaimer{font-size:.85rem;color:var(--c-muted);margin:var(--s-sm) 0 var(--s-md)}
.byline{
  font-size:.9rem;color:var(--c-muted);
  border-left:3px solid var(--c-brand-2);padding-left:.75rem;
  margin:0 0 var(--s-md);
}
.note{
  background:var(--c-surface-2);border-left:4px solid var(--c-brand-2);
  padding:1rem 1.2rem;border-radius:var(--r-sm);margin:var(--s-md) 0;
}

/* ---------- Cards ---------- */
.cards{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:var(--s-md);margin:var(--s-md) 0;
}
.card{
  background:var(--c-surface);border:1px solid var(--c-line);
  border-radius:var(--r-md);padding:1.3rem;
  transition:transform .15s,border-color .15s;
}
.card:hover{transform:translateY(-3px);border-color:var(--c-brand-2)}
.card h3{margin-top:0;color:var(--c-brand-2)}

/* ---------- Live winnings feed ---------- */
.winnings-feed{
  background:var(--c-surface);border:1px solid var(--c-line);
  border-radius:var(--r-md);padding:1rem 1.2rem;margin:var(--s-md) 0;
}
.winnings-feed h3{
  color:var(--c-brand-2);margin:0 0 .8rem;font-size:1.05rem;
  display:flex;align-items:center;gap:.5rem;
}
.winnings-feed h3::before{
  content:"●";color:#23d160;animation:pulse 1.5s infinite;
}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}
.winnings-list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}
.winnings-list li,.winnings-list div{
  background:var(--c-surface-2);padding:.6rem .8rem;
  border-radius:var(--r-sm);font-size:.92rem;
  border-left:3px solid var(--c-brand-2);list-style:none;
}
.winnings-list span{color:var(--c-brand-2);font-weight:700}

/* ---------- Footer ---------- */
.site-footer{
  background:#08172e;border-top:2px solid var(--c-brand-2);
  margin-top:var(--s-xl);padding:var(--s-lg) 0;
}
.footer-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:var(--s-lg);
}
.footer-col h4,.footer-col .footer-title{
  color:var(--c-brand-2);margin:0 0 var(--s-sm);
  font-size:1rem;font-weight:700;
}
.footer-col a{display:block;color:var(--c-muted);padding:.25rem 0;font-size:.92rem}
.footer-col a:hover{color:var(--c-brand-2)}
.footer-bottom{
  border-top:1px solid var(--c-line);margin-top:var(--s-lg);
  padding-top:var(--s-md);text-align:center;
  color:var(--c-muted);font-size:.85rem;
}
.footer-bottom strong{color:var(--c-accent)}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  .burger{display:block;order:3}
  .mobile-cta{display:inline-block;order:2;margin-left:auto}
  .nav-menu{
    display:none;position:absolute;top:100%;left:0;right:0;
    background:#08172e;flex-direction:column;padding:var(--s-sm);
    border-bottom:2px solid var(--c-brand-2);z-index:999;
  }
  .nav-menu.open{display:flex}
  .nav-menu a{padding:.85rem;border-bottom:1px solid var(--c-line)}
  .nav{flex-wrap:wrap;position:relative}
  .hero{padding:var(--s-lg) var(--s-md)}
  .hero h1{font-size:1.7rem}
  article h1{font-size:1.6rem}
  article h2{font-size:1.3rem}
  .container{padding:0 .9rem}
}

@media(max-width:480px){
  body{font-size:16px}
  .hero h1{font-size:1.5rem}
  .nav{padding:.55rem .9rem}
  .logo{font-size:1.3rem}
}
