/* Shared frame color for public cards, controls and menus. */

body.gx-body {

  --gx-border: rgba(245,197,24,.45);

  --gx-gold-line: rgba(245,197,24,.55);

}

body.gx-body :is(.block,.card,.panel,.modal-content,.dropdown-menu,

 .gx-panel,.gx-section,.gx-server-card,.gx-user-card,.gx-shop-hub__card,

 .gx-news-card,.gx-forum-card,.gx-dl__card,.gx-cases-store__card,.gx-pshop__card,

 .gx-gift-pick,.gx-gift-modal__dialog,.gx-home-raffles,.gx-home-birthdays,

 .gx-mega__panel,.gx-mega__toggle,.gx-btn-outline,.gx-profile-card,

 .b16-store__servers,.b16-store__panel,.b16-store__card,.b16-store__server-btn,

 .b16-store__sort-btn,.b16-store__banner,.b16-store__discount,.rcon-shop-product,

 .b16-sort__card,.b16-sort__prize,.b16-sort__rules) {

  border:1px solid var(--gx-gold-line) !important;

}

body.gx-body :is(.dropdown-item,.gx-mega__link):hover,

body.gx-body :is(.dropdown-item,.gx-mega__link):focus-visible {

  background:rgba(245,197,24,.12) !important; color:#f5c518 !important;

}

body.gx-body :is(.form-control,select,.gx-server-select__toggle,.gx-server-select__menu) {

  border-color:var(--gx-gold-line) !important;

}

body.gx-body :is(.gx-mega__toggle,.gx-btn-outline,.b16-store__sort-btn):focus-visible {

  outline:2px solid #f5c518; outline-offset:3px;

}

body.gx-body .gx-topbar { border-bottom-color:var(--gx-gold-line) !important; }

body.gx-body :is(.b16-store,.b16-store__panel,.b16-store__overlay) {

  --b16-store-accent:#f5c518; --b16-store-buy:#f5c518;

  --b16-store-price:#f5c518; --b16-store-line:rgba(245,197,24,.55);

}

body.gx-body .b16-store__layout { grid-template-columns:200px minmax(0,1fr); gap:14px; }

body.gx-body .b16-store__grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:12px; }

body.gx-body .b16-store__card { border-radius:14px; min-height:0; }

body.gx-body .b16-store__card-head { font-size:13px; padding:10px; }

body.gx-body .b16-store__card-media { aspect-ratio:auto; height:clamp(220px,24vw,330px); margin:0 8px; border-color:var(--gx-gold-line); }

body.gx-body .b16-store__card-img { object-fit:contain; }

body.gx-body .b16-store__card-cart { color:#17130a; }

body.gx-body .b16-store__card-price { color:#f5c518; border:1px solid var(--gx-gold-line); }

body.gx-body .b16-store__server-btn.is-active,

body.gx-body .b16-store__sort-btn.is-active {

  border-color:#f5c518 !important; background:rgba(245,197,24,.14) !important; color:#f5c518;

}

body.gx-body .b16-store__server-btn.is-active i { color:#f5c518; }

body.gx-body .b16-store__server-list[hidden] { display:none !important; }

@media(max-width:991.98px) {

  body.gx-body .b16-store__layout { grid-template-columns:1fr; }

  body.gx-body .b16-store__servers { position:static; }

  body.gx-body .b16-store__grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }

}

@media(max-width:575.98px) {

  body.gx-body .b16-store__grid { gap:8px; }

  body.gx-body .b16-store__card-media { height:220px; margin:0 5px; }

}



/* Public module controls share the site's dark and gold palette. */

body.gx-body .rcon-shop-server-panel { background:#17171f; border-color:var(--gx-gold-line); }

body.gx-body .rcon-shop-server-btn.is-active { border-color:#f5c518; background:rgba(245,197,24,.12); color:#f5c518; }

body.gx-body .rcon-shop-server-btn.is-active i { color:#f5c518; }

body.gx-body .rcon-shop-product-in-detail .btn-default { background:#202027; border:1px solid var(--gx-gold-line); color:#ececf4; }

body.gx-body .rcon-shop-product-in-detail .btn-default.active { background:#f5c518; color:#17130a; }

body.gx-body .rcon-shop-product-in-detail .image { max-width:100%; }

body.gx-body .rcon-shop-product .actions .btn { margin:0; width:auto; }

body.gx-body .rcon-shop-product-layout { grid-template-columns:154px minmax(0,1fr); }

body.gx-body :is(.b16-store__sort-btn,.b16-store__card-price,.b16-store__card-cart) { border-color:var(--gx-gold-line); }

body.gx-body .b16-store__sort-btn { background:rgba(245,197,24,.12); color:#f5c518; }

body.gx-body .gx-knife-name > .gx-account-name { font-size:inherit; }

@media(max-width:991.98px) { body.gx-body .rcon-shop-product-layout { grid-template-columns:minmax(0,1fr); } }



body.gx-body .b16-sort__person .gx-avatar { --gx-avatar-size:32px; --gx-avatar-radius:50%; --gx-frame-scale:1.42; flex:0 0 32px; width:32px !important; height:32px !important; overflow:visible; }

body.gx-body .b16-sort__person .gx-avatar__img { width:32px !important; height:32px !important; border-radius:50%; }



/* Keep the statistics avatar clear of the nickname on every viewport. */

body.gx-body .gx-stats__nick .user-profile { display:inline-flex; align-items:center; gap:12px; }

body.gx-body .gx-stats__nick .user-profile > .gx-avatar { --gx-avatar-size:28px !important; flex:0 0 28px; width:28px !important; max-width:28px !important; height:28px !important; margin:0 !important; }

body.gx-body .gx-stats__nick .user-profile .gx-avatar__img { box-sizing:border-box; }

body.gx-body .gx-stats__nick .user-profile > img:not(.gx-avatar__frame) { flex-shrink:0; margin:0 !important; }


/* Profile cards use the same gold outline as the shared site panels. */
body.gx-body :is(.gx-profile__hero,.gx-profile__tabs,.gx-profile__card,
 .gx-profile__stat-pill,.gx-profile__btn,.gx-profile__social,.gx-profile__empty) {
  border:1px solid var(--gx-gold-line,rgba(245,197,24,.55)) !important;
}
body.gx-body .gx-profile__dl > li {
  border-color:var(--gx-gold-line,rgba(245,197,24,.55));
}
body.gx-body .gx-profile__name {
  color:var(--gx-profile-name-color,#f5c518);
  text-shadow:0 0 8px currentColor,0 0 18px currentColor;
}
/* Guests are identified by the server renderer, never guessed from their name. */
body.gx-body .gx-player-name--unregistered,
body.gx-body .gx-account-card--unregistered .gx-account-name {
  color:#CCCCCC;
}
body.gx-body .gx-account-card--unregistered .gx-home-avatar-empty {
  color:#f5c518;
  background:rgba(245,197,24,.12);
}

/* Keep the guest nickname light gray inside the statistics table and modal. */
body.gx-body .gx-stats .gx-player-name--unregistered,
body.gx-body .gx-stats__nick .gx-player-name--unregistered,
body.gx-body .modal .gx-player-name--unregistered {
  color:#CCCCCC !important;
}
