
:root{
  --bg0:#060611;
  --bg1:#0a0716;

  --text:#eef0ff;
  --muted: rgba(238,240,255,.70);
  --muted2: rgba(238,240,255,.45);

  --stroke: rgba(255,255,255,.10);
  --stroke2: rgba(255,255,255,.06);

  --card: rgba(255,255,255,.05);
  --card2: rgba(255,255,255,.03);

  --p1:#8b5cf6;     /* purple */
  --p2:#a855f7;     /* magenta purple */
  --pGlow: rgba(139,92,246,.28);

  --shadow: 0 22px 90px rgba(0,0,0,.60);
  --shadow2: 0 14px 50px rgba(0,0,0,.45);

  --r12:12px;
  --r16:16px;
  --r20:20px;
  --r24:24px;

  --container: 1200px;
}

*{ box-sizing:border-box; }
html,body{ height:100%; }
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
  color: var(--text);
  background:
    radial-gradient(900px 520px at 14% 8%, rgba(139,92,246,.20), transparent 62%),
    radial-gradient(900px 520px at 78% 28%, rgba(168,85,247,.18), transparent 60%),
    radial-gradient(1000px 700px at 50% 110%, rgba(139,92,246,.12), transparent 60%),
    linear-gradient(180deg, var(--bg0), var(--bg1));
}

a{ color:inherit; text-decoration:none; }
img{ max-width:100%; display:block; }
button{ font-family:inherit; }

/* =========================
   HEADER
========================= */
.u-header{
  position: sticky;
  top: 0;
  z-index: 50;
  padding: 14px 16px;
  background: linear-gradient(to bottom, rgba(6,6,17,.90), rgba(6,6,17,.55));
  border-bottom: 1px solid rgba(255,255,255,.06);
  backdrop-filter: blur(14px);
}

.u-header__inner{
  max-width: var(--container);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 230px 1fr auto auto;
  align-items: center;
  gap: 12px;
}

/* brand */
.u-brand{
  display:flex;
  align-items:center;
  gap: 12px;
  min-width: 200px;
}
.u-brand__mark{
  width: 40px;
  height: 40px;
  border-radius: 14px;
  display:grid;
  place-items:center;
  font-weight: 900;
  background:
    radial-gradient(16px 16px at 30% 30%, rgba(255,255,255,.18), transparent 60%),
    linear-gradient(135deg, rgba(139,92,246,.40), rgba(168,85,247,.26));
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 18px 55px rgba(139,92,246,.18);
}
.u-brand__text{ line-height: 1.05; }
.u-brand__name{ font-weight: 900; font-size: 15px; }
.u-brand__tag{
  display:block;
  margin-top: 4px;
  font-size: 12px;
  color: var(--muted2);
}

/* nav */
.u-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 14px;
}
.u-nav__link{
  position:relative;
  padding: 10px 10px;
  border-radius: 12px;
  color: var(--muted);
  font-weight: 800;
  border: 1px solid transparent;
  transition: .15s ease;
}
.u-nav__link:hover{
  color: var(--text);
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.08);
}
.u-nav__link.is-active{
  color: var(--text);
  background: rgba(139,92,246,.12);
  border-color: rgba(139,92,246,.22);
}
.u-nav__link.is-active::after{
  content:"";
  position:absolute;
  left: 10px;
  right: 10px;
  bottom: 6px;
  height: 2px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--p1), var(--p2));
  box-shadow: 0 0 18px rgba(139,92,246,.35);
}

/* actions + buttons */
.u-actions{
  display:flex;
  align-items:center;
  gap: 10px;
}

.u-btn{
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: var(--text);
  border-radius: 14px;
  padding: 10px 14px;
  font-weight: 900;
  cursor:pointer;
  transition: .15s ease;
  white-space: nowrap;
}
.u-btn:hover{
  transform: translateY(-1px);
  border-color: rgba(139,92,246,.22);
  box-shadow: 0 16px 50px rgba(139,92,246,.12);
}
.u-btn--ghost{
  background: rgba(255,255,255,.03);
  color: rgba(238,240,255,.88);
}
.u-btn--primary{
  border-color: rgba(139,92,246,.30);
  background:
    radial-gradient(240px 120px at 20% 30%, rgba(255,255,255,.16), transparent 60%),
    linear-gradient(135deg, rgba(139,92,246,.95), rgba(168,85,247,.88));
  color: #080616;
  box-shadow: 0 18px 70px rgba(139,92,246,.22);
}
.u-btn--primary:hover{
  box-shadow: 0 24px 95px rgba(139,92,246,.30);
}
.u-btn--wide{ width:100%; justify-content:center; display:flex; }

