.avatar_frame {
  position: absolute !important;
  transform: scale(1.18);
  border-radius: 0 !important;
  z-index: 2;
  box-shadow: none !important;
  outline: none !important;
}

.back_content {
  display: block;
  filter: grayscale(1);
  height: 130px;
  width: auto;
  background-size: cover !important;
  background-position: center !important;
  transition: 0.3s;
  cursor: pointer;
  border-radius: 12px;
  border: 2px solid transparent;
}

.back_content:hover {
  transition: 0.3s;
  filter: none;
}

.back_content video {
  width: 100% !important;
  height: 100%;
  object-fit: cover;
  transition: 0.3s;
  border-radius: 12px;
  position: relative !important;
}

input[name="background"]:checked + label {
  border: 2px solid var(--span);
  transition: 0.3s;
  filter: none;
}

.profile_settings_inputs {
  display: flex;
  justify-items: stretch;
  flex-direction: column;
  width: 40%;
  gap: 15px;
}

.background {
  position: absolute;
  visibility: hidden;
}

.profile_settings_backs_list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(11em, 1fr)) !important;
  overflow-y: scroll;
  overflow-x: hidden;
  height: 450px;
  margin: 7px 0 10px;
  width: 100%;
  grid-gap: 10px;
  gap: 10px;
}

/* NEW PROFILES STYLE */

.profile_user_card {
  overflow: hidden;
  border-radius: 16px;
  padding: 5px;
}

.user_back,
.user_back video {
  display: block;
  width: 100%;
  height: 8em;
  border-radius: 11px 11px 0 0;
  position: relative;
}

.user_back > video {
  position: absolute !important;
  object-fit: cover;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 11px 11px 0 0;
  pointer-events: none;
}

.user_settings {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  right: 15px;
  top: 15px;
}

.user_settings svg {
  fill: var(--text-default);
  width: 17px;
  height: 17px;
  opacity: 0.5;
  transition: 0.3s;
}

.user_settings:hover svg {
  opacity: 1;
}

.user_socials {
  width: max-content;
  display: flex;
  flex-direction: row;
  gap: 5px;
  align-items: center;
  justify-content: center;
  padding: 8px;
  background: var(--bg-modal);
  backdrop-filter: blur(6px);
  border-radius: 6px;
}

.header_user_info {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  height: 100%;
  padding: 15px;
  position: relative;
  justify-content: flex-end;
}

.social_button,
.social_button_dsicord {
  height: 25px;
  width: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 25px;
  cursor: pointer;
}

.social_button svg,
.social_button_dsicord svg {
  width: auto;
  height: 20px;
  opacity: 0.5;
  transition: 0.3s;
}

.social_button:hover svg,
.social_button_dsicord:hover svg {
  opacity: 1;
}

.header_user_info img {
  position: absolute;
  left: 6%;
  height: 80px;
  width: 80px;
  border-radius: 4px;
  bottom: -25%;
  outline: 5px solid var(--card);
  box-shadow: inset 5em 5em var(--card), 0px 0px 0px 4px var(--card);
}

.user_balance {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 5px;
  background: var(--money-bg);
  border-radius: 8px;
  padding: 8px 10px;
  cursor: pointer;
  justify-content: center;
}

.user_sec_block {
  display: flex !important;
  flex-direction: row;
  height: max-content !important;
  justify-content: flex-end;
  padding: 15px 20px;
  gap: 8px;
  align-items: center;
  min-height: 64px;
}

.user_sec_block img {
  width: 70px;
  height: auto;
  cursor: help;
}

.balance_info {
  display: flex;
}

.balance_count {
  font-size: 14px;
  font-weight: 500;
  color: var(--money);
}

.user_balance svg {
  width: 16px;
  height: 16px;
  fill: var(--money);
}

.user_menu_short {
  display: flex;
  flex-direction: row;
  gap: 5px;
  justify-content: space-between;
}

