
/* =========================================================
   REALBOYS CLEAN FINAL 2026
   Один чистый слой вместо множества фиксов.
   Основа UniGameCMS сохранена. PHP не менялся.
   ========================================================= */

:root{
  --rb-bg:#070b12;
  --rb-bg2:#0b1320;
  --rb-panel:#111827;
  --rb-panel2:#151d2b;
  --rb-border:rgba(118,145,184,.24);
  --rb-border2:rgba(255,255,255,.08);
  --rb-red:#ff3654;
  --rb-red2:#ff6d82;
  --rb-blue:#4aa8ff;
  --rb-cyan:#22d7c8;
  --rb-gold:#ffd84d;
  --rb-green:#3fe07e;
  --rb-violet:#975cff;
  --rb-text:#eef5ff;
  --rb-soft:#d4deee;
  --rb-muted:#a9b7ca;
  --rb-shadow:0 16px 42px rgba(0,0,0,.34);
}

html,body{
  background:
    radial-gradient(circle at 9% 18%,rgba(255,54,84,.14),transparent 30%),
    radial-gradient(circle at 84% 8%,rgba(74,168,255,.16),transparent 28%),
    linear-gradient(135deg,#070b12 0%,#0a1423 48%,#10162a 100%) !important;
  color:var(--rb-text) !important;
}

body,td,th,p,li,span,small,label,.form-control{
  color:var(--rb-soft);
}

a{color:#82bfff;}
a:hover{color:#c7e4ff;}

/* ---------- clean layout ---------- */
.wapper .container,
.container{
  max-width:1360px;
}

.content,
.rb-shell-page,
.rb-site-shell .content{
  background:transparent !important;
}

/* ---------- header / menu ---------- */
.header,
.wapper .header{
  position:sticky !important;
  top:0 !important;
  z-index:99990 !important;
  overflow:visible !important;
  background:linear-gradient(180deg,rgba(8,12,19,.97),rgba(7,10,16,.94)) !important;
  border-bottom:1px solid rgba(255,255,255,.07) !important;
  box-shadow:0 12px 32px rgba(0,0,0,.30);
  backdrop-filter:blur(10px);
}

.header .container{
  min-height:78px;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  overflow:visible !important;
}

.header #hidden-menu,
.header .collapse,
.header .rb-header-menu{
  width:100% !important;
  overflow:visible !important;
}

.collapsible-menu{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  flex-wrap:nowrap !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
  list-style:none !important;
}

.collapsible-menu > li{
  position:relative !important;
  flex:0 1 auto !important;
  min-width:0 !important;
}

.collapsible-menu > li > a{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  min-height:52px !important;
  max-height:52px !important;
  padding:0 16px !important;
  max-width:156px !important;
  border-radius:19px !important;
  background:linear-gradient(180deg,rgba(31,36,50,.98),rgba(21,27,39,.98)) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:var(--rb-text) !important;
  text-decoration:none !important;
  font-weight:800 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 22px rgba(0,0,0,.22);
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}

.collapsible-menu > li > a:hover,
.collapsible-menu > li.open > a,
.collapsible-menu > li.rb-menu-open > a{
  transform:translateY(-1px);
  border-color:rgba(255,54,84,.62) !important;
  background:linear-gradient(180deg,rgba(54,30,42,.98),rgba(28,25,38,.98)) !important;
  box-shadow:0 0 22px rgba(255,54,84,.20),0 14px 30px rgba(0,0,0,.30);
}

/* invisible bridge: dropdown no longer closes when moving mouse down */
.collapsible-menu > li:has(> ul)::after,
.collapsible-menu > li:has(> .dropdown-menu)::after{
  content:"";
  position:absolute;
  left:0;right:0;top:100%;
  height:18px;
  background:transparent;
  z-index:100040;
}

.collapsible-menu li ul,
.collapsible-menu .dropdown-menu,
.header .dropdown-menu{
  position:absolute !important;
  top:calc(100% + 6px) !important;
  left:0 !important;
  min-width:250px !important;
  max-width:340px !important;
  padding:10px !important;
  border-radius:18px !important;
  background:rgba(14,20,31,.99) !important;
  border:1px solid rgba(96,123,160,.36) !important;
  box-shadow:0 22px 58px rgba(0,0,0,.48),0 0 0 1px rgba(255,255,255,.04) !important;
  z-index:100060 !important;
  overflow:visible !important;
  display:none;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(4px);
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease !important;
}

.collapsible-menu li:hover > ul,
.collapsible-menu li:hover > .dropdown-menu,
.collapsible-menu li:focus-within > ul,
.collapsible-menu li:focus-within > .dropdown-menu,
.collapsible-menu li.rb-menu-open > ul,
.collapsible-menu li.rb-menu-open > .dropdown-menu,
.collapsible-menu .dropdown-menu.show{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}

.collapsible-menu li ul a,
.collapsible-menu .dropdown-menu a{
  display:block !important;
  width:100% !important;
  padding:12px 14px !important;
  border-radius:12px !important;
  color:var(--rb-soft) !important;
  text-decoration:none !important;
  white-space:normal !important;
}

.collapsible-menu li ul a:hover,
.collapsible-menu .dropdown-menu a:hover{
  color:#fff !important;
  background:rgba(255,54,84,.14) !important;
}

.collapsible-menu img,
.header img.avatar,
.header .avatar{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  max-width:42px !important;
  max-height:42px !important;
  object-fit:cover !important;
  border-radius:13px !important;
}

.collapsible-menu > li.rb-profile-menu-item{
  order:999 !important;
  flex:0 0 auto !important;
}

.collapsible-menu > li.rb-menu-events-hidden{
  display:none !important;
}

/* ---------- breadcrumb ---------- */
.navigation{
  background:linear-gradient(90deg,rgba(255,54,84,.13),rgba(74,168,255,.08),rgba(10,14,22,.70)) !important;
  border-top:1px solid rgba(255,255,255,.05) !important;
  border-bottom:1px solid rgba(255,255,255,.06) !important;
}
.breadcrumb,
.breadcrumb a{color:var(--rb-muted) !important;}

/* ---------- blocks ---------- */
.block,
.card,
.modal-content,
.popover,
.ticket-item,
.forum,
.profile,
.table-responsive,
.monitoring,
.monitoring-table,
.server,
.alert,
.vertical-navigation,
#notifications_line,
#site_stats,
#forum,
#new_news,
#events,
#load_last_online{
  background:linear-gradient(180deg,rgba(18,25,38,.95),rgba(13,19,30,.95)) !important;
  border:1px solid var(--rb-border) !important;
  border-radius:18px !important;
  box-shadow:var(--rb-shadow),inset 0 1px 0 rgba(255,255,255,.035) !important;
  color:var(--rb-text);
}

.block > .block_head,
.card-header,
.modal-header,
.panel-heading{
  position:relative !important;
  min-height:60px !important;
  padding:18px 20px !important;
  background:linear-gradient(90deg,rgba(255,54,84,.16),rgba(74,168,255,.09),rgba(255,255,255,.02)) !important;
  color:#fff !important;
  border-bottom:1px solid rgba(255,255,255,.07) !important;
  font-weight:900 !important;
  font-size:22px;
}

.block_head i,
.card-header i{color:var(--rb-red2);}

/* ---------- buttons / forms ---------- */
.btn,
button,
input[type=submit]{
  border-radius:12px !important;
  font-weight:800 !important;
}

.btn-primary,
button.btn-primary,
input.btn-primary{
  background:linear-gradient(180deg,#ff526b,#de2441) !important;
  border-color:#ff7587 !important;
  color:#fff !important;
  box-shadow:0 12px 26px rgba(255,54,84,.22);
}

.btn-primary:hover{
  background:linear-gradient(180deg,#ff6378,#ec314a) !important;
  border-color:#ff8b9a !important;
}

.btn-outline-primary,
.btn-secondary,
.btn-default,
button.btn-outline-primary{
  background:linear-gradient(180deg,rgba(28,36,52,.96),rgba(17,24,36,.96)) !important;
  border-color:rgba(116,142,176,.28) !important;
  color:var(--rb-text) !important;
}

.btn-outline-primary:hover,
.btn-secondary:hover,
.btn-default:hover{
  background:rgba(74,168,255,.13) !important;
  border-color:rgba(74,168,255,.46) !important;
}

.form-control,
input,
select,
textarea{
  background:rgba(8,13,22,.90) !important;
  border-color:rgba(116,142,176,.25) !important;
  color:var(--rb-text) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.form-control:focus,
input:focus,
select:focus,
textarea:focus{
  border-color:rgba(74,168,255,.70) !important;
  box-shadow:0 0 0 .2rem rgba(74,168,255,.14) !important;
}

/* ---------- guest home separated ---------- */
.rb-guest-clean{
  display:flex;
  flex-direction:column;
  gap:26px;
  width:100%;
}

.rb-guest-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:430px;
  padding:42px;
  border-radius:28px;
  border:1px solid rgba(118,145,184,.34);
  background:
    linear-gradient(90deg,rgba(5,9,15,.84),rgba(5,9,15,.36)),
    url('../img/rb-hero-bg.png') center/cover no-repeat,
    radial-gradient(circle at 20% 80%,rgba(255,54,84,.22),transparent 36%),
    linear-gradient(135deg,#09111d,#111a2d);
  box-shadow:var(--rb-shadow);
}

.rb-guest-hero::after{
  content:"";
  position:absolute;inset:0;z-index:1;
  background:radial-gradient(circle at 85% 18%,rgba(74,168,255,.17),transparent 30%);
  pointer-events:none;
}

.rb-guest-hero > *{position:relative;z-index:2;}

.rb-guest-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:12px 18px;
  border-radius:999px;
  background:rgba(255,54,84,.16);
  border:1px solid rgba(255,54,84,.52);
  color:#ffd7df;
  font-weight:900;
}

.rb-guest-hero h1{
  max-width:820px;
  margin:26px 0 18px;
  color:#fff;
  font-size:58px;
  line-height:1.06;
  font-weight:1000;
}

.rb-guest-hero p{
  max-width:720px;
  margin:0;
  color:#d8e4f5;
  font-size:22px;
  line-height:1.58;
}

.rb-guest-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:30px;
}

.rb-guest-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 22px;
  border-radius:15px;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:900;
}

.rb-guest-btn.primary{
  background:linear-gradient(180deg,#ff526b,#de2441);
  border:1px solid #ff7587;
}

.rb-guest-btn.dark{
  background:rgba(17,26,40,.95);
  border:1px solid rgba(116,142,176,.34);
}

.rb-guest-grid{
  display:grid;
  grid-template-columns:minmax(320px,.9fr) minmax(0,1.15fr);
  gap:24px;
}

.rb-guest-auth,
.rb-guest-monitoring,
.rb-guest-card{
  background:linear-gradient(180deg,rgba(18,25,38,.95),rgba(13,19,30,.95));
  border:1px solid var(--rb-border);
  border-radius:24px;
  box-shadow:var(--rb-shadow);
  padding:28px;
}

.rb-guest-auth h2,
.rb-guest-monitoring h2{
  margin:0 0 18px;
  color:#fff;
  font-size:38px;
  line-height:1.12;
  font-weight:1000;
}

.rb-guest-auth .block{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}

.rb-guest-auth .block_head{
  min-height:auto !important;
  padding:0 0 14px !important;
  background:transparent !important;
  border:0 !important;
  font-size:26px !important;
}

.rb-guest-auth .btn{
  width:100%;
  min-height:50px;
  margin-bottom:10px;
}

.rb-guest-monitoring .monitoring-table,
.rb-guest-monitoring .monitoring{
  margin:0 !important;
}

/* ---------- login/register separated ---------- */
.rb-auth-page-clean{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) 420px;
  gap:28px;
  align-items:stretch;
}

.rb-auth-hero{
  min-height:520px;
  padding:42px;
  border-radius:28px;
  border:1px solid rgba(118,145,184,.30);
  background:
    linear-gradient(90deg,rgba(5,9,15,.86),rgba(5,9,15,.44)),
    url('../img/rb-hero-bg.png') center/cover no-repeat,
    linear-gradient(135deg,#09111d,#111a2d);
  box-shadow:var(--rb-shadow);
}

.rb-auth-hero h1{
  margin:20px 0 16px;
  max-width:700px;
  color:#fff;
  font-size:54px;
  line-height:1.06;
  font-weight:1000;
}

.rb-auth-hero p{
  max-width:680px;
  color:#d8e4f5;
  font-size:21px;
  line-height:1.6;
}

.rb-auth-box{
  background:linear-gradient(180deg,rgba(18,25,38,.97),rgba(13,19,30,.97));
  border:1px solid var(--rb-border);
  border-radius:26px;
  box-shadow:var(--rb-shadow);
  padding:30px;
}

.rb-auth-box .block{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}

.rb-auth-box .block_head{
  min-height:auto !important;
  padding:0 0 18px !important;
  background:transparent !important;
  border:0 !important;
  font-size:30px !important;
}

.rb-auth-box .form-control{
  min-height:50px;
  margin-bottom:14px;
}

.rb-auth-box .btn{
  min-height:52px;
}

/* ---------- monitoring table ---------- */
.monitoring-table{
  border-radius:18px !important;
  overflow:hidden !important;
  background:linear-gradient(180deg,rgba(10,15,26,.97),rgba(8,13,23,.95)) !important;
  border:1px solid rgba(122,86,255,.42) !important;
  box-shadow:0 0 0 1px rgba(126,82,255,.12),0 0 32px rgba(78,48,161,.22),var(--rb-shadow) !important;
}

.monitoring-table .table{
  margin-bottom:0 !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  table-layout:fixed !important;
}

.monitoring-table thead td,
.monitoring-table thead th{
  background:linear-gradient(90deg,rgba(36,15,46,.82),rgba(8,20,40,.92)) !important;
  color:var(--rb-gold) !important;
  border-color:rgba(255,255,255,.08) !important;
  font-weight:900 !important;
  font-size:15px !important;
  padding:17px 16px !important;
}

.monitoring-table tbody td{
  background:rgba(8,15,28,.72) !important;
  color:#eaf2ff !important;
  border-color:rgba(255,255,255,.07) !important;
  padding:16px !important;
  vertical-align:middle !important;
}

.monitoring-table tbody tr:hover td{
  background:rgba(14,23,40,.95) !important;
}

.monitoring-table tbody td:nth-child(4),
.monitoring-table tbody td:nth-child(4) a{
  color:var(--rb-gold) !important;
  font-weight:800 !important;
}

.monitoring-table tbody td:nth-child(5){
  text-align:center !important;
  white-space:nowrap !important;
}

.monitoring-table tbody td:nth-child(5) a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:40px !important;
  height:34px !important;
  margin:0 4px !important;
  border-radius:10px !important;
  color:#fff !important;
  text-decoration:none !important;
  border:1px solid rgba(255,255,255,.10) !important;
}

.monitoring-table tbody td:nth-child(5) a:nth-child(1){background:linear-gradient(180deg,#74a8ff,#4d76d9) !important;}
.monitoring-table tbody td:nth-child(5) a:nth-child(2){background:linear-gradient(180deg,#55e6ac,#28b982) !important;}
.monitoring-table tbody td:nth-child(5) a:nth-child(3){background:linear-gradient(180deg,#67d9e8,#35a9bd) !important;}

.monitoring-table .servers-online-line,
.monitoring-table .progress.servers-online-line{
  position:relative !important;
  overflow:hidden !important;
  min-width:150px !important;
  height:30px !important;
  border-radius:9px !important;
  background:rgba(255,255,255,.09) !important;
  border:1px solid rgba(255,255,255,.08) !important;
}

.monitoring-table .servers-online-line .progress-bar{
  background:linear-gradient(90deg,#ff5665 0%,#ff9a4f 30%,#d2e258 56%,#4fe07c 78%,#6bc4ff 100%) !important;
}

.monitoring-table .servers-online-line .progress-val{
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#fff !important;
  font-weight:900 !important;
  font-size:14px !important;
  text-shadow:0 1px 2px rgba(0,0,0,.55) !important;
}

/* ---------- chat, not double-colored ---------- */
#chat,
#chat #chat{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

#chat_messages{
  padding:0 !important;
  background:linear-gradient(180deg,rgba(7,13,25,.96),rgba(9,18,33,.96)) !important;
  border:1px solid rgba(255,255,255,.06) !important;
  border-radius:12px !important;
  overflow:hidden !important;
}

#chat #chat_messages .chat_message{
  padding:14px 14px 14px 0 !important;
  border-top:1px solid rgba(255,255,255,.06) !important;
  background:transparent !important;
}

#chat #chat_messages .chat_message:first-child{border-top:0 !important;}
#chat #chat_messages .chat_message:hover{background:rgba(255,255,255,.02) !important;}

#chat #chat_messages .chat_message > a img{
  width:52px !important;
  height:52px !important;
  margin-right:14px !important;
  border-radius:50% !important;
  border:2px solid #4fd6ff !important;
  box-shadow:0 0 14px rgba(79,214,255,.50) !important;
  object-fit:cover !important;
}

#chat .btn-block-head{
  position:absolute !important;
  top:14px !important;
  right:16px !important;
  min-width:34px !important;
  height:34px !important;
  border-radius:10px !important;
  background:rgba(16,20,29,.88) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:#ffd5e1 !important;
}

#chat .btn-outline-dark[href="#chatrules"]{
  position:absolute !important;
  top:14px !important;
  left:132px !important;
  padding:7px 12px !important;
  border-radius:10px !important;
  font-size:12px !important;
  background:rgba(17,21,31,.94) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:#fff !important;
}

/* ---------- profile tables / sidebars ---------- */
.profile-page .table,
.profile .table,
.block.profile table{
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:rgba(8,14,25,.72) !important;
}

.profile-page .table td,
.profile .table td,
.block.profile table td{
  background:rgba(8,14,25,.72) !important;
  border-color:rgba(255,255,255,.06) !important;
  color:#eaf2ff !important;
  padding:15px 18px !important;
  vertical-align:middle !important;
}

.profile-page .table tr td:first-child,
.profile .table tr td:first-child,
.block.profile table tr td:first-child{
  color:#c6d5ea !important;
  width:170px !important;
}

.profile-page .table tr:has(h4) td,
.profile .table tr:has(h4) td,
.block.profile table tr:has(h4) td{
  background:linear-gradient(90deg,rgba(255,70,98,.16),rgba(74,168,255,.10)) !important;
  border-left:2px solid rgba(92,151,255,.65) !important;
}

.col-lg-3 .block,
.col-md-3 .block,
.sidebar .block,
.left-sidebar .block{
  width:100% !important;
  overflow:hidden !important;
}

.col-lg-3 .block_head,
.col-md-3 .block_head,
.sidebar .block_head,
.left-sidebar .block_head{
  font-size:20px !important;
  line-height:1.05 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}

/* ---------- footer ---------- */
.footer{
  margin-top:40px !important;
  background:linear-gradient(180deg,rgba(5,9,15,.98),rgba(4,7,12,.98)) !important;
  border-top:1px solid rgba(255,255,255,.07) !important;
}

.footer .container{
  max-width:1280px !important;
  padding-top:44px !important;
  padding-bottom:34px !important;
}

.footer img{
  max-width:210px !important;
  height:auto !important;
}

.footer strong{
  display:block !important;
  margin-bottom:14px !important;
  color:#fff !important;
  font-size:18px !important;
}

.footer p,
.footer li,
.footer a{
  color:var(--rb-muted) !important;
  line-height:1.55 !important;
}

/* ---------- scrollbars / safety ---------- */
::-webkit-scrollbar{width:10px;height:10px;}
::-webkit-scrollbar-track{background:#07101b;}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--rb-red),var(--rb-blue));border-radius:999px;}
hr{border-color:rgba(255,255,255,.08) !important;}

.goog-te-gadget,
.goog-te-menu-frame,
#google_translate_element{
  color:initial !important;
}

@media(max-width:1500px){
  .collapsible-menu{gap:7px !important;}
  .collapsible-menu > li > a{max-width:132px !important;padding:0 12px !important;font-size:14px !important;}
}

@media(max-width:1280px){
  .collapsible-menu{flex-wrap:wrap !important;}
  .collapsible-menu > li.rb-profile-menu-item{margin-left:0 !important;}
  .rb-guest-grid,
  .rb-auth-page-clean{grid-template-columns:1fr;}
}

@media(max-width:767px){
  .rb-guest-hero,
  .rb-auth-hero{padding:26px;min-height:auto;}
  .rb-guest-hero h1,
  .rb-auth-hero h1{font-size:38px;}
  .rb-guest-hero p,
  .rb-auth-hero p{font-size:18px;}
  #chat .btn-outline-dark[href="#chatrules"]{
    position:static !important;
    display:inline-block !important;
    margin-top:8px !important;
  }
}



/* ================= VISUAL HOTFIX 2 ================= */

/* 1. completely hide/remove translate strip leftovers */
.language,
.d-none.d-sm-block .language,
.language__img,
#google_translate_element{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* 2. left sidebar titles fit neatly */
.col-lg-3 .block_head,
.col-md-3 .block_head,
.sidebar .block_head,
.left-sidebar .block_head{
  display:block !important;
  width:auto !important;
  padding:16px 18px !important;
  font-size:18px !important;
  line-height:1.14 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}

/* 3. profile page alignment / wrapping */
.profile .table,
.block.profile .table,
.profile-page .table{
  width:100% !important;
  table-layout:fixed !important;
}

.profile .table td,
.block.profile .table td,
.profile-page .table td{
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
  white-space:normal !important;
}

.profile .table tr td:first-child,
.block.profile .table tr td:first-child,
.profile-page .table tr td:first-child{
  width:170px !important;
  min-width:170px !important;
}

.profile .table tr td:last-child,
.block.profile .table tr td:last-child,
.profile-page .table tr td:last-child{
  color:#eef5ff !important;
}

.profile .table a,
.block.profile .table a,
.profile-page .table a{
  overflow-wrap:anywhere !important;
}

/* 4. header profile item must show login near avatar */
.collapsible-menu > li.rb-profile-menu-item > a{
  max-width:220px !important;
  min-width:92px !important;
  padding:6px 12px !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:10px !important;
}

.collapsible-menu > li.rb-profile-menu-item > a .rb-profile-login{
  display:block !important;
  min-width:0 !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  line-height:1.1 !important;
}

.collapsible-menu > li.rb-profile-menu-item > a img,
.collapsible-menu > li.rb-profile-menu-item > a .avatar{
  order:1 !important;
}
.collapsible-menu > li.rb-profile-menu-item > a .rb-profile-login{
  order:2 !important;
}
.collapsible-menu > li.rb-profile-menu-item > a i:last-child,
.collapsible-menu > li.rb-profile-menu-item > a .fa-angle-down,
.collapsible-menu > li.rb-profile-menu-item > a .fa-chevron-down,
.collapsible-menu > li.rb-profile-menu-item > a .caret{
  order:3 !important;
  margin-left:0 !important;
}

/* 5. monitoring — full width + beautiful colors */
.monitoring-table{
  width:100% !important;
  max-width:none !important;
  border-radius:22px !important;
  border:1px solid rgba(122,86,255,.42) !important;
  background:
    linear-gradient(180deg,rgba(7,13,24,.98),rgba(6,12,21,.98)) !important;
  box-shadow:
    0 0 0 1px rgba(147,96,255,.12),
    0 18px 40px rgba(0,0,0,.34),
    0 0 36px rgba(120,61,255,.16) !important;
}

.monitoring-table .table{
  width:100% !important;
  table-layout:fixed !important;
  margin:0 !important;
}

.monitoring-table thead tr,
.monitoring-table tbody tr{
  width:100% !important;
}

.monitoring-table thead td:nth-child(1),
.monitoring-table tbody td:nth-child(1){width:32% !important;}
.monitoring-table thead td:nth-child(2),
.monitoring-table tbody td:nth-child(2){width:16% !important;}
.monitoring-table thead td:nth-child(3),
.monitoring-table tbody td:nth-child(3){width:16% !important;}
.monitoring-table thead td:nth-child(4),
.monitoring-table tbody td:nth-child(4){width:24% !important;}
.monitoring-table thead td:nth-child(5),
.monitoring-table tbody td:nth-child(5){width:12% !important;}

.monitoring-table thead td{
  font-size:15px !important;
  padding:18px 16px !important;
  border-color:rgba(108,122,172,.24) !important;
  background:
    linear-gradient(90deg,rgba(44,12,52,.92),rgba(10,24,52,.92)) !important;
}

.monitoring-table tbody td{
  padding:18px 16px !important;
  vertical-align:middle !important;
  border-color:rgba(255,255,255,.06) !important;
}

.monitoring-table tbody td:first-child{
  font-weight:800 !important;
  color:#eef4ff !important;
}

.monitoring-table tbody td:first-child,
.monitoring-table tbody td:nth-child(2){
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.monitoring-table tbody td:nth-child(4),
.monitoring-table tbody td:nth-child(4) a{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  color:#ffd84d !important;
  font-weight:900 !important;
}

.monitoring-table tbody td:nth-child(5){
  text-align:center !important;
  white-space:nowrap !important;
}

.monitoring-table tbody td:nth-child(5) a{
  width:42px !important;
  height:36px !important;
  border-radius:11px !important;
  box-shadow:0 8px 18px rgba(0,0,0,.18) !important;
}

.monitoring-table tbody td:nth-child(5) a:nth-child(1){
  background:linear-gradient(180deg,#79aaff,#5677e6) !important;
}
.monitoring-table tbody td:nth-child(5) a:nth-child(2){
  background:linear-gradient(180deg,#51efb6,#29c989) !important;
}
.monitoring-table tbody td:nth-child(5) a:nth-child(3){
  background:linear-gradient(180deg,#77ebff,#43c8e2) !important;
}

.monitoring-table .servers-online-line,
.monitoring-table .progress.servers-online-line{
  width:100% !important;
  min-width:150px !important;
  max-width:100% !important;
  height:30px !important;
  border-radius:10px !important;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.09) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}

.monitoring-table .servers-online-line .progress-bar{
  background:linear-gradient(90deg,#ff5f73 0%,#ff9d58 25%,#efe35f 53%,#62e57c 76%,#6bc4ff 100%) !important;
  box-shadow:0 0 24px rgba(124,221,255,.14) !important;
}

.monitoring-table tfoot td,
.monitoring-table .all-online{
  background:transparent !important;
}

.monitoring-table .all-online .progress,
.monitoring-table .progress.total-online{
  height:32px !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.08) !important;
}

.monitoring-table .all-online .progress-bar,
.monitoring-table .progress.total-online .progress-bar{
  background:linear-gradient(90deg,#ff5b71,#ff9d58,#d9e25a,#7ce070,#65c7ff) !important;
}

.monitoring-table .loader{
  margin:24px auto !important;
}

@media(max-width:1200px){
  .monitoring-table thead td:nth-child(1),
  .monitoring-table tbody td:nth-child(1){width:30% !important;}
  .monitoring-table thead td:nth-child(2),
  .monitoring-table tbody td:nth-child(2){width:14% !important;}
  .monitoring-table thead td:nth-child(3),
  .monitoring-table tbody td:nth-child(3){width:18% !important;}
  .monitoring-table thead td:nth-child(4),
  .monitoring-table tbody td:nth-child(4){width:24% !important;}
  .monitoring-table thead td:nth-child(5),
  .monitoring-table tbody td:nth-child(5){width:14% !important;}
}



/* =========================================================
   REALBOYS STRUCTURAL V2
   Теперь стили привязаны к TPL/PHP-обёрткам, а не к общим .block/.table.
   ========================================================= */

.rb-page {
  min-height: 100vh;
}

.rb-page-container {
  position: relative;
}

.rb-page-row {
  align-items: flex-start;
}

/* Guest/login/register isolated */
.rb-scope-guest-home .rb-guest-clean,
.rb-scope-login .rb-auth-page-clean,
.rb-scope-register .rb-auth-page-clean {
  width: 100%;
}

.rb-scope-guest-home .rb-guest-card h3 {
  color: #fff;
  font-size: 24px;
  font-weight: 900;
  margin-bottom: 10px;
}

.rb-scope-guest-home .rb-guest-card p {
  min-height: 54px;
  color: #cdd8e9;
}

/* Monitoring scoped structure */
.rb-monitoring-scope {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.rb-monitoring-scope .rb-monitoring-table {
  width: 100% !important;
  table-layout: fixed !important;
  margin: 0 !important;
}

.rb-monitoring-scope .rb-th-server,
.rb-monitoring-scope .rb-server-name-cell { width: 32% !important; }

.rb-monitoring-scope .rb-th-map,
.rb-monitoring-scope .rb-server-map-cell { width: 15% !important; }

.rb-monitoring-scope .rb-th-online,
.rb-monitoring-scope .rb-server-online-cell { width: 17% !important; }

.rb-monitoring-scope .rb-th-ip,
.rb-monitoring-scope .rb-server-ip-cell { width: 24% !important; }

.rb-monitoring-scope .rb-th-actions,
.rb-monitoring-scope .rb-server-actions-cell { width: 12% !important; }

.rb-monitoring-scope .rb-server-row td {
  height: 66px !important;
}

.rb-monitoring-scope .rb-server-name-cell p,
.rb-monitoring-scope .rb-server-map-cell p,
.rb-monitoring-scope .rb-server-ip-cell a {
  display: block !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.rb-monitoring-scope .rb-server-name-cell p {
  color: #f4f7ff !important;
  font-weight: 850 !important;
}

.rb-monitoring-scope .rb-server-map-cell p {
  color: #d9e7ff !important;
  font-weight: 700 !important;
}

.rb-monitoring-scope .rb-server-ip-cell a {
  color: #ffd84d !important;
  font-weight: 950 !important;
}

.rb-monitoring-scope .rb-server-actions-cell {
  display: table-cell !important;
  text-align: center !important;
}

.rb-monitoring-scope .rb-server-action {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 38px !important;
  height: 34px !important;
  margin: 0 3px !important;
  border-radius: 11px !important;
  color: #fff !important;
  text-decoration: none !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 8px 16px rgba(0,0,0,.22) !important;
}

.rb-monitoring-scope .rb-server-admins { background: linear-gradient(180deg,#78aaff,#4c73de) !important; }
.rb-monitoring-scope .rb-server-bans { background: linear-gradient(180deg,#50e9ae,#27be83) !important; }
.rb-monitoring-scope .rb-server-stats { background: linear-gradient(180deg,#69e0f4,#3eb7cc) !important; }

.rb-monitoring-scope .servers-online-line {
  width: 100% !important;
}

/* Chat scoped */
.rb-chat-scope .rb-chat-block {
  overflow: hidden !important;
}

.rb-chat-scope .rb-chat-head {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.rb-chat-scope .rb-chat-head .btn-block-head {
  margin-left: auto !important;
  position: static !important;
}

.rb-chat-scope .rb-chat-head .btn[href="#chatrules"] {
  position: static !important;
  order: 2;
}

.rb-chat-scope .rb-chat-inner {
  padding-top: 0;
}

.rb-chat-scope .rb-chat-messages {
  height: 430px !important;
}

/* Profile scoped */
.rb-profile-scope {
  width: 100%;
}

.rb-profile-scope .rb-profile-layout {
  gap: 0;
}

.rb-profile-scope .rb-profile-sidebar .block {
  margin-bottom: 24px;
}

.rb-profile-scope .rb-profile-card {
  padding: 24px !important;
}

.rb-profile-scope .rb-profile-card .vertical-navigation {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.rb-profile-scope .rb-profile-card .vertical-navigation ul li {
  padding: 0 !important;
  border-left: 0 !important;
}

.rb-profile-scope .rb-profile-card .vertical-navigation ul li a {
  display: block !important;
  padding: 12px 14px !important;
  margin-bottom: 7px !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,.035) !important;
  border: 1px solid rgba(255,255,255,.06) !important;
  color: #eaf2ff !important;
}

.rb-profile-scope .rb-profile-content .block {
  overflow: hidden !important;
}

.rb-profile-scope .rb-profile-content table {
  width: 100% !important;
  table-layout: fixed !important;
}

.rb-profile-scope .rb-profile-content td {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

.rb-profile-scope .rb-profile-content td:first-child {
  width: 170px !important;
  color: #bdcce1 !important;
}

.rb-profile-scope .div-frame,
.rb-profile-scope .div-avatar-frame {
  text-align: center;
}

.rb-profile-scope .div-frame > img,
.rb-profile-scope .div-avatar-frame + img {
  display: block;
  max-width: 150px;
  max-height: 150px;
  margin: 0 auto 16px;
  border-radius: 20px;
  border: 2px solid rgba(74,168,255,.34);
  box-shadow: 0 0 28px rgba(74,168,255,.18);
}

/* Header profile text */
.rb-main-menu > li.rb-profile-menu-item > a {
  grid-template-columns: auto minmax(0,1fr) auto !important;
}

.rb-main-menu > li.rb-profile-menu-item .rb-profile-login {
  display: block !important;
}

/* Responsive */
@media (max-width: 991px) {
  .rb-monitoring-scope .rb-monitoring-table {
    table-layout: auto !important;
    min-width: 900px;
  }

  .rb-monitoring-scope {
    overflow-x: auto !important;
  }

  .rb-profile-scope .rb-profile-content td:first-child {
    width: 140px !important;
  }
}



/* =========================================================
   GUEST LOCK + CLEAN GUEST HOME
   ========================================================= */

.rb-guest-only-view {
  max-width: 1180px;
  margin: 0 auto;
}

.rb-guest-hero-clean {
  min-height: 330px !important;
  padding: 34px !important;
  background:
    linear-gradient(90deg, rgba(5,9,15,.84), rgba(5,9,15,.32)),
    url('../img/rb-guest-clean-bg.png') center/cover no-repeat !important;
}

.rb-guest-hero-clean::after {
  background:
    radial-gradient(circle at 14% 90%, rgba(255,54,84,.20), transparent 34%),
    radial-gradient(circle at 88% 18%, rgba(74,168,255,.16), transparent 32%) !important;
}

.rb-guest-hero-clean h1 {
  max-width: 650px !important;
  margin: 18px 0 12px !important;
  font-size: 42px !important;
  line-height: 1.12 !important;
  text-shadow: 0 3px 16px rgba(0,0,0,.45);
}

.rb-guest-hero-clean p {
  max-width: 670px !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
}

.rb-guest-hero-clean .rb-guest-actions {
  margin-top: 20px !important;
}

.rb-guest-hero-clean .rb-guest-btn {
  min-height: 46px !important;
  padding: 0 18px !important;
  font-size: 14px !important;
}

.rb-guest-main-grid {
  grid-template-columns: minmax(320px,.82fr) minmax(0,1.18fr) !important;
  gap: 20px !important;
}

.rb-guest-auth,
.rb-guest-monitoring,
.rb-guest-card {
  border-radius: 20px !important;
  padding: 24px !important;
}

.rb-guest-auth h2,
.rb-guest-monitoring h2 {
  font-size: 32px !important;
  line-height: 1.15 !important;
}

.rb-guest-auth p {
  font-size: 15px !important;
  line-height: 1.55 !important;
}

.rb-guest-monitoring .rb-monitoring-scope {
  min-height: 92px;
}

.rb-guest-monitoring .monitoring-table {
  margin-top: 10px !important;
}

.rb-guest-monitoring .monitoring-table .table {
  min-width: 0 !important;
}

.rb-guest-monitoring .monitoring-table thead td,
.rb-guest-monitoring .monitoring-table tbody td {
  padding: 12px 10px !important;
  font-size: 13px !important;
}

.rb-guest-monitoring .monitoring-table thead td:nth-child(1),
.rb-guest-monitoring .monitoring-table tbody td:nth-child(1) { width: 34% !important; }

.rb-guest-monitoring .monitoring-table thead td:nth-child(2),
.rb-guest-monitoring .monitoring-table tbody td:nth-child(2) { width: 15% !important; }

.rb-guest-monitoring .monitoring-table thead td:nth-child(3),
.rb-guest-monitoring .monitoring-table tbody td:nth-child(3) { width: 18% !important; }

.rb-guest-monitoring .monitoring-table thead td:nth-child(4),
.rb-guest-monitoring .monitoring-table tbody td:nth-child(4) { width: 22% !important; }

.rb-guest-monitoring .monitoring-table thead td:nth-child(5),
.rb-guest-monitoring .monitoring-table tbody td:nth-child(5) { width: 11% !important; }

.rb-guest-monitoring .monitoring-table .servers-online-line {
  min-width: 110px !important;
  height: 26px !important;
}

.rb-monitoring-loading-cell {
  height: 84px !important;
  text-align: center !important;
  vertical-align: middle !important;
}

.rb-monitoring-loading-text {
  margin-top: 8px;
  color: rgba(230,240,255,.72);
  font-size: 13px;
  font-weight: 700;
}

.rb-guest-short-cards {
  margin-top: 0 !important;
}

.rb-guest-short-cards .rb-guest-card {
  min-height: 165px;
}

.rb-guest-short-cards .rb-guest-card h3 {
  font-size: 22px !important;
  margin-bottom: 8px !important;
}

.rb-guest-short-cards .rb-guest-card p {
  min-height: 46px !important;
  font-size: 14px;
  line-height: 1.5;
}

/* Guest page should not leak hidden sections */
.rb-scope-guest-home + .block,
.rb-guest-only-view ~ .block {
  display: none !important;
}

@media(max-width: 991px) {
  .rb-guest-main-grid {
    grid-template-columns: 1fr !important;
  }

  .rb-guest-only-view {
    max-width: 100%;
  }

  .rb-guest-hero-clean h1 {
    font-size: 34px !important;
  }

  .rb-guest-monitoring {
    overflow-x: auto;
  }

  .rb-guest-monitoring .monitoring-table .table {
    min-width: 760px !important;
  }
}



/* Guest monitoring loader fix */
.rb-monitoring-error-cell {
  background: rgba(9,16,28,.96) !important;
  padding: 22px !important;
}

.rb-guest-monitoring .rb-monitoring-loading-cell {
  min-height: 86px;
}

.rb-guest-monitoring .loader {
  margin: 8px auto !important;
}

.rb-guest-monitoring .rb-monitoring-loading-text {
  display: block;
}



/* =========================================================
   GUEST NO MONITORING FIX
   ========================================================= */

.rb-page-index .auth-in,
.rb-header .auth-in,
.auth-in {
  display: none !important;
}

.rb-guest-no-monitoring .rb-guest-main-grid-auth-only {
  grid-template-columns: minmax(320px,.82fr) minmax(0,1.18fr) !important;
}

.rb-guest-info-panel {
  background: linear-gradient(180deg,rgba(18,25,38,.95),rgba(13,19,30,.95));
  border: 1px solid rgba(118,145,184,.24);
  border-radius: 24px;
  box-shadow: 0 16px 42px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.035);
  padding: 28px;
}

.rb-guest-info-panel h2 {
  margin: 0 0 14px;
  color: #fff;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 1000;
}

.rb-guest-info-panel p {
  color: #d4deee;
  line-height: 1.6;
  font-size: 16px;
}

.rb-guest-info-list {
  display: grid;
  gap: 12px;
  margin: 22px 0;
}

.rb-guest-info-list div {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 56px;
  padding: 12px 14px;
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 14px;
}

.rb-guest-info-list strong {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(180deg,#ff526b,#de2441);
}

.rb-guest-info-list span {
  color: #edf4ff;
  font-weight: 800;
}

/* Hide monitoring links from generated guest menu if present */
.rb-page-index .rb-main-menu a[href*="monitoring"],
.rb-page-index .collapsible-menu a[href*="monitoring"] {
  display: none !important;
}

.rb-page-index .rb-main-menu li:has(a[href*="monitoring"]),
.rb-page-index .collapsible-menu li:has(a[href*="monitoring"]) {
  display: none !important;
}

@media(max-width: 991px) {
  .rb-guest-no-monitoring .rb-guest-main-grid-auth-only {
    grid-template-columns: 1fr !important;
  }
}



/* =========================================================
   GUEST GLOBAL NO MONITORING
   У незарегистрированных мониторинг не показывается нигде:
   главная / login / register / recovery / любые гостевые страницы.
   ========================================================= */

.rb-is-guest .rb-guest-monitoring,
.rb-is-guest .rb-monitoring-scope,
.rb-is-guest .monitoring,
.rb-is-guest .monitoring-table,
.rb-is-guest .big-monitoring-table,
.rb-is-guest #servers,
.rb-page-login .rb-monitoring-scope,
.rb-page-login .monitoring,
.rb-page-login .monitoring-table,
.rb-page-register .rb-monitoring-scope,
.rb-page-register .monitoring,
.rb-page-register .monitoring-table,
.rb-scope-login .rb-monitoring-scope,
.rb-scope-login .monitoring,
.rb-scope-login .monitoring-table,
.rb-scope-register .rb-monitoring-scope,
.rb-scope-register .monitoring,
.rb-scope-register .monitoring-table {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* If some external module renders a monitoring block title for guests */
.rb-is-guest .block:has(.monitoring),
.rb-is-guest .block:has(.monitoring-table),
.rb-page-login .block:has(.monitoring),
.rb-page-login .block:has(.monitoring-table),
.rb-page-register .block:has(.monitoring),
.rb-page-register .block:has(.monitoring-table) {
  display: none !important;
}

/* Hide generated menu monitoring link for guests */
.rb-is-guest .collapsible-menu li:has(a[href*="monitoring"]),
.rb-is-guest .rb-main-menu li:has(a[href*="monitoring"]),
.rb-is-guest a[href*="/monitoring"] {
  display: none !important;
}



/* =========================================================
   RETURN BOTTOM MONITORING FOR GUEST HOME ONLY
   Логин/регистрация без мониторинга, но внизу гостевой главной он виден.
   ========================================================= */

.rb-is-guest .rb-guest-bottom-monitoring {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

.rb-guest-bottom-monitoring {
  margin-top: 24px;
  padding: 24px;
  border-radius: 24px;
  background: linear-gradient(180deg,rgba(18,25,38,.95),rgba(13,19,30,.95));
  border: 1px solid rgba(118,145,184,.24);
  box-shadow: 0 16px 42px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.035);
}

.rb-guest-bottom-monitoring-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.rb-guest-bottom-monitoring-head h2 {
  margin: 0;
  color: #fff;
  font-size: 34px;
  line-height: 1.1;
  font-weight: 1000;
}

.rb-is-guest .rb-guest-bottom-monitoring .rb-monitoring-scope,
.rb-is-guest .rb-guest-bottom-monitoring .monitoring,
.rb-is-guest .rb-guest-bottom-monitoring .monitoring-table,
.rb-is-guest .rb-guest-bottom-monitoring .big-monitoring-table {
  display: block !important;
  visibility: visible !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.rb-is-guest .rb-guest-bottom-monitoring #servers {
  display: table-row-group !important;
  visibility: visible !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.rb-guest-bottom-monitoring .rb-monitoring-scope {
  width: 100% !important;
}

.rb-guest-bottom-monitoring .monitoring-table {
  margin: 0 !important;
}

.rb-guest-bottom-monitoring .rb-monitoring-table {
  width: 100% !important;
  table-layout: fixed !important;
}

.rb-guest-bottom-monitoring .monitoring-table thead td,
.rb-guest-bottom-monitoring .monitoring-table tbody td {
  padding: 15px 14px !important;
}

/* Login/register still must not show monitoring */
.rb-page-login .rb-guest-bottom-monitoring,
.rb-page-register .rb-guest-bottom-monitoring,
.rb-scope-login .rb-guest-bottom-monitoring,
.rb-scope-register .rb-guest-bottom-monitoring {
  display: none !important;
}

@media(max-width: 991px) {
  .rb-guest-bottom-monitoring {
    overflow-x: auto !important;
  }
  .rb-guest-bottom-monitoring .rb-monitoring-table {
    min-width: 860px !important;
  }
}



/* =========================================================
   CORRECT MONITORING CONNECTION VISIBILITY
   Низ главной гостя показывает родной мониторинг UniGameCMS.
   Login/register мониторинг не показывают.
   ========================================================= */

.rb-guest-bottom-monitoring,
.rb-is-guest .rb-guest-bottom-monitoring,
.rb-is-guest .rb-guest-bottom-monitoring .rb-monitoring-scope,
.rb-is-guest .rb-guest-bottom-monitoring .monitoring,
.rb-is-guest .rb-guest-bottom-monitoring .monitoring-table,
.rb-is-guest .rb-guest-bottom-monitoring .big-monitoring-table {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  pointer-events: auto !important;
}

.rb-is-guest .rb-guest-bottom-monitoring tbody#servers {
  display: table-row-group !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  overflow: visible !important;
}

.rb-is-guest .rb-guest-bottom-monitoring #servers {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.rb-page-login .rb-guest-bottom-monitoring,
.rb-page-register .rb-guest-bottom-monitoring,
.rb-scope-login .rb-guest-bottom-monitoring,
.rb-scope-register .rb-guest-bottom-monitoring,
.rb-page-login .monitoring,
.rb-page-register .monitoring,
.rb-page-login .monitoring-table,
.rb-page-register .monitoring-table {
  display: none !important;
}



/* =========================================================
   GUEST DIRECT MONITORING FIX
   Отдельный гостевой мониторинг без классов .monitoring/.monitoring-table,
   чтобы его не скрывали гостевые ограничения.
   ========================================================= */

.rb-guest-bottom-monitoring .rb-guest-monitoring-direct,
.rb-is-guest .rb-guest-bottom-monitoring .rb-guest-monitoring-direct {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
  overflow: hidden !important;
  border-radius: 22px !important;
  border: 1px solid rgba(122,86,255,.42) !important;
  background: linear-gradient(180deg,rgba(7,13,24,.98),rgba(6,12,21,.98)) !important;
  box-shadow: 0 0 0 1px rgba(147,96,255,.12), 0 18px 40px rgba(0,0,0,.34), 0 0 36px rgba(120,61,255,.16) !important;
}

.rb-guest-monitoring-direct .rb-guest-monitoring-table {
  width: 100% !important;
  margin: 0 !important;
  table-layout: fixed !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

.rb-guest-monitoring-direct thead td {
  padding: 17px 16px !important;
  background: linear-gradient(90deg,rgba(44,12,52,.92),rgba(10,24,52,.92)) !important;
  border-color: rgba(108,122,172,.24) !important;
  color: #ffd84d !important;
  font-size: 15px !important;
  font-weight: 900 !important;
}

.rb-guest-monitoring-direct tbody#servers,
.rb-is-guest .rb-guest-monitoring-direct tbody#servers {
  display: table-row-group !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  overflow: visible !important;
}

.rb-guest-monitoring-direct tbody td {
  padding: 18px 16px !important;
  background: rgba(8,15,28,.72) !important;
  border-color: rgba(255,255,255,.06) !important;
  color: #eef5ff !important;
  vertical-align: middle !important;
}

.rb-guest-monitoring-direct .rb-th-server,
.rb-guest-monitoring-direct .rb-server-name-cell { width: 32% !important; }
.rb-guest-monitoring-direct .rb-th-map,
.rb-guest-monitoring-direct .rb-server-map-cell { width: 16% !important; }
.rb-guest-monitoring-direct .rb-th-online,
.rb-guest-monitoring-direct .rb-server-online-cell { width: 17% !important; }
.rb-guest-monitoring-direct .rb-th-ip,
.rb-guest-monitoring-direct .rb-server-ip-cell { width: 24% !important; }
.rb-guest-monitoring-direct .rb-th-actions,
.rb-guest-monitoring-direct .rb-server-actions-cell { width: 11% !important; }

.rb-guest-monitoring-direct .rb-server-name-cell p,
.rb-guest-monitoring-direct .rb-server-map-cell p,
.rb-guest-monitoring-direct .rb-server-ip-cell a {
  display: block !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.rb-guest-monitoring-direct .rb-server-ip-cell a {
  color: #ffd84d !important;
  font-weight: 900 !important;
}

.rb-guest-monitoring-direct .servers-online-line {
  width: 100% !important;
  min-width: 130px !important;
  height: 30px !important;
  border-radius: 10px !important;
}

.rb-guest-monitoring-direct .progress-bar {
  background: linear-gradient(90deg,#ff5f73 0%,#ff9d58 25%,#efe35f 53%,#62e57c 76%,#6bc4ff 100%) !important;
}

.rb-guest-monitoring-direct .rb-server-actions-cell {
  text-align: center !important;
  white-space: nowrap !important;
}

.rb-guest-monitoring-direct .rb-server-action,
.rb-guest-monitoring-direct .rb-server-actions-cell a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 34px !important;
  margin: 2px !important;
  border-radius: 11px !important;
  color: #fff !important;
  text-decoration: none !important;
}

.rb-guest-monitoring-direct .rb-server-admins,
.rb-guest-monitoring-direct .rb-server-actions-cell a:nth-child(1) {
  background: linear-gradient(180deg,#78aaff,#4c73de) !important;
}
.rb-guest-monitoring-direct .rb-server-bans,
.rb-guest-monitoring-direct .rb-server-actions-cell a:nth-child(2) {
  background: linear-gradient(180deg,#50e9ae,#27be83) !important;
}
.rb-guest-monitoring-direct .rb-server-stats,
.rb-guest-monitoring-direct .rb-server-actions-cell a:nth-child(3) {
  background: linear-gradient(180deg,#69e0f4,#3eb7cc) !important;
}

@media(max-width: 991px) {
  .rb-guest-monitoring-direct {
    overflow-x: auto !important;
  }
  .rb-guest-monitoring-direct .rb-guest-monitoring-table {
    min-width: 900px !important;
  }
}



/* =========================================================
   GUEST MONITORING LOCKED BLOCK
   Живой AJAX-мониторинг убран у гостей, чтобы не висел лоадер.
   Настоящий мониторинг остаётся для авторизованных.
   ========================================================= */

.rb-guest-monitoring-locked {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.rb-locked-monitoring-card {
  display: grid;
  grid-template-columns: 78px minmax(0,1fr);
  gap: 22px;
  align-items: center;
  min-height: 190px;
  padding: 28px;
  border-radius: 20px;
  background:
    radial-gradient(circle at 0% 100%, rgba(255,54,84,.16), transparent 34%),
    linear-gradient(180deg, rgba(9,16,29,.96), rgba(7,13,24,.96));
  border: 1px solid rgba(118,145,184,.24);
}

.rb-locked-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 78px;
  height: 78px;
  border-radius: 24px;
  background: linear-gradient(180deg,#ff526b,#de2441);
  box-shadow: 0 16px 34px rgba(255,54,84,.22);
  font-size: 34px;
}

.rb-locked-monitoring-card h3 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 28px;
  line-height: 1.15;
  font-weight: 1000;
}

.rb-locked-monitoring-card p {
  max-width: 660px;
  margin: 0;
  color: #d4deee;
  font-size: 16px;
  line-height: 1.6;
}

.rb-locked-monitoring-card .rb-guest-actions {
  margin-top: 18px !important;
}

@media(max-width: 767px) {
  .rb-locked-monitoring-card {
    grid-template-columns: 1fr;
  }
}



/* =========================================================
   GUEST ACCESS SCREEN
   Вместо пустого экрана на закрытых страницах.
   ========================================================= */

.rb-guest-denied .rb-page-row > *:not(.rb-guest-access-screen),
.rb-guest-denied .row > *:not(.rb-guest-access-screen) {
  display: none !important;
}

.rb-guest-access-screen {
  display: block !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
}

.rb-access-lock {
  display: grid;
  grid-template-columns: 110px minmax(0,1fr);
  gap: 28px;
  align-items: center;
  min-height: 430px;
  padding: 46px;
  border-radius: 30px;
  background:
    radial-gradient(circle at 0% 100%, rgba(255,54,84,.22), transparent 34%),
    radial-gradient(circle at 100% 0%, rgba(74,168,255,.18), transparent 32%),
    linear-gradient(180deg, rgba(18,25,38,.96), rgba(9,15,27,.96));
  border: 1px solid rgba(118,145,184,.30);
  box-shadow: 0 24px 60px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.04);
}

.rb-access-lock-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 110px;
  height: 110px;
  border-radius: 32px;
  background: linear-gradient(180deg,#ff526b,#de2441);
  box-shadow: 0 20px 42px rgba(255,54,84,.24);
  font-size: 48px;
}

.rb-access-lock h1 {
  margin: 22px 0 16px;
  color: #fff;
  font-size: 48px;
  line-height: 1.08;
  font-weight: 1000;
}

.rb-access-lock p {
  max-width: 760px;
  margin: 0;
  color: #d4deee;
  font-size: 19px;
  line-height: 1.65;
}

.rb-access-lock .rb-guest-actions {
  margin-top: 28px !important;
}

@media(max-width: 767px) {
  .rb-access-lock {
    grid-template-columns: 1fr;
    padding: 28px;
    min-height: auto;
  }

  .rb-access-lock h1 {
    font-size: 34px;
  }

  .rb-access-lock-icon {
    width: 82px;
    height: 82px;
    font-size: 34px;
  }
}



/* =========================================================
   GUEST DENIED HARD CUT
   На закрытой странице у гостя нельзя показывать мониторинг,
   нижний блок, контент страницы или любые подгруженные блоки.
   ========================================================= */

/* show only access screen */
.rb-guest-denied .rb-only-denied-screen,
.rb-guest-denied .rb-guest-access-screen {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  pointer-events: auto !important;
}

/* hide every other direct column/content block inside main row */
.rb-guest-denied .rb-page-row > *:not(.rb-guest-access-screen):not(.rb-only-denied-screen),
.rb-guest-denied .row > *:not(.rb-guest-access-screen):not(.rb-only-denied-screen) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* hard hide monitoring/page bleed anywhere on denied guest pages */
.rb-guest-denied .rb-guest-bottom-monitoring,
.rb-guest-denied .rb-guest-monitoring-locked,
.rb-guest-denied .rb-guest-monitoring-direct,
.rb-guest-denied .rb-monitoring-scope,
.rb-guest-denied .monitoring,
.rb-guest-denied .monitoring-table,
.rb-guest-denied .big-monitoring-table,
.rb-guest-denied #servers,
.rb-guest-denied [id="servers"],
.rb-guest-denied .rb-guest-card,
.rb-guest-denied .rb-guest-short-cards,
.rb-guest-denied .rb-guest-no-monitoring,
.rb-guest-denied .rb-guest-only-view:not(.rb-guest-access-screen):not(.rb-only-denied-screen),
.rb-guest-denied .rb-page-scope:not(.rb-guest-access-screen):not(.rb-only-denied-screen) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* override old rules that tried to re-show bottom monitoring */
.rb-guest-denied.rb-is-guest .rb-guest-bottom-monitoring,
.rb-guest-denied.rb-is-guest .rb-guest-bottom-monitoring .rb-monitoring-scope,
.rb-guest-denied.rb-is-guest .rb-guest-bottom-monitoring .monitoring,
.rb-guest-denied.rb-is-guest .rb-guest-bottom-monitoring .monitoring-table,
.rb-guest-denied.rb-is-guest .rb-guest-bottom-monitoring tbody#servers {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
}

/* access screen must stay clean and centered */
.rb-guest-denied .rb-access-lock {
  margin-top: 20px !important;
  margin-bottom: 40px !important;
}

/* block old page titles/headers below breadcrumb if denied */
.rb-guest-denied .page_head,
.rb-guest-denied .page-title,
.rb-guest-denied .monitoring-page,
.rb-guest-denied .rb-page-monitoring,
.rb-guest-denied .block:not(.rb-access-lock):not(.rb-guest-access-screen .block) {
  display: none !important;
}



/* =========================================================
   DENIED ONLY SCREEN FINAL LOCK
   На закрытых страницах для гостя показывается только экран доступа.
   Все остальные блоки/колонки/нижние секции режутся.
   ========================================================= */

.rb-denied-only-screen .rb-guest-access-screen,
.rb-denied-only-screen .rb-only-denied-screen {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  pointer-events: auto !important;
  position: relative !important;
  z-index: 20 !important;
}

/* Hide every column in main containers except denied screen */
.rb-denied-only-screen .container > .row > *:not(.rb-guest-access-screen):not(.rb-only-denied-screen),
.rb-denied-only-screen .rb-content > .row > *:not(.rb-guest-access-screen):not(.rb-only-denied-screen),
.rb-denied-only-screen .rb-page-container > .row > *:not(.rb-guest-access-screen):not(.rb-only-denied-screen),
.rb-denied-only-screen .rb-page-row > *:not(.rb-guest-access-screen):not(.rb-only-denied-screen),
.rb-denied-only-screen main > *:not(.rb-guest-access-screen):not(.rb-only-denied-screen) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* Hide common sections that can appear outside row */
.rb-denied-only-screen .rb-guest-bottom-monitoring,
.rb-denied-only-screen .rb-guest-monitoring-locked,
.rb-denied-only-screen .rb-guest-short-cards,
.rb-denied-only-screen .rb-guest-card,
.rb-denied-only-screen .monitoring,
.rb-denied-only-screen .monitoring-table,
.rb-denied-only-screen .rb-monitoring-scope,
.rb-denied-only-screen .big-monitoring-table,
.rb-denied-only-screen #servers,
.rb-denied-only-screen .block,
.rb-denied-only-screen .page_head,
.rb-denied-only-screen .page-title,
.rb-denied-only-screen .page-content,
.rb-denied-only-screen .content,
.rb-denied-only-screen .pagination,
.rb-denied-only-screen .table-responsive:not(.rb-access-lock .table-responsive),
.rb-denied-only-screen .server,
.rb-denied-only-screen .server-list {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* Restore access screen even if it is inside a hidden-like area */
.rb-denied-only-screen .rb-guest-access-screen,
.rb-denied-only-screen .rb-guest-access-screen *,
.rb-denied-only-screen .rb-access-lock,
.rb-denied-only-screen .rb-access-lock * {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.rb-denied-only-screen .rb-guest-access-screen {
  margin-top: 18px !important;
  margin-bottom: 42px !important;
}

.rb-denied-only-screen .rb-access-lock {
  display: grid !important;
}

/* If CMS renders extra rows after access screen, hide them */
.rb-denied-only-screen .rb-guest-access-screen ~ *,
.rb-denied-only-screen .rb-only-denied-screen ~ * {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
}



/* SERVER STOP DENIED PAGE */
.rb-denied-server-stop {
  min-height: 100vh !important;
  padding: 34px 0 60px !important;
}
.rb-denied-server-stop .rb-page-container {
  padding-top: 28px !important;
}
.rb-denied-server-stop .rb-guest-access-screen {
  display: block !important;
}



/* =========================================================
   REALBOYS MODERN FOOTER + LIGHT PERFORMANCE TUNE
   ========================================================= */

.rb-footer-modern {
  background: linear-gradient(180deg, rgba(6,12,24,.92) 0%, rgba(4,9,18,.98) 100%);
  border-top: 1px solid rgba(111, 163, 255, 0.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
  margin-top: 48px;
  padding: 0;
}

.rb-footer-modern .container {
  position: relative;
}

.rb-footer-shell {
  padding: 42px 0 24px;
}

.rb-footer-grid {
  row-gap: 22px;
  align-items: start;
}

.rb-footer-brand,
.rb-footer-col {
  background: rgba(11, 20, 38, 0.55);
  border: 1px solid rgba(107, 148, 255, 0.12);
  border-radius: 20px;
  padding: 24px 24px 22px;
  height: 100%;
  box-shadow: 0 12px 36px rgba(0, 0, 0, .18);
}

.rb-footer-logo {
  display: inline-flex;
  align-items: center;
  margin-bottom: 18px;
}

.rb-footer-logo img {
  max-width: 210px;
  height: auto;
  display: block;
}

.rb-footer-description {
  margin: 0 0 16px;
  color: #b8c5dd;
  line-height: 1.7;
}

.rb-footer-features {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 10px;
}

.rb-footer-features span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.06);
  color: #e6ecfb;
  font-size: 13px;
  line-height: 1.2;
}

.rb-footer-col strong {
  display: block;
  margin-bottom: 16px;
  font-size: 28px;
  line-height: 1.05;
  font-weight: 900;
  color: #ffffff;
  letter-spacing: -.02em;
}

.rb-footer-col ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.rb-footer-col li {
  margin: 0 0 10px;
}

.rb-footer-col a {
  color: #aeb9cf;
  text-decoration: none;
  transition: color .18s ease, transform .18s ease;
}

.rb-footer-col a:hover {
  color: #ffffff;
  transform: translateX(3px);
}

.rb-footer-cote {
  margin-top: 16px;
}

.rb-footer-bottom {
  margin-top: 18px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.07);
}

.rb-footer-copy {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 22px;
  align-items: center;
  justify-content: space-between;
  color: #aab7cd;
  font-size: 14px;
  line-height: 1.6;
}

.rb-footer-copy p {
  margin: 0;
  color: #d4dcee;
}

.rb-footer-copy a {
  color: #ffffff;
  text-decoration: none;
}

.footer .banners,
.rb-footer-modern .banners {
  display: none !important;
}

/* More consistent mobile footer */
@media (max-width: 991px) {
  .rb-footer-shell {
    padding: 28px 0 18px;
  }

  .rb-footer-brand,
  .rb-footer-col {
    padding: 18px 16px;
    border-radius: 16px;
  }

  .rb-footer-col strong {
    font-size: 22px;
  }

  .rb-footer-copy {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* performance tune */
.footer[data-aos],
.rb-footer-modern[data-aos] {
  opacity: 1 !important;
  transform: none !important;
}

.rb-page *,
.rb-footer-modern * {
  backface-visibility: hidden;
}



/* =========================================================
   REALBOYS AUTH + ACCESS POLISH 2026
   Красивый экран доступа, login/register, верхнее меню.
   ========================================================= */

/* Access denied premium screen */
.rb-access-lock-premium {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  min-height: 470px;
  grid-template-columns: 128px minmax(0, 1fr) !important;
  background:
    radial-gradient(circle at 6% 78%, rgba(255,54,84,.24), transparent 34%),
    radial-gradient(circle at 100% 0%, rgba(73,164,255,.20), transparent 35%),
    linear-gradient(135deg, rgba(18,25,42,.98), rgba(8,15,28,.98) 62%, rgba(11,29,54,.96)) !important;
  border: 1px solid rgba(118,145,184,.28) !important;
  box-shadow:
    0 28px 78px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.05),
    0 0 0 1px rgba(255,54,84,.06) !important;
}

.rb-access-orb {
  position: absolute;
  border-radius: 999px;
  filter: blur(42px);
  opacity: .55;
  z-index: -1;
}

.rb-access-orb-red {
  width: 240px;
  height: 240px;
  left: -70px;
  bottom: -80px;
  background: rgba(255,54,84,.50);
}

.rb-access-orb-blue {
  width: 300px;
  height: 300px;
  right: -80px;
  top: -120px;
  background: rgba(74,168,255,.38);
}

.rb-access-lock-premium .rb-access-lock-icon {
  width: 128px;
  height: 128px;
  border-radius: 36px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,0)),
    linear-gradient(180deg,#ff526b,#de2441);
  box-shadow: 0 24px 58px rgba(255,54,84,.26), inset 0 1px 0 rgba(255,255,255,.22);
}

.rb-access-lock-premium .rb-access-lock-icon span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 74px;
  height: 74px;
  border-radius: 24px;
  border: 2px solid rgba(255,255,255,.78);
  color: #fff;
  font-weight: 1000;
  letter-spacing: -.06em;
  font-size: 28px;
}

.rb-access-lock-premium h1 {
  font-size: clamp(38px, 4.3vw, 64px) !important;
  letter-spacing: -.055em;
  margin-top: 18px !important;
}

.rb-access-lock-premium p {
  max-width: 820px !important;
  color: #dbe6f8 !important;
}

.rb-access-benefits {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
  margin: 26px 0 4px;
  max-width: 820px;
}

.rb-access-benefits div {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 58px;
  padding: 12px 14px;
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 16px;
}

.rb-access-benefits b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(180deg,#ff526b,#de2441);
  font-size: 13px;
  flex: 0 0 auto;
}

.rb-access-benefits span {
  color: #f1f6ff;
  font-weight: 800;
  line-height: 1.2;
}

.rb-guest-btn.ghost {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.11) !important;
  color: #e9f1ff !important;
}

/* Login / register pages */
.rb-auth-page {
  display: grid;
  grid-template-columns: minmax(320px,.9fr) minmax(360px,1.1fr);
  gap: 22px;
  max-width: 1160px;
  margin: 0 auto 40px;
}

.rb-auth-visual,
.rb-auth-form-card {
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(118,145,184,.25);
  background:
    radial-gradient(circle at 0% 100%, rgba(255,54,84,.18), transparent 34%),
    linear-gradient(180deg, rgba(18,25,38,.96), rgba(9,15,27,.96));
  box-shadow: 0 20px 55px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.04);
}

.rb-auth-visual {
  min-height: 520px;
  padding: 34px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background:
    radial-gradient(circle at 15% 85%, rgba(255,54,84,.28), transparent 32%),
    radial-gradient(circle at 90% 10%, rgba(74,168,255,.22), transparent 32%),
    linear-gradient(135deg, rgba(15,22,40,.98), rgba(7,13,24,.98));
}

.rb-auth-visual::before {
  content: "RB";
  position: absolute;
  right: -18px;
  top: 20px;
  color: rgba(255,255,255,.035);
  font-size: 190px;
  font-weight: 1000;
  letter-spacing: -.08em;
  line-height: .8;
}

.rb-auth-visual h1 {
  position: relative;
  margin: 18px 0 12px;
  color: #fff;
  font-size: clamp(34px, 3.7vw, 58px);
  line-height: 1.03;
  letter-spacing: -.055em;
  font-weight: 1000;
}

.rb-auth-visual p {
  position: relative;
  margin: 0;
  max-width: 520px;
  color: #d7e3f6;
  font-size: 17px;
  line-height: 1.65;
}

.rb-auth-points {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.rb-auth-points span {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
  color: #edf4ff;
  font-size: 13px;
  font-weight: 800;
}

.rb-auth-form-card {
  padding: 28px;
}

.rb-auth-form-card .block,
.rb-auth-form-card .auth,
.rb-auth-form-card form {
  max-width: 100%;
}

.rb-auth-form-card .block {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.rb-auth-form-card .block_head,
.rb-auth-form-card h1,
.rb-auth-form-card h2,
.rb-auth-form-card h3 {
  color: #fff !important;
  font-weight: 1000 !important;
  letter-spacing: -.035em;
}

.rb-auth-form-card input,
.rb-auth-form-card select,
.rb-auth-form-card textarea,
.rb-auth-form-card .form-control {
  min-height: 48px !important;
  border-radius: 14px !important;
  background: rgba(6,12,24,.92) !important;
  border: 1px solid rgba(126,153,194,.26) !important;
  color: #fff !important;
  box-shadow: none !important;
}

.rb-auth-form-card input:focus,
.rb-auth-form-card .form-control:focus {
  border-color: rgba(255,54,84,.62) !important;
  box-shadow: 0 0 0 3px rgba(255,54,84,.14) !important;
}

.rb-auth-form-card .btn,
.rb-auth-form-card button,
.rb-auth-form-card input[type="submit"] {
  min-height: 48px !important;
  border-radius: 14px !important;
  font-weight: 900 !important;
}

.rb-auth-form-card .btn-primary,
.rb-auth-form-card input[type="submit"],
.rb-auth-form-card button[type="submit"] {
  background: linear-gradient(180deg,#ff4565,#e32645) !important;
  border-color: rgba(255,255,255,.08) !important;
  color: #fff !important;
  box-shadow: 0 12px 28px rgba(255,54,84,.22) !important;
}

/* Premium top menu */
.rb-premium-menu {
  display: flex;
  align-items: center;
  gap: 10px;
}

.rb-premium-menu > li > a {
  min-height: 50px !important;
  padding: 0 18px !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(31,40,58,.94), rgba(19,28,43,.94)) !important;
  border: 1px solid rgba(126,153,194,.22) !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.045) !important;
  color: #eaf2ff !important;
  transition: transform .16s ease, border-color .16s ease, background .16s ease !important;
}

.rb-premium-menu > li > a:hover {
  transform: translateY(-1px);
  border-color: rgba(255,54,84,.42) !important;
  background: linear-gradient(180deg, rgba(42,54,78,.96), rgba(23,35,55,.96)) !important;
}

/* Reduce visual hanging / expensive animations */
[data-aos] {
  transition-duration: .18s !important;
}

.rb-auth-page *,
.rb-access-lock-premium *,
.rb-premium-menu * {
  backface-visibility: hidden;
}

@media(max-width: 991px) {
  .rb-access-lock-premium {
    grid-template-columns: 1fr !important;
    padding: 30px !important;
  }

  .rb-access-benefits {
    grid-template-columns: 1fr;
  }

  .rb-auth-page {
    grid-template-columns: 1fr;
  }

  .rb-auth-visual {
    min-height: 300px;
  }
}



/* =========================================================
   AUTH LAYOUT CLEAN FIX
   Исправляет наложение текста/формы на login/register.
   ========================================================= */

/* hide old broken auth wrapper behavior if cached/left */
.rb-auth-page {
  display: none !important;
}

.rb-auth-clean-page {
  max-width: 1080px;
  margin: 28px auto 56px;
}

.rb-auth-clean-shell {
  display: grid;
  grid-template-columns: minmax(300px, .92fr) minmax(380px, 1.08fr);
  gap: 0;
  overflow: hidden;
  border-radius: 30px;
  background:
    radial-gradient(circle at 0% 100%, rgba(255,54,84,.20), transparent 34%),
    radial-gradient(circle at 100% 0%, rgba(74,168,255,.18), transparent 34%),
    linear-gradient(135deg, rgba(16,24,42,.98), rgba(7,13,24,.98));
  border: 1px solid rgba(118,145,184,.28);
  box-shadow: 0 28px 76px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.045);
}

.rb-auth-clean-info {
  position: relative;
  min-height: 560px;
  padding: 42px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border-right: 1px solid rgba(255,255,255,.06);
  overflow: hidden;
}

.rb-auth-clean-info::before {
  content: "RB";
  position: absolute;
  right: -18px;
  top: 34px;
  color: rgba(255,255,255,.045);
  font-size: 190px;
  font-weight: 1000;
  letter-spacing: -.08em;
  line-height: .8;
  pointer-events: none;
}

.rb-auth-clean-info::after {
  content: "";
  position: absolute;
  inset: auto -120px -160px -80px;
  height: 300px;
  background: radial-gradient(circle, rgba(255,54,84,.28), transparent 64%);
  pointer-events: none;
}

.rb-auth-clean-info > * {
  position: relative;
  z-index: 1;
}

.rb-auth-clean-info h1 {
  margin: 20px 0 12px;
  color: #fff;
  font-size: clamp(38px, 4vw, 60px);
  line-height: 1.02;
  letter-spacing: -.055em;
  font-weight: 1000;
}

.rb-auth-clean-info p {
  max-width: 520px;
  margin: 0;
  color: #d7e3f6;
  font-size: 17px;
  line-height: 1.65;
}

.rb-auth-clean-points {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.rb-auth-clean-points span {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
  color: #edf4ff;
  font-size: 13px;
  font-weight: 800;
}

.rb-auth-clean-form {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 560px;
  padding: 38px;
  background: rgba(6,12,24,.34);
}

/* form blocks inside */
.rb-auth-clean-form > .block,
.rb-auth-clean-form .block,
.rb-auth-clean-form form,
.rb-auth-clean-form .auth,
.rb-auth-clean-form .authorization {
  width: 100%;
  max-width: 460px;
}

.rb-auth-clean-form .block {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.rb-auth-clean-form .block_head {
  margin: 0 0 24px !important;
  padding: 0 !important;
  min-height: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #fff !important;
  font-size: 34px !important;
  line-height: 1.1 !important;
  font-weight: 1000 !important;
  letter-spacing: -.04em;
}

.rb-auth-clean-form h1,
.rb-auth-clean-form h2,
.rb-auth-clean-form h3 {
  color: #fff !important;
  font-weight: 1000 !important;
  letter-spacing: -.035em;
}

/* remove ghost old badge/text overlap from previous design */
.rb-auth-clean-form .rb-guest-badge,
.rb-auth-clean-form .rb-auth-visual,
.rb-auth-clean-form .rb-auth-points {
  display: none !important;
}

/* inputs */
.rb-auth-clean-form input,
.rb-auth-clean-form select,
.rb-auth-clean-form textarea,
.rb-auth-clean-form .form-control {
  width: 100% !important;
  min-height: 54px !important;
  border-radius: 15px !important;
  background: rgba(6,12,24,.96) !important;
  border: 1px solid rgba(126,153,194,.30) !important;
  color: #fff !important;
  box-shadow: none !important;
  padding: 0 18px !important;
  font-size: 15px !important;
}

.rb-auth-clean-form input::placeholder,
.rb-auth-clean-form textarea::placeholder {
  color: rgba(225,235,252,.62) !important;
}

.rb-auth-clean-form input:focus,
.rb-auth-clean-form select:focus,
.rb-auth-clean-form textarea:focus,
.rb-auth-clean-form .form-control:focus {
  border-color: rgba(255,54,84,.66) !important;
  box-shadow: 0 0 0 3px rgba(255,54,84,.14) !important;
}

/* buttons */
.rb-auth-clean-form .btn,
.rb-auth-clean-form button,
.rb-auth-clean-form input[type="submit"] {
  min-height: 54px !important;
  border-radius: 15px !important;
  font-weight: 900 !important;
}

.rb-auth-clean-form .btn-primary,
.rb-auth-clean-form input[type="submit"],
.rb-auth-clean-form button[type="submit"] {
  background: linear-gradient(180deg,#ff4565,#e32645) !important;
  border-color: rgba(255,255,255,.08) !important;
  color: #fff !important;
  box-shadow: 0 14px 30px rgba(255,54,84,.24) !important;
}

/* social buttons */
.rb-auth-clean-form a.btn,
.rb-auth-clean-form .btn-outline-primary,
.rb-auth-clean-form .btn-outline-secondary {
  background: rgba(255,255,255,.035) !important;
  border: 1px solid rgba(126,153,194,.30) !important;
  color: #edf4ff !important;
  box-shadow: none !important;
}

.rb-auth-clean-form a {
  color: #dfeaff;
}

/* recaptcha size keep clean */
.rb-auth-clean-form .g-recaptcha,
.rb-auth-clean-form iframe[src*="recaptcha"] {
  max-width: 100% !important;
  transform-origin: left top;
}

/* If old layout text is still rendered, isolate it */
.rb-auth-clean-form .rb-auth-clean-info,
.rb-auth-clean-form .rb-auth-clean-points {
  display: none !important;
}

@media(max-width: 991px) {
  .rb-auth-clean-shell {
    grid-template-columns: 1fr;
  }

  .rb-auth-clean-info {
    min-height: auto;
    padding: 28px;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.06);
  }

  .rb-auth-clean-form {
    min-height: auto;
    padding: 28px;
  }

  .rb-auth-clean-info h1 {
    font-size: 36px;
  }
}

@media(max-width: 520px) {
  .rb-auth-clean-page {
    margin: 14px auto 34px;
  }

  .rb-auth-clean-shell {
    border-radius: 22px;
  }

  .rb-auth-clean-info,
  .rb-auth-clean-form {
    padding: 20px;
  }
}