/* burger */
.u-burger{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  cursor:pointer;
  padding: 10px;
  display:none;
  gap: 6px;
  flex-direction: column;
  justify-content: center;
}
.u-burger span{
  display:block;
  height: 2px;
  border-radius: 99px;
  background: rgba(238,240,255,.85);
}

/* mobile menu */
.u-mobile{
  display:none;
  max-width: var(--container);
  margin: 10px auto 0;
  border-radius: 18px;
  border:1px solid rgba(255,255,255,.08);
  background: rgba(10,10,26,.86);
  box-shadow: var(--shadow2);
  overflow:hidden;
}
.u-header.is-open .u-mobile{ display:block; }

.u-mobile__nav{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 12px;
}
.u-mobile__link{
  padding: 12px 12px;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
  color: rgba(238,240,255,.90);
  font-weight: 900;
}
.u-mobile__link:hover{
  border-color: rgba(139,92,246,.20);
  background: rgba(139,92,246,.10);
}
.u-mobile__link.is-active{
  border-color: rgba(139,92,246,.25);
  background: rgba(139,92,246,.12);
}
.u-mobile__actions{
  padding: 12px;
  border-top: 1px solid rgba(255,255,255,.06);
  display:grid;
  gap:10px;
}

/* responsive header */
@media (max-width: 980px){
  .u-header__inner{ grid-template-columns: 1fr auto; }
  .u-nav{ display:none; }
  .u-actions{ display:none; }
  .u-burger{ display:flex; }
}

.hero{
  max-width: var(--container);
  margin: 16px auto 0;
  padding: 0 16px;
}

.hero-content{
  width: 100%;
  max-width: none;
  position: relative;
  overflow: hidden;

  border-radius: var(--r24);
  border: 1px solid rgba(255,255,255,.08);

  background:
    radial-gradient(700px 280px at 12% 12%, rgba(139,92,246,.22), transparent 60%),
    radial-gradient(700px 280px at 85% 28%, rgba(168,85,247,.18), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));

  box-shadow: var(--shadow2);
  padding: 52px 42px;
}



.hero-content::after{
  content:"";
  position:absolute; inset:-2px;
  background:
    radial-gradient(550px 260px at 30% 30%, rgba(139,92,246,.08), transparent 60%),
    radial-gradient(550px 260px at 70% 60%, rgba(168,85,247,.06), transparent 60%);
  pointer-events:none;
}

.hero-content h1{
  position:relative;
  z-index:1;
  margin:0 0 10px;
  font-size: 52px;
  letter-spacing: .8px;
  line-height: 1.03;
  text-shadow: 0 18px 70px rgba(139,92,246,.12);
}

.hero-content p{
  position:relative;
  z-index:1;
  margin:0;
  max-width: 680px;
  color: var(--muted);
  font-weight: 700;
  line-height: 1.5;
}

.hero-actions{
  position:relative;
  z-index:1;
  margin-top: 20px;
  display:flex;
  gap: 12px;
  flex-wrap: wrap;
}

/* main purple button */
.glow-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 14px 18px;
  border-radius: 14px;
  border: 1px solid rgba(139,92,246,.30);
  background:
    radial-gradient(240px 120px at 20% 30%, rgba(255,255,255,.16), transparent 60%),
    linear-gradient(135deg, rgba(139,92,246,.95), rgba(168,85,247,.88));
  color:#080616;
  font-weight: 900;
  cursor:pointer;
  transition: .15s ease;
  box-shadow: 0 20px 80px rgba(139,92,246,.22);
  text-decoration:none;
}
.glow-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 26px 110px rgba(139,92,246,.30);
}

/* secondary button */
.ghost-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 14px 18px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: rgba(238,240,255,.92);
  font-weight: 900;
  cursor:pointer;
  transition:.15s ease;
}
.ghost-btn:hover{
  transform: translateY(-1px);
  border-color: rgba(139,92,246,.22);
  box-shadow: 0 16px 60px rgba(139,92,246,.12);
}

/* badges */
.hero-badges{
  position:relative;
  z-index:1;
  margin-top: 16px;
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}
.badge{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: rgba(238,240,255,.85);
  font-weight: 800;
  font-size: 12px;
}

/* responsive hero */
@media (max-width: 720px){
  .hero-content{ padding: 40px 18px; }
  .hero-content h1{ font-size: 38px; }
}