.user_menu_short a {
  background: var(--span-low);
  border-radius: 8px;
  padding: 10px;
  transition: 0.3s;
  height: 40px;
  width: 100%;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.user_menu_short a svg {
  width: 20px;
  height: auto;
  fill: var(--span);
}

.user_menu_short a.a_active {
  background: var(--span);
}

.user_menu_short a.a_active svg {
  fill: var(--text-default);
}

.user_menu_short a:not(.a_active):hover {
  background: var(--span-10);
}

.user_third_block {
  height: 100% !important;
  background: var(--transparent-2-w);
  padding: 20px;
  margin: 0 10px 10px;
  display: flex !important;
  flex-direction: column;
  border-radius: 12px;
  gap: 15px;
}

.user_nickname {
  display: flex;
  font-size: 16px;
  font-weight: 700;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  width: fit-content;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.user_nickname svg {
  width: 15px;
  height: auto;
  fill: var(--text-default);
  opacity: 0.1;
  transition: 0.3s;
  flex-shrink: 0;
}

.user_nickname:hover svg {
  opacity: 1;
}

.user_status_server {
  color: var(--green);
  font-size: 12px;
  font-weight: 600;
}

.user_status {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.status_title {
  font-size: 10px;
  opacity: 0.5;
  color: var(--text-custom);
}

.status_content {
  color: var(--text-custom);
  font-size: 14px;
}

.user_badge {
  display: flex;
  width: max-content;
  padding: 5px 10px 5px 8px;
  border-radius: 25px;
  background: var(--transparent-2-w);
  font-size: 12px;
  font-weight: 600;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}

.user_badge span {
  display: flex;
  height: 12px;
  width: 12px;
  background: var(--span);
  border-radius: 25px;
}

.user_roles {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  flex-direction: row;
}

.badge_player {
  color: var(--text-custom);
  background: var(--transparent-10-w);
}

.badge_player_circle {
  background: var(--text-custom) !important;
}

.badge_admin {
  color: #3c96ff;
  background: rgba(60, 150, 255, 0.2);
}

.badge_admin_circle {
  background: #3c96ff !important;
}

.badge_site_admin {
  color: #7d9aff;
  background: rgb(125 154 255 / 16%);
}

.badge_site_admin_circle {
  background: #7d9aff !important;
  box-shadow: 0 0 8px rgb(125 154 255 / 45%);
}

.badge_site_role {
  color: var(--site-role-color, #ff326f);
  background: color-mix(in srgb, var(--site-role-color, #ff326f) 17%, transparent);
}

.badge_site_role_circle {
  background: var(--site-role-color, #ff326f) !important;
  box-shadow: 0 0 8px color-mix(in srgb, var(--site-role-color, #ff326f) 45%, transparent);
}

.badge_vip {
  color: #ffe600;
  background: rgba(255 230 0/ 20%);
}

.badge_vip_circle {
  background: #ffe600 !important;
}

.badge_top-1 {
  color: var(--top-one);
  background: rgb(255 219 92 / 20%);
}

.badge_top-2 {
  color: var(--top-two);
  background: rgb(191 224 255 / 20%);
}

.badge_top-3 {
  color: var(--top-three);
  background: rgb(248 167 133 / 20%);
}

.badge_top_circle-1 {
  background: var(--top-one) !important;
}

.badge_top_circle-2 {
  background: var(--top-two) !important;
}

.badge_top_circle-3 {
  background: var(--top-three) !important;
}

.badge_banned {
  color: #bf0d0d;
  background: rgb(191 13 13 / 20%);
}

.badge_banned_circle {
  background: #bf0d0d !important;
}

.title_head {
  display: flex;
  flex-direction: row;
  gap: 10px;
  font-size: 20px;
  font-weight: 600;
  color: var(--text-default);
  align-items: center;
}

.title_head svg {
  width: 22px;
  height: 22px;
}
@media (max-width: 768.9px) {
  .country_container,
  .faceit_container,
  .adm_container,
  .steam_container,
  .stats_container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 5px;
    background: var(--transparent);
    padding: 20px;
    border-radius: 12px;
    margin: 10px 0;
  }
}

@media (min-width: 769px) {
  .country_container,
  .faceit_container,
  .adm_container,
  .steam_container,
  .stats_container {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 40px;
    background: var(--transparent);
    padding: 20px;
    border-radius: 12px;
    margin: 10px 0;
  }
}

.country_column,
.faceit_column,
.adm_column,
.steam_column,
.stats_column {
  display: flex;
  flex-direction: column;
  gap: 13px;
  align-items: flex-start;
}

.title_column {
  font-size: 12px;
  color: var(--text-custom);
  opacity: 0.5;
}

@media (max-width: 768px) {
  .content_column {
    display: flex;
    font-size: 12px;
    font-weight: 500;
    flex-direction: row;
    align-items: center;
    gap: 5px;
    color: var(--text-custom);
  }
}

@media (min-width: 769px) {
  .content_column {
    display: flex;
    font-size: 16px;
    font-weight: 700;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    color: var(--text-custom);
  }
}

.content_column img {
  width: 24px;
  height: auto;
}

.content_column svg {
  width: 16px;
  height: auto;
  fill: var(--text-custom);
}

@media (max-width: 1299px) {
  .general_info {
    display: flex;
    flex-direction: column;
    gap: 30px;
  }
}

@media (min-width: 1300px) {
  .general_info {
    display: flex;
    flex-direction: row;
    gap: 30px;
  }
}

.tables_info {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.fill_blocks {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}

.adm_warn_content {
  background: var(--transparent);
  width: 100%;
  border-radius: 8px;
  padding: 10px;
  color: var(--text-custom);
}

.bans_comms_header li span,
.bans_comms_content li span,
.transaction_header li span,
.transaction_content li span {
  color: var(--text-custom);
}

.transaction_content li span img {
  height: 32px;
  width: auto;
}

.comms_svg svg,
.trans_svg svg {
  fill: var(--text-custom);
  opacity: 0.5;
  width: 20px;
  height: auto;
}

@media (max-width: 768.9px) {
  .bans_comms_content li,
  .transaction_content li {
    display: grid;
    grid-template-columns: 1fr 0.6fr;
    background-color: var(--bg-table);
    border-radius: 8px;
    user-select: none;
    justify-items: start;
    width: 100%;
    padding: 15px 20px;
    font-size: 12px;
    align-items: center;
  }

  .bans_comms_header li,
  .transaction_header li {
    display: grid;
    grid-template-columns: 1fr 0.6fr;
    background-color: var(--transparent);
    border-radius: 8px;
    user-select: none;
    justify-items: start;
    width: 100%;
    padding: 10px 20px;
    font-size: 12px;
  }

  .hide_this {
    display: none !important;
  }
}

@media (min-width: 769px) {
  .bans_comms_content li,
  .transaction_content li {
    display: grid;
    grid-template-columns: 0.5fr 2fr 0.8fr 0.5fr 0.7fr;
    background-color: var(--bg-table);
    border-radius: 8px;
    user-select: none;
    justify-items: start;
    width: 100%;
    padding: 15px 20px;
    font-size: 12px;
    align-items: center;
  }

  .bans_comms_header li,
  .transaction_header li {
    display: grid;
    grid-template-columns: 0.5fr 2fr 0.8fr 0.5fr 0.7fr;
    background-color: var(--transparent);
    border-radius: 8px;
    user-select: none;
    justify-items: start;
    width: 100%;
    padding: 10px 20px;
    font-size: 12px;
  }

  .hide_this {
    display: block;
  }
}

.bans_comms_container,
.transaction_container {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.bans_comms_content ul,
.transaction_content ul {
  display: flex;
  flex-direction: column;
  gap: 3px;
  height: 139px;
  overflow: hidden;
  overflow-y: scroll;
}

.exp_badge {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px 10px;
  background: rgb(152 158 202 / 20%);
  border-radius: 25px;
  color: var(--text-custom);
}

.perm {
  color: var(--red) !important;
  background: rgb(255 73 64 / 20%) !important;
}

.expired {
  text-decoration: line-through;
}

.unbanned {
  color: var(--green) !important;
  background: rgb(100 206 130 / 20%) !important;
}

.empty_blocks {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-family: "Unbounded";
  font-weight: 700;
  border-radius: 12px;
  width: 100%;
  border: 1px solid var(--transparent);
  height: 187px;
  color: var(--text-custom);
}

.friends_list {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(auto-fill, minmax(14em, 1fr)) !important;
  grid-gap: 0.8rem;
  gap: 0.8rem;
  overflow: initial;
  align-content: flex-start;
  height: 486px;
  overflow: hidden;
  overflow-y: scroll;
  align-items: center;
}

.friend_card img {
  width: 30px;
  height: 30px;
  border-radius: 4px;
}

.friend_card {
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  background: var(--transparent);
  padding: 10px;
  border-radius: 12px;
  cursor: pointer;
  transition: 0.3s;
}

.friend_card:hover {
  background: var(--grey);
}

.friend_info {
  display: flex;
  flex-direction: column;
}

.friend_nick {
  font-size: 14px;
  color: var(--span);
}

.friend_lc {
  font-size: 10px;
  opacity: 0.5;
  color: var(--text-custom);
}

.user_online_status {
  position: relative;
  display: none;
}

.user_online_status::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--green);
}

.empty_friends {
  height: 486px;
  font-size: 20px;
  font-family: "Unbounded";
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-custom);
}

.settings_container {
  display: flex;
  flex-direction: row;
  gap: 20px;
}

.settings_inp_inf {
  display: flex;
  flex-direction: column;
  width: 40%;
  gap: 10px;
}

.profile_settings_backs {
  width: 60%;
}

.online_pos {
  position: absolute;
  left: 15px;
  top: 20px;
}

/* Profile overview: keep the existing module and its theme palette. */
.profile-page .user_balance {
  min-height: 34px;
  text-decoration: none;
  transition: background .2s ease;
}

.profile-page .user_balance:hover { background: var(--money-bg-hover, var(--money-bg)); }
.profile-page .user_balance .balance_count { font-size: 12px; white-space: nowrap; }
.profile-page .user_balance svg { width: 14px; height: 14px; }
.profile-page .status_content { white-space: pre-wrap; overflow-wrap: anywhere; }

.profile-settings-dialog {
  position: fixed;
  inset: 0;
  width: min(450px, calc(100vw - 32px));
  max-width: none;
  max-height: calc(100dvh - 32px);
  margin: auto;
  padding: 20px;
  overflow-y: auto;
  border: 0;
  border-radius: 24px;
  background: var(--card);
  color: var(--text-custom);
  box-sizing: border-box;
}

.profile-settings-dialog::backdrop { background: rgb(0 0 0 / 60%); }
html.profile-settings-open { overflow: hidden; }
.profile-settings-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.profile-settings-heading h2 { margin: 0; color: var(--text-default); font-family: inherit; font-size: 20px; line-height: 28px; font-weight: 700; }
.profile-settings-close { display: grid; place-items: center; flex: 0 0 24px; width: 24px; height: 24px; padding: 0; border: 0; border-radius: 6px; background: transparent; color: var(--text-secondary); font-family: inherit; font-size: 24px; line-height: 1; cursor: pointer; }
.profile-settings-close:hover { color: var(--text-default); background: var(--button); }
.profile-settings-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.profile-settings-form label { display: flex; flex-direction: column; gap: 7px; min-width: 0; margin: 0; font-size: 14px; line-height: 18px; font-weight: 400; }
.profile-settings-form input:not([type="hidden"]), .profile-settings-form textarea { display: block; width: 100%; min-width: 0; height: 42px; margin: 0; padding: 12px 15px; border: 1px solid transparent; border-radius: 8px; outline: 0; box-shadow: none; background: var(--button); color: var(--text-custom); font-family: inherit; font-size: 12px; line-height: 18px; box-sizing: border-box; }
.profile-settings-form input::placeholder, .profile-settings-form textarea::placeholder { color: var(--text-secondary); opacity: 1; }
.profile-settings-form input:focus, .profile-settings-form textarea:focus { border-color: var(--span); }
.profile-settings-form .profile-settings-status { grid-column: 1 / -1; }
.profile-settings-form textarea { height: 100px; resize: vertical; }
.profile-settings-save { grid-column: 1 / -1; width: 100%; height: 41px; margin-top: -4px; padding: 0 15px; border: 0; border-radius: 8px; background: var(--button); color: var(--text-custom); font: inherit; font-size: 14px; cursor: pointer; transition: background .2s; }
.profile-settings-save:hover { background: var(--button-hover); }
.profile-settings-save:focus-visible, .profile-settings-close:focus-visible { outline: 2px solid var(--span); outline-offset: 2px; }
.profile-settings-error { grid-column: 1 / -1; margin: 0 0 8px; color: var(--red, #f44); font-size: 13px; }
.profile-settings-notice { position: fixed; right: 20px; bottom: 20px; z-index: 1100; max-width: calc(100vw - 40px); padding: 15px 20px; border: 1px solid var(--green); border-radius: 12px; background: var(--card); color: var(--text-custom); }

.profile-transactions-card .card-container { padding: 10px 20px 24px; }
.profile-transactions-card .tables_info { gap: 26px; }
.profile-transactions-card .title_head { font-size: 16px; }
.profile-transactions-scroll { width: 100%; min-width: 0; overflow-x: auto; }
.profile-transactions-table { width: 100%; min-width: 620px; margin: 0; border-collapse: separate; border-spacing: 0 4px; table-layout: fixed; text-align: left; }
.profile-transactions-table col:nth-child(1) { width: 11%; }
.profile-transactions-table col:nth-child(2) { width: 43%; }
.profile-transactions-table col:nth-child(3) { width: 17%; }
.profile-transactions-table--payments col:nth-child(4) { width: 11%; }
.profile-transactions-table--payments col:nth-child(5) { width: 18%; }
.profile-transactions-table--purchases col:nth-child(4) { width: 29%; }
.profile-transactions-table th, .profile-transactions-table td { border: 0; padding: 10px; color: var(--text-custom); font-size: 12px; line-height: 18px; text-align: left; vertical-align: middle; overflow-wrap: anywhere; }
.profile-transactions-table th { height: 38px; background: var(--transparent-2-w); font-weight: 400; }
.profile-transactions-table td { height: 72px; background: var(--button); }
.profile-transactions-table th:first-child, .profile-transactions-table td:first-child { border-radius: 8px 0 0 8px; }
.profile-transactions-table th:last-child, .profile-transactions-table td:last-child { border-radius: 0 8px 8px 0; }
.profile-transactions-table tbody tr:first-child td { border-top: 6px solid var(--card); }
.profile-transactions-table .profile-payment-gateway { display: block; max-width: 100%; width: auto; height: 22px; object-fit: contain; }
.profile-purchase-promo { display: block; margin-top: 4px; color: var(--text-secondary); font-size: 11px; }

.profile-page > .col-md-3,
.profile-page > .col-md-9 {
  min-width: 0;
}

.profile-page > .col-md-3 > .custom-select-wrapper {
  display: block;
  margin-bottom: 5px;
}

.profile-page > .col-md-3 .custom-select-trigger {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 41px;
  padding: 10px 16px;
  border: 1px solid var(--transparent-2-w);
  border-radius: 8px;
  color: var(--text-custom);
  font-size: 12px;
  line-height: 19px;
}

.profile-page > .col-md-3 .custom-select-trigger::before {
  content: none;
}

.profile-page > .col-md-3 .custom-select-trigger::after {
  position: static;
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  margin: -3px 0 0;
  transform: rotate(45deg);
}

.profile-page .user_third_block hr {
  width: 100%;
  height: 2px;
  margin: 8px 0;
  border: 0;
  border-top: 1px solid var(--transparent-5-w);
  flex-shrink: 0;
}

.profile-page .user_menu_short a:focus-visible,
.profile-page .user_settings:focus-visible,
.profile-page .social_button:focus-visible {
  outline: 2px solid var(--span);
  outline-offset: 3px;
}

.profile-info-card > .card-header {
  padding: 15px 20px 0;
}

.profile-info-card > .card-header > .badge {
  display: block;
  width: 100%;
  padding: 8px 8px 16px;
  border-bottom: 1px solid var(--transparent-5-w);
  color: var(--text-custom);
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  text-align: left;
}

.profile-info-card .fill_blocks {
  min-width: 0;
  gap: 5px;
}

.profile-info-card .title_head {
  position: relative;
  flex-direction: row-reverse;
  gap: 8px;
  color: var(--text-custom);
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
}

.profile-info-card .title_head::before {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--transparent-5-w);
}

.profile-info-card .title_head svg {
  flex-shrink: 0;
  width: 12.8px;
  height: 12.8px;
}

.profile-info-card .country_container,
.profile-info-card .faceit_container,
.profile-info-card .steam_container,
.profile-info-card .stats_container {
  gap: 4.8px;
  padding: 4.8px;
  margin: 4.8px 0;
  background: var(--transparent-2-w);
  align-items: stretch;
}

.profile-info-card .country_column,
.profile-info-card .faceit_column,
.profile-info-card .steam_column,
.profile-info-card .stats_column {
  flex: 1 1 0;
  min-width: 0;
  gap: 2.4px;
  padding: 8px;
  border: 1px solid var(--transparent-2-w);
  border-radius: 10px;
  background: var(--transparent-2-w);
}

.profile-info-card .title_column {
  color: var(--text-secondary);
  opacity: 1;
  font-size: 12px;
  line-height: 18px;
}

.profile-info-card .content_column {
  max-width: 100%;
  min-height: 21px;
  color: var(--text-custom);
  font-size: 14px;
  font-weight: 700;
  line-height: 21px;
  overflow-wrap: anywhere;
}

.profile-info-card .content_column img {
  flex-shrink: 0;
  width: 20px;
  max-height: 21px;
  object-fit: contain;
}

.profile-info-card .content_column svg {
  flex-shrink: 0;
}

.profile-info-card .copybtn2 {
  transition: color 0.2s;
}

.profile-info-card .copybtn2:hover {
  color: var(--span);
}

.profile-info-card .copybtn2 svg {
  fill: currentColor;
}

@media (max-width: 575px) {
  .profile-info-card .country_container,
  .profile-info-card .faceit_container,
  .profile-info-card .steam_container,
  .profile-info-card .stats_container {
    flex-wrap: wrap;
  }

  .profile-info-card .country_column,
  .profile-info-card .faceit_column,
  .profile-info-card .stats_column {
    flex-basis: calc(50% - 5px);
  }

  .profile-info-card .steam_column {
    flex-basis: 100%;
  }
}