/* =========================
   HOME BLOCKS (3 cards)
========================= */
.home-blocks{
  max-width: var(--container);
  margin: 16px auto 40px;
  padding: 0 16px;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.home-card{
  border-radius: var(--r20);
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
  box-shadow: var(--shadow2);
  padding: 18px;
}
.home-card__title{
  font-weight: 900;
  margin-bottom: 10px;
}
.home-card__text{
  color: rgba(238,240,255,.70);
  font-weight: 700;
  line-height: 1.5;
}

/* link */
.link{
  color: rgba(238,240,255,.92);
  font-weight: 900;
}
.link:hover{
  color: white;
  text-shadow: 0 0 18px rgba(139,92,246,.22);
}

/* responsive blocks */
@media (max-width: 980px){
  .home-blocks{ grid-template-columns: 1fr; }
}

/* =========================
   (OPTIONAL) Modal styles
   Если на главной модалки нет — просто игнорируется.
========================= */
.modal{
  display:none;
  position:fixed;
  inset:0;
  background: rgba(0,0,0,.70);
  align-items:center;
  justify-content:center;
  padding: 18px;
  z-index: 100;
}
.modal-box{
  width:min(520px, 100%);
  border-radius: var(--r24);
  border:1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(500px 220px at 20% 0%, rgba(139,92,246,.16), transparent 60%),
    radial-gradient(500px 220px at 80% 20%, rgba(168,85,247,.12), transparent 60%),
    rgba(10,10,24,.92);
  box-shadow: var(--shadow);
  padding: 18px;
  position:relative;
  color: var(--text);
}
.modal-box img{
  width: 120px;
  height: 120px;
  object-fit: contain;
  image-rendering: pixelated;
  margin: 10px auto 12px;
  border-radius: var(--r16);
  border:1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
  padding: 10px;
}
.modal-box h2{
  margin: 0;
  text-align:center;
}
.modal-box p{
  margin: 10px 0 0;
  text-align:center;
  color: var(--muted);
  font-weight: 700;
}
.modal-box input{
  width: 100%;
  margin-top: 14px;
  padding: 13px 12px;
  border-radius: var(--r16);
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: var(--text);
  outline:none;
  font-weight: 800;
}
.close{
  position:absolute;
  right: 14px;
  top: 10px;
  width: 40px;
  height: 40px;
  border-radius: 14px;
  display:grid;
  place-items:center;
  cursor:pointer;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
}
.error{
  margin-top: 10px;
  color: #ff6b6b;
  font-weight: 900;
  text-align:center;
}

/* small polish */
::selection{ background: rgba(139,92,246,.35); }
/* FOOTER (как на скрине, но в вашем чёрно-фиолетовом стиле) */


.rw-footer__inner{
  max-width: var(--container, 1200px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 320px 1fr 240px 170px;
  gap: 22px;
  align-items: start;
}

/* left brand */
.rw-footer__brand{
  display:flex;
  gap: 14px;
  align-items: center;
  min-width: 260px;
}
.rw-footer__logo{
  width: 46px;
  height: 46px;
  border-radius: 16px;
  display:grid;
  place-items:center;
  font-weight: 1000;
  color: #0a0615;
  background:
    radial-gradient(18px 18px at 30% 30%, rgba(255,255,255,.18), transparent 60%),
    linear-gradient(135deg, rgba(139,92,246,.95), rgba(168,85,247,.88));
  box-shadow: 0 18px 70px rgba(139,92,246,.22);
  border: 1px solid rgba(139,92,246,.25);
}
.rw-footer__name{
  font-weight: 1000;
  letter-spacing: .6px;
  color: rgba(238,240,255,.92);
}
.rw-footer__copy{
  margin-top: 4px;
  font-size: 12px;
  color: rgba(238,240,255,.45);
  font-weight: 700;
}

/* center */
.rw-footer__center{min-width: 260px;}
.rw-footer__disclaimer{
  color: rgba(238,240,255,.70);
  font-weight: 700;
  font-size: 13px;
  line-height: 1.55;
}
.rw-footer__docs{
  margin-top: 12px;
  display:flex;
  flex-direction: column;
  gap: 8px;
}
.rw-footer__docs a{
  font-weight: 900;
  font-size: 13px;
  color: rgba(238,240,255,.88);
  text-decoration: none;
  width: fit-content;
  border-bottom: 1px solid rgba(139,92,246,.22);
}
.rw-footer__docs a:hover{
  color: #fff;
  border-bottom-color: rgba(139,92,246,.55);
  text-shadow: 0 0 18px rgba(139,92,246,.18);
}

/* right nav */
.rw-footer__nav{
  display:flex;
  flex-direction: column;
  gap: 10px;
}
.rw-footer__nav a{
  font-size: 13px;
  font-weight: 800;
  color: rgba(238,240,255,.72);
  text-decoration:none;
}
.rw-footer__nav a:hover{
  color: rgba(238,240,255,.95);
}

/* socials */
.rw-footer__socials{
  display:flex;
  justify-content:flex-end;
  gap: 10px;
}
.rw-soc{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display:grid;
  place-items:center;
  font-weight: 1000;
  font-size: 12px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: rgba(238,240,255,.90);
  text-decoration:none;
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
  transition: .15s ease;
}
.rw-soc:hover{
  transform: translateY(-1px);
  border-color: rgba(139,92,246,.22);
  box-shadow: 0 22px 80px rgba(139,92,246,.14);
}
.rw-soc--vk{ background: rgba(74,163,255,.12); border-color: rgba(74,163,255,.20); }
.rw-soc--yt{ background: rgba(255,90,90,.10); border-color: rgba(255,90,90,.18); }
.rw-soc--ds{ background: rgba(139,92,246,.14); border-color: rgba(139,92,246,.22); }

/* responsive */
@media (max-width: 980px){
  .rw-footer__inner{
    grid-template-columns: 1fr;
  }
  .rw-footer__socials{ justify-content:flex-start; }
}
/* ===== Sticky Footer Layout ===== */

html, body{
  height: 100%;
}

body{
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* основной контент растягивается */
.page-content{
  flex: 1;
}

/* футер */
.rw-footer{
  margin-top: auto;
  padding: 20px;
  background: #0a0716;
  border-top: 1px solid rgba(255,255,255,.06);
}
/* ===== ОДИНАКОВАЯ СЕТКА как на скрине ===== */

/* общий контейнер для hero и 3 карточек */
.page-wrap{
  max-width: 1200px;     /* ширина как на скрине */
  margin: 16px auto 0;
  padding: 0 16px;       /* одинаковые боковые отступы */
}

/* hero не должен иметь своих max-width/padding по бокам */
.hero{
  margin: 0;
  padding: 0;
}

/* главное: hero растягивается на всю ширину контейнера */
.hero-content{
  width: 100%;
  max-width: none;
  margin: 0;
}

/* 3 карточки тоже на всю ширину контейнера */

/* ===== PARTCLES BACKGROUND ===== */

#particles-bg{
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
}
/* =========================
   SHOP PAGE
========================= */
.shop-hero{ margin-top: 16px; }
.shop-hero__card{
  border-radius: var(--r24);
  border: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(700px 280px at 10% 20%, rgba(139,92,246,.18), transparent 60%),
    radial-gradient(700px 280px at 85% 30%, rgba(168,85,247,.14), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  box-shadow: var(--shadow2);
  padding: 24px;
  display:flex;
  justify-content: space-between;
  gap: 18px;
}
.shop-hero__title{ margin:0; font-size: 34px; font-weight: 1000; }
.shop-hero__sub{ margin:10px 0 0; color: var(--muted); font-weight: 700; line-height: 1.5; max-width: 760px; }

.shop-hero__tools{ margin-top: 16px; display:flex; gap: 12px; flex-wrap: wrap; }

.shop-filters{ display:flex; gap: 10px; flex-wrap: wrap; }
.shop-filter{
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: rgba(238,240,255,.88);
  font-weight: 900;
  cursor: pointer;
  transition: .15s ease;
}
.shop-filter:hover{ border-color: rgba(139,92,246,.22); box-shadow: 0 18px 50px rgba(139,92,246,.12); transform: translateY(-1px); }
.shop-filter.is-active{
  border-color: rgba(139,92,246,.28);
  background: rgba(139,92,246,.12);
  color: #fff;
}

.shop-search{ flex: 1; min-width: 260px; }
.shop-search__input{
  width: 100%;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: rgba(238,240,255,.92);
  outline: none;
  font-weight: 800;
}
.shop-search__input:focus{ border-color: rgba(139,92,246,.28); box-shadow: 0 0 0 4px rgba(139,92,246,.10); }

.shop-mini{
  min-width: 220px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  padding: 14px;
}
.shop-mini__label{ color: var(--muted2); font-weight: 800; font-size: 12px; }
.shop-mini__value{ font-weight: 1000; font-size: 16px; margin: 6px 0 10px; }

.shop-grid{
  margin: 16px 0 40px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 14px;
}

.shop-card{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
  box-shadow: var(--shadow2);
  padding: 0;
  text-align: left;
  cursor:pointer;
  overflow:hidden;
  transition: .15s ease;
}
.shop-card:hover{
  transform: translateY(-2px);
  border-color: rgba(139,92,246,.18);
  box-shadow: 0 30px 110px rgba(139,92,246,.14);
}
.shop-card__imgWrap{
  background: rgba(255,255,255,.02);
  padding: 18px;
  display:flex;
  justify-content:center;
  align-items:center;
}
.shop-card__img{
  width: 128px;
  height: 128px;
  object-fit: contain;
  image-rendering: pixelated;
  filter: drop-shadow(0 14px 20px rgba(255, 255, 255, 0.4));
}
.shop-card__body{ padding: 14px 14px 16px; }
.shop-card__title{ font-weight: 1000; }
.shop-card__sub{ margin-top: 6px; color: var(--muted); font-weight: 700; font-size: 13px; }
.shop-card__bottom{
  margin-top: 12px;
  display:flex;
  justify-content: space-between;
  align-items:center;
  gap: 10px;
}
.shop-card__price{ font-weight: 1000; }
.shop-card__tag{
  font-size: 12px;
  font-weight: 900;
  color: rgba(238,240,255,.88);
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
}

.shop-modal{ max-width: 720px; }
.shop-modal__top{
  display:flex;
  gap: 14px;
  align-items: center;
}
.shop-modal__top img{
  width: 292px;
  height: 292px;
  padding: 10px;
  border-radius: 18px;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.08);
}
.shop-modal__sub{ color: var(--muted2); font-weight: 800; margin-top: 6px; }
.shop-modal__row{
  display:flex;
  gap: 12px;
  margin-top: 14px;
  align-items:center;
}
.shop-modal__row input{
  flex: 1;
}
.shop-modal__price{
  min-width: 110px;
  text-align:center;
  font-weight: 1000;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
}

@media (max-width: 1100px){
  .shop-grid{ grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 820px){
  .shop-hero__card{ flex-direction: column; }
  .shop-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
  .shop-modal__row{ flex-direction: column; align-items: stretch; }
  .shop-modal__price{ width: 100%; }
}
@media (max-width: 520px){
  .shop-grid{ grid-template-columns: 1fr; }
}
.shop-card__title{
  font-size: 25px;
  font-family: 'Minecraft', monospace;
  color: #a855f7;
  letter-spacing: 1px;
}


.shop-card__price{
  font-weight: 1000;
  background: linear-gradient(90deg, #facc15, #f59e0b);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
/* ===== BUY MODAL (как на скрине) ===== */
.modal{
  display:none;
  position:fixed;
  inset:0;
  background: rgba(0,0,0,.72);
  backdrop-filter: blur(6px);
  z-index: 120;
  align-items:center;
  justify-content:center;
  padding: 18px;
}

.modal.is-open{ display:flex; }

.buy{
  width: min(560px, 100%);
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(16,16,26,.92);
  box-shadow: 0 30px 120px rgba(0,0,0,.65);
  position: relative;
  padding: 18px 18px 16px;
  color: rgba(238,240,255,.95);
}

.buy__close{
  position:absolute;
  top: 14px;
  right: 14px;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  color: rgba(130,180,255,.95);
  font-size: 18px;
  cursor:pointer;
}

.buy__head{
  display:flex;
  gap: 14px;
  align-items:center;
  padding: 10px 6px 14px;
}

.buy__icon{
  width: 56px;
  height: 56px;
  object-fit: contain;
  image-rendering: pixelated;
  filter: drop-shadow(0 14px 20px rgba(0,0,0,.45));
}

.buy__title{
  font-weight: 1000;
  font-size: 20px;
  letter-spacing: .2px;
}

.buy__subtitle{
  margin-top: 4px;
  color: rgba(238,240,255,.55);
  font-weight: 700;
  font-size: 13px;
}

.buy__form{ padding: 2px 6px 6px; }

.buy__field{ display:block; margin-top: 12px; }

.buy__input{
  width: 100%;
  padding: 13px 14px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
  color: rgba(238,240,255,.92);
  outline: none;
  font-weight: 800;
}

.buy__input:focus{
  border-color: rgba(139,92,246,.28);
  box-shadow: 0 0 0 4px rgba(139,92,246,.10);
}

.buy__methods{
  margin-top: 14px;
  display:grid;
  gap: 10px;
}

.method{
  width: 100%;
  text-align:left;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
  padding: 12px 14px;
  cursor:pointer;
  transition: .15s ease;
  color: rgba(238,240,255,.90);
}

.method:hover{
  transform: translateY(-1px);
  border-color: rgba(139,92,246,.20);
  box-shadow: 0 18px 60px rgba(139,92,246,.10);
}

.method.is-active{
  background: rgba(74,163,255,.22);
  border-color: rgba(74,163,255,.28);
}

.method__top{
  display:flex;
  align-items:center;
  gap: 10px;
}

.method__flag{
  width: 30px;
  height: 30px;
  border-radius: 10px;
  display:grid;
  place-items:center;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
}

.method__name{ font-weight: 1000; }
.method__sub{
  margin-top: 4px;
  color: rgba(238,240,255,.55);
  font-weight: 700;
  font-size: 12px;
}

.buy__pay{
  margin-top: 14px;
  width: 100%;
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(110,160,255,.50);
  color: rgba(238,240,255,.95);
  font-weight: 1000;
  cursor:pointer;
  transition: .15s ease;
}

.buy__pay:hover{
  transform: translateY(-1px);
  filter: brightness(1.04);
}

.buy__pay:disabled{
  opacity: .65;
  cursor: not-allowed;
  transform:none;
}

.buy__fineprint{
  margin-top: 10px;
  text-align:center;
  font-weight: 700;
  font-size: 12px;
  color: rgba(238,240,255,.55);
}

.buy__fineprint a{
  color: rgba(130,180,255,.95);
  font-weight: 900;
  text-decoration:none;
}

.buy__fineprint a:hover{
  text-decoration: underline;
}

.buy__err{
  margin-top: 10px;
  text-align:center;
  font-weight: 900;
  color: #ff6b6b;
  min-height: 18px;
}
.curbox{
  margin-top: 14px;
  padding: 14px;
  border-radius: 16px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
}
.curbox__title{
  font-weight: 700;
  font-size: 14px;
  margin-bottom: 10px;
}
.curbox__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom: 10px;
  opacity:.95;
}
.curbox__label{ font-size: 13px; opacity:.8; }
.curbox__val{ font-size: 13px; font-weight: 700; }

.curbox__range{
  width:100%;
  margin: 6px 0 14px;
  accent-color: #ffb000; /* можно убрать, если не хочешь цвет */
}

.curbox__cards{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.curbox__card{
  padding: 12px;
  border-radius: 14px;
  background: rgba(0,0,0,.22);
  border: 1px solid rgba(255,255,255,.08);
}
.curbox__cardLabel{
  font-size: 12px;
  opacity: .7;
  margin-bottom: 6px;
}
.curbox__cardValue{
  font-size: 18px;
  font-weight: 800;
}
.buy__priceInfo{
  margin-top: 8px;
  font-size: 14px;
  opacity: .9;
}
.buy__priceInfo s{ opacity: .7; }
.hero-online{
  margin-top: 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(10, 10, 20, .55);
  backdrop-filter: blur(10px);
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
}

.hero-online__left{ display:flex; align-items:center; gap:12px; }
.hero-online__dot{
  width:10px; height:10px; border-radius:50%;
  background: rgba(148,163,184,.8);
  box-shadow: 0 0 0 6px rgba(148,163,184,.12);
}
.hero-online.is-online .hero-online__dot{
  background: rgba(34,197,94,.95);
  box-shadow: 0 0 0 6px rgba(34,197,94,.14);
}
.hero-online.is-offline .hero-online__dot{
  background: rgba(239,68,68,.95);
  box-shadow: 0 0 0 6px rgba(239,68,68,.14);
}

.hero-online__title{
  font-weight:700;
  letter-spacing:.2px;
  opacity:.9;
  font-size:13px;
}
.hero-online__value{
  margin-top:2px;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:14px;
  opacity:.95;
}
.hero-online__sep{ opacity:.35; }

.hero-online__right{ display:flex; align-items:center; gap:10px; }
.hero-online__badge{
  font-size:12px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(139,92,246,.16);
}
.hero-online__ver{
  font-size:12px;
  opacity:.8;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
}
.u-brand {
    display: flex;
    align-items: center;
    gap: 10px;
}
.u-brand__logo {
    height: 40px;
    width: auto;
    display: block;
}


.rw-soc {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #111827;
    border-radius: 10px;
    transition: 0.2s ease;
}

.rw-soc img {
    width: 20px;
    height: 20px;
    filter: invert(1); /* делает иконки белыми для темной темы */
}

.rw-soc:hover {
    background: #1f2937;
    transform: translateY(-2px);
}

.rw-soc[aria-label="VK"]:hover { color: #4C75A3; }
.rw-soc[aria-label="YouTube"]:hover { color: #FF0000; }
.rw-soc[aria-label="Discord"]:hover { color: #5865F2; }
filter: invert(1);
/* ===== RULES PAGE ===== */
.rules-hero{ margin-top: 16px; }
.rules-hero__card{
  border-radius: var(--r24);
  border: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(700px 280px at 12% 12%, rgba(139,92,246,.18), transparent 60%),
    radial-gradient(700px 280px at 85% 30%, rgba(168,85,247,.14), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  box-shadow: var(--shadow2);
  padding: 22px;
}
.rules-hero__title{
  font-size: 26px;
  font-weight: 1000;
}
.rules-hero__sub{
  margin-top: 8px;
  color: var(--muted);
  font-weight: 700;
  line-height: 1.55;
}
.rules-hero__badges{
  margin-top: 14px;
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}

.rules{ margin: 16px 0 40px; }

.rules-acc{
  display:grid;
  gap: 12px;
}

.acc-item{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
  box-shadow: var(--shadow2);
  overflow:hidden;
}

.acc-btn{
  width: 100%;
  display:flex;
  align-items:center;
  gap: 12px;
  padding: 14px 14px;
  cursor:pointer;
  border: 0;
  background: transparent;
  color: rgba(238,240,255,.95);
  font-weight: 1000;
}

.acc-num{
  width: 34px;
  height: 34px;
  border-radius: 12px;
  display:grid;
  place-items:center;
  background: rgba(139,92,246,.14);
  border: 1px solid rgba(139,92,246,.22);
  color: rgba(238,240,255,.95);
}

.acc-title{ flex: 1; text-align:left; }
.acc-ico{
  opacity:.75;
  transition: transform .15s ease;
}

.acc-btn[aria-expanded="true"] .acc-ico{ transform: rotate(180deg); }

.acc-panel{
  padding: 0 14px 14px;
  border-top: 1px solid rgba(255,255,255,.06);
}

.rules-list{
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
  display:grid;
  gap: 10px;
}

.rules-list li{
  color: rgba(238,240,255,.75);
  font-weight: 700;
  line-height: 1.55;
}

.rules-list b{
  color: rgba(238,240,255,.95);
}

.rules-note{
  margin-top: 14px;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  color: rgba(238,240,255,.80);
  font-weight: 800;
}
/* ===== PRIVILEGES PAGE ===== */
.priv-nav{
  margin: 14px 0 10px;
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}

.priv-chip{
  display:inline-flex;
  align-items:center;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  color: rgba(238,240,255,.85);
  font-weight: 900;
  font-size: 13px;
  text-decoration:none;
}
.priv-chip:hover{
  border-color: rgba(139,92,246,.22);
  box-shadow: 0 18px 60px rgba(139,92,246,.10);
  transform: translateY(-1px);
}

.priv-list{
  margin: 14px 0 40px;
  display:grid;
  gap: 14px;
}

.priv-card{
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
  box-shadow: var(--shadow2);
  overflow:hidden;
}

.priv-card__head{
  padding: 16px 16px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
}

.priv-card__left{
  display:flex;
  align-items:center;
  gap: 12px;
}

.priv-rank{
  width: 46px;
  height: 46px;
  border-radius: 16px;
  display:grid;
  place-items:center;
  font-size: 18px;
  font-weight: 1000;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
}

.priv-rank--raze{ background: rgba(34,197,94,.10); border-color: rgba(34,197,94,.18); }
.priv-rank--fusion{ background: rgba(250,204,21,.10); border-color: rgba(250,204,21,.18); }
.priv-rank--matrix{ background: rgba(168,85,247,.12); border-color: rgba(168,85,247,.22); }
.priv-rank--phantom{ background: rgba(59,130,246,.10); border-color: rgba(59,130,246,.18); }
.priv-rank--phoenix{ background: rgba(245,158,11,.10); border-color: rgba(245,158,11,.18); }
.priv-rank--hyper{ background: rgba(239,68,68,.10); border-color: rgba(239,68,68,.18); }

.priv-card__title{
  font-weight: 1000;
  font-size: 18px;
  letter-spacing: .2px;
}

.priv-tag{
  margin-left: 8px;
  padding: 4px 8px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  color: rgba(238,240,255,.78);
  font-weight: 900;
  font-size: 12px;
}

.priv-card__subtitle{
  margin-top: 4px;
  color: rgba(238,240,255,.55);
  font-weight: 700;
  font-size: 13px;
}

.priv-card__right{
  display:flex;
  align-items:center;
  gap: 10px;
}

.priv-price{
  text-align:right;
  line-height: 1.1;
}
.priv-price span{
  display:block;
  color: rgba(238,240,255,.50);
  font-weight: 800;
  font-size: 12px;
}
.priv-price b{
  display:block;
  font-size: 18px;
  font-weight: 1000;
  background: linear-gradient(90deg, #8b5cf6, #a855f7);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.acc-btn--priv{
  border-top: 1px solid rgba(255,255,255,.06);
  width:100%;
  padding: 12px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background: rgba(255,255,255,.02);
  color: rgba(238,240,255,.92);
  font-weight: 1000;
  cursor:pointer;
  border-left:0;border-right:0;border-bottom:0;
}
.acc-btn--priv .acc-ico{
  opacity:.75;
  transition: transform .15s ease;
}
.acc-btn--priv[aria-expanded="true"] .acc-ico{ transform: rotate(180deg); }

.priv-grid{
  padding: 14px 16px 16px;
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 14px;
}

.priv-col{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.02);
  padding: 14px;
}

.priv-sec{
  font-weight: 1000;
  margin-bottom: 10px;
}

.priv-ul{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap: 10px;
  color: rgba(238,240,255,.72);
  font-weight: 750;
  line-height: 1.45;
}

.priv-ul code{
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  color: rgba(238,240,255,.92);
  font-weight: 900;
}

.priv-mini{
  color: rgba(238,240,255,.55);
  font-weight: 800;
  margin-left: 6px;
}

.n{ font-weight: 1000; }
.n--aqua{ color: #60a5fa; }
.n--green{ color: #22c55e; }

@media (max-width: 980px){
  .priv-card__head{ flex-direction: column; align-items: flex-start; }
  .priv-card__right{ width:100%; justify-content:space-between; }
  .priv-grid{ grid-template-columns: 1fr; }
}
<style>
/* =========================
   NOTIFY TOASTS
========================= */
.notify-stack{
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 999999; /* поверх всего */
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: min(360px, calc(100% - 26px));
  pointer-events: none;
}

.notify{
  pointer-events: auto;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(10,8,18,.88);
  backdrop-filter: blur(10px);
  box-shadow: 0 18px 50px rgba(0,0,0,.55);
  padding: 12px 12px 12px 12px;
  position: relative;
  overflow: hidden;
  transform: translateY(8px);
  opacity: 0;
  transition: transform .22s ease, opacity .22s ease;
}

.notify.is-show{
  transform: translateY(0);
  opacity: 1;
}

.notify__row{
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

.notify__icon{
  width: 34px;
  height: 34px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  font-size: 16px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.10);
  flex: 0 0 auto;
}

.notify__title{
  font-weight: 900;
  font-size: 14px;
  line-height: 1.1;
  margin-top: 1px;
}

.notify__text{
  margin-top: 4px;
  font-size: 13px;
  opacity: .86;
  line-height: 1.25;
}

.notify__close{
  position: absolute;
  top: 10px;
  right: 10px;
  width: 28px;
  height: 28px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
  color: #fff;
  cursor: pointer;
}

.notify__bar{
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 2px;
  background: rgba(255,255,255,.10);
}
.notify__bar > i{
  display: block;
  height: 100%;
  width: 100%;
  transform-origin: left;
  transform: scaleX(1);
  background: rgba(168,85,247,.9);
}

/* types */
.notify[data-type="success"] .notify__icon{ background: rgba(34,197,94,.14); border-color: rgba(34,197,94,.25); }
.notify[data-type="warn"]    .notify__icon{ background: rgba(251,191,36,.14); border-color: rgba(251,191,36,.25); }
.notify[data-type="error"]   .notify__icon{ background: rgba(239,68,68,.14); border-color: rgba(239,68,68,.25); }
.notify[data-type="info"]    .notify__icon{ background: rgba(168,85,247,.14); border-color: rgba(168,85,247,.25); }

@media (max-width: 520px){
  .notify-stack{ right: 12px; bottom: 12px; }
}

/* =========================
   LOGIN CENTER FIX
========================= */

.auth-page {
  min-height: calc(100vh - 160px); /* учитываем хедер+футер */
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
}

.auth-wrapper {
  width: 100%;
  max-width: 420px;
  margin: 0 auto;
}
.auth-page {
  min-height: calc(100vh - 160px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
}

.auth-wrapper {
  width: 100%;
  max-width: 420px;
}

.auth-card {
  background: rgba(15,15,25,0.9);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  padding: 40px 30px;
  backdrop-filter: blur(10px);
  box-shadow: 0 30px 80px rgba(0,0,0,0.6);
}

.auth-title {
  text-align: center;
  font-size: 28px;
  font-weight: 800;
}

.auth-sub {
  text-align: center;
  opacity: .6;
  margin-bottom: 25px;
}

.auth-form label {
  display: block;
  margin-top: 15px;
  margin-bottom: 6px;
  font-size: 14px;
}

.auth-form input {
  width: 100%;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.05);
  color: #fff;
  outline: none;
}

.auth-error {
  background: rgba(255,0,0,.1);
  border: 1px solid rgba(255,0,0,.3);
  padding: 10px;
  border-radius: 12px;
  margin-bottom: 15px;
}

.auth-note {
  margin-top: 20px;
  text-align: center;
  font-size: 13px;
  opacity: .6;
}
