:root{
  --vx-auth-bg:#070b11;
  --vx-auth-panel:#101722;
  --vx-auth-border:#283548;
  --vx-auth-text:#f3f7fb;
  --vx-auth-muted:#94a3b5;
  --vx-auth-accent:#5b8cff;
}

.vxAuthLoginTrigger{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  white-space:nowrap;
}
.vxAuthLoginTrigger .vxAuthTriggerIcons{
  display:inline-flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  margin-left:1px;
}
.vxAuthLoginTrigger .vxAuthMiniMark{width:20px;height:20px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.86);border-radius:50%;overflow:hidden;box-sizing:border-box}
.vxAuthLoginTrigger .vxAuthMiniMark+ .vxAuthMiniMark{margin-left:-5px}
.vxAuthLoginTrigger .vxAuthMiniMark--vk{background:#07f;padding:3px}
.vxAuthLoginTrigger .vxAuthMiniMark--ya{background:#fff;color:#e00000;font:800 13px/1 Arial,sans-serif}
.vxAuthLoginTrigger svg{display:block;width:100%;height:100%;fill:#fff}
html.vxAuthAuthenticated .vxAuthLoginTrigger,
html.vxAuthAuthenticated [data-vx-public-login],
html.vxAuthAuthenticated [data-vx-auth-login]{display:none!important}

.vxAuthOverlay{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:grid;
  place-items:center;
  padding:22px;
  background:rgba(3,6,10,.88);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
  color:var(--vx-auth-text);
  font:14px/1.5 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.vxAuthOverlay[hidden]{display:none!important}
.vxAuthCard{
  position:relative;
  width:min(430px,100%);
  padding:28px;
  border:1px solid var(--vx-auth-border);
  border-radius:24px;
  background:
    radial-gradient(circle at 50% -20%,rgba(91,140,255,.2),transparent 46%),
    linear-gradient(145deg,#121a26,#0b1119);
  box-shadow:0 32px 100px rgba(0,0,0,.58);
  text-align:center;
}
.vxAuthCard--maintenance{width:min(560px,100%);padding:38px 34px}
.vxAuthClose{
  position:absolute;
  top:14px;
  right:14px;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.1);
  border-radius:11px;
  background:rgba(255,255,255,.04);
  color:#c8d2de;
  font-size:20px;
  cursor:pointer;
}
.vxAuthBrandMark{
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  margin:0 auto 17px;
  border:1px solid rgba(122,160,255,.42);
  border-radius:19px;
  background:linear-gradient(145deg,#182a45,#0d1725);
  box-shadow:0 0 34px rgba(91,140,255,.2);
  color:#dce8ff;
  font-size:20px;
  font-weight:900;
  letter-spacing:-.08em;
}
.vxAuthCard h1,.vxAuthCard h2{margin:0 0 9px;color:var(--vx-auth-text);font-size:23px;line-height:1.2}
.vxAuthCard p{margin:0;color:var(--vx-auth-muted)}
.vxAuthProviderList{display:grid;gap:10px;margin-top:22px}
.vxAuthProvider{
  min-height:52px;
  display:grid;
  grid-template-columns:34px 1fr 22px;
  align-items:center;
  gap:11px;
  width:100%;
  margin:0!important;
  padding:8px 12px!important;
  border-radius:14px!important;
  font:700 15px/1.2 Inter,system-ui,sans-serif!important;
  cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease;
}
.vxAuthProvider:hover{transform:translateY(-1px)}
.vxAuthProvider:disabled{opacity:.42;cursor:not-allowed;transform:none}
.vxAuthProvider--vk{border:1px solid #1682ff!important;background:#07f!important;color:#fff!important;box-shadow:0 12px 30px rgba(0,119,255,.2)}
.vxAuthProvider--ya{border:1px solid #dfe3e8!important;background:#fff!important;color:#111!important;box-shadow:0 12px 30px rgba(0,0,0,.16)}
.vxAuthProviderMark{width:34px;height:34px;display:grid;place-items:center;border-radius:11px}
.vxAuthProvider--vk .vxAuthProviderMark{background:rgba(255,255,255,.13);padding:7px}
.vxAuthProvider--vk svg{width:100%;height:100%;fill:#fff}
.vxAuthProvider--ya .vxAuthProviderMark{background:#f1f2f4;color:#e00000;font:900 22px/1 Arial,sans-serif}
.vxAuthProviderLabel{text-align:left}
.vxAuthProviderArrow{font-size:20px;opacity:.72}
.vxAuthFinePrint{margin-top:16px!important;font-size:11px;line-height:1.45}
.vxAuthError{min-height:18px;margin-top:13px;color:#ff8796;font-size:12px}
.vxAuthPrimary{
  width:100%;
  min-height:48px;
  margin:22px 0 0!important;
  border:1px solid #6e97ff!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#4f7fe8,#6b5ee8)!important;
  color:#fff!important;
  font-weight:800!important;
  cursor:pointer;
}
.vxAuthGateLogout{
  width:100%;
  min-height:42px;
  margin:12px 0 0!important;
  border:1px solid rgba(148,163,184,.28)!important;
  border-radius:12px!important;
  background:rgba(15,23,42,.64)!important;
  color:#cbd5e1!important;
  font-weight:750!important;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,color .16s ease;
}
.vxAuthGateLogout:hover{border-color:rgba(148,163,184,.5)!important;background:rgba(30,41,59,.82)!important;color:#fff!important}
.vxAuthGateLogout:disabled{opacity:.55;cursor:wait}
.vxAuthSteamMark{width:56px;height:56px;margin:0 auto 16px;display:grid;place-items:center;border-radius:18px;background:#172b45;color:#fff}
.vxAuthSteamMark svg{width:34px;height:34px;fill:#fff}
.vxAuthDiscordMark{width:56px;height:56px;margin:0 auto 16px;display:grid;place-items:center;border-radius:18px;background:#5865f2;color:#fff}
.vxAuthDiscordMark svg{width:35px;height:28px;fill:#fff}
.vxAuthMaintenanceBadge{display:inline-flex;align-items:center;gap:7px;margin-bottom:17px;padding:6px 11px;border:1px solid rgba(245,183,76,.38);border-radius:999px;background:rgba(245,183,76,.08);color:#f7c66f;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.vxAuthMaintenanceMeta{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:18px}
.vxAuthMaintenanceMeta span{padding:5px 9px;border:1px solid rgba(255,255,255,.09);border-radius:999px;color:#8090a3;font-size:11px}

.vxAuthAdminCard{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 16px;padding:17px 18px;border:1px solid rgba(91,140,255,.28);border-radius:15px;background:linear-gradient(135deg,rgba(48,75,126,.18),rgba(16,23,34,.85))}
.vxAuthAdminCard strong{display:block;margin-bottom:4px;color:#eef4fb}
.vxAuthAdminCard small{display:block;color:#8998aa;line-height:1.4}
.vxAuthAdminCard button{flex:0 0 auto;margin:0!important}
.vxAuthAdminCard.is-closed{border-color:rgba(245,91,112,.42);background:linear-gradient(135deg,rgba(116,33,48,.2),rgba(16,23,34,.86))}
.vxAuthAdminCard.is-closed button{border-color:#c34d61!important;background:#8d2e42!important;color:#fff!important}

/* Shared mini-profile: same visual component on Platform, Support and Rent. */
.vxSharedProfile.vxProfileWrap{position:relative;display:block;flex:0 0 auto}
.vxSharedProfile[hidden]{display:none!important}
.vxSharedProfile .vxProfileButton{width:38px;height:38px;padding:0!important;margin:0!important;border:1px solid #334155!important;border-radius:999px!important;background:#111827!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden;cursor:pointer;box-shadow:none!important}
.vxSharedProfile .vxProfileButton:hover,.vxSharedProfile .vxProfileButton[aria-expanded="true"]{border-color:#60a5fa!important;box-shadow:0 0 0 3px rgba(59,130,246,.16)!important;transform:none!important}
.vxSharedProfile .vxProfileAvatar{width:100%;height:100%;object-fit:cover;display:none}
.vxSharedProfile .vxProfileAvatarFallback{font-size:18px;line-height:1}
.vxSharedProfile .vxProfilePanel{position:absolute;right:0;top:calc(100% + 10px);z-index:2147482000;width:min(330px,calc(100vw - 24px));padding:14px;border:1px solid #2c3b56;border-radius:14px;background:#0f1720;box-shadow:0 18px 50px rgba(0,0,0,.45);color:#e5e7eb;text-align:left;font:13px/1.45 Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.vxSharedProfile .vxProfilePanel.hidden{display:none!important}
.vxSharedProfile .vxProfileHead{display:flex;align-items:center;gap:12px;padding-bottom:12px;margin-bottom:8px;border-bottom:1px solid #273449}
.vxSharedProfile .vxProfileHeadIcon{width:46px;height:46px;border-radius:999px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#172033;border:1px solid #334155;flex:0 0 auto}
.vxSharedProfile .vxProfileHeadIcon img{width:100%;height:100%;object-fit:cover;display:none}
.vxSharedProfile .vxProfileName{font-weight:700;overflow-wrap:anywhere;color:#f3f4f6}
.vxSharedProfile .vxProfileSteam{margin-top:3px;font-size:12px;color:#94a3b8;overflow-wrap:anywhere}
.vxSharedProfile .vxProfileRow{display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;padding:7px 0;font-size:13px}
.vxSharedProfile .vxProfileLabel{color:#94a3b8}
.vxSharedProfile .vxProfileValue{text-align:right;overflow-wrap:anywhere}
.vxSharedProfile .vxProfileInlineAction{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0}.vxSharedProfile .vxProfileInlineAction b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vxSharedProfile button[data-vx-profile-game-edit],.vxSharedProfile button[data-vx-profile-steam-link],.vxSharedProfile button[data-vx-profile-discord-link]{min-height:0!important;margin:0!important;padding:5px 8px!important;border:1px solid #334155!important;border-radius:8px!important;background:#172033!important;color:#eef2f7!important;font:700 11px/1.2 Inter,system-ui,sans-serif!important;cursor:pointer;box-shadow:none!important}
.vxSharedProfile .vxProfileLinkRow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid rgba(255,255,255,.08)}
.vxSharedProfile .vxProfileSocialLabel{display:flex;align-items:center;gap:8px;color:#cbd5e1;font-weight:700}
.vxSharedProfile .vxProfileSocialMark{width:23px;height:23px;display:grid;place-items:center;border-radius:7px;color:#fff}.vxSharedProfile .vxProfileSocialMark svg{width:15px;height:15px;fill:#fff}.vxSharedProfile .vxProfileSocialMark--steam{background:#172b45}.vxSharedProfile .vxProfileSocialMark--discord{background:#5865f2}
.vxSharedProfile .vxProfileSocialStatus{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0}.vxSharedProfile .vxProfileStatus{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.vxSharedProfile .vxProfileStatus.is-on{color:#22c55e}.vxSharedProfile .vxProfileStatus.is-off{color:#ef4444}
.vxSharedProfile .vxProfilePanelActions{padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}.vxSharedProfile .vxProfilePanelActions button{width:100%;min-height:36px!important;margin:0!important;border:1px solid #51303a!important;border-radius:9px!important;background:#2b1820!important;color:#ffb8c2!important;font-weight:800!important;cursor:pointer}
.vxProfileNickField{display:grid;gap:7px;margin-top:18px;text-align:left;color:#aab8c8;font-size:12px}.vxProfileNickField input{width:100%;box-sizing:border-box;padding:12px 13px;border:1px solid #33445c;border-radius:11px;outline:none;background:#0a1018;color:#fff;font:600 14px/1.2 Inter,system-ui,sans-serif}.vxProfileNickField input:focus{border-color:#668fff;box-shadow:0 0 0 3px rgba(91,140,255,.14)}

@media(max-width:600px){
  .vxAuthOverlay{padding:14px;align-items:end}
  .vxAuthCard{padding:25px 20px 22px;border-radius:22px}
  .vxAuthCard--maintenance{padding:30px 22px}
  .vxAuthAdminCard{align-items:stretch;flex-direction:column}
  .vxAuthAdminCard button{width:100%}
  .vxSharedProfile .vxProfilePanel{position:fixed;right:12px;top:68px;width:calc(100vw - 24px)}
}

/* Account session manager */
.vxSharedProfile .vxProfilePanelActions{display:grid;gap:8px}
.vxSharedProfile .vxProfilePanelActions .vxProfileSessionsButton{border-color:#334155!important;background:#172033!important;color:#eef2f7!important}
.vxSharedProfile .vxProfilePanelActions .vxProfileSessionsButton:hover{border-color:#5b8cff!important;background:#1b2940!important}
.vxSessionsOverlay{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(3,7,18,.78);backdrop-filter:blur(7px)}
.vxSessionsModal{width:min(760px,100%);max-height:min(820px,calc(100vh - 36px));display:flex;flex-direction:column;overflow:hidden;border:1px solid #2b3a52;border-radius:22px;background:#0d141e;color:#eef2f7;box-shadow:0 28px 90px rgba(0,0,0,.58);font:13px/1.45 Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.vxSessionsHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 20px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
.vxSessionsHeader h3{margin:0;color:#fff;font-size:20px}.vxSessionsHeader p{margin:5px 0 0;color:#8fa0b5;font-size:12px}
.vxSessionsClose{width:38px;height:38px;min-height:0!important;margin:0!important;padding:0!important;border:1px solid #334155!important;border-radius:11px!important;background:#151f2d!important;color:#cbd5e1!important;font:500 24px/1 sans-serif!important;cursor:pointer}
.vxSessionsBody{overflow:auto;padding:18px;display:grid;gap:20px}
.vxSessionsSection{display:grid;gap:10px}.vxSessionsSectionHead{display:flex;align-items:center;justify-content:space-between;gap:12px}.vxSessionsSectionHead>div{display:grid;gap:2px}.vxSessionsSectionHead b{color:#f5f7fb;font-size:14px}.vxSessionsSectionHead small{color:#7e8da1;font-size:11px}
.vxSessionsSectionHead>button{margin:0!important;padding:8px 10px!important;min-height:0!important;border:1px solid rgba(239,68,68,.34)!important;border-radius:9px!important;background:rgba(127,29,29,.18)!important;color:#ffb4bc!important;font:800 11px/1.2 Inter,system-ui,sans-serif!important;cursor:pointer}
.vxSessionsList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.vxSessionCard{display:grid;gap:10px;padding:14px;border:1px solid #27364b;border-radius:15px;background:#111a26}.vxSessionCard.is-current{border-color:rgba(59,130,246,.52);box-shadow:inset 0 0 0 1px rgba(59,130,246,.08)}
.vxSessionTop{display:flex;align-items:center;justify-content:space-between;gap:10px}.vxSessionSource{display:inline-flex;align-items:center;gap:7px;min-width:0}.vxSessionSource i{width:25px;height:25px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;color:#fff;font-style:normal}.vxSessionSource i svg{width:14px;height:14px;fill:#fff}.vxSessionSource i b{font-size:9px;letter-spacing:-.02em}.vxSessionSource>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dbe5f0;font-size:12px}.vxSessionSource.is-vk i{background:#0077ff}.vxSessionSource.is-tg i{background:#229ed9}.vxSessionSource.is-app i{background:linear-gradient(135deg,#4778e8,#735be7)}.vxSessionSource.is-site i{background:#34445a;font-size:18px}
.vxSessionCurrent,.vxSessionOnline,.vxSessionEnded{padding:4px 7px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.03em;text-transform:uppercase}.vxSessionCurrent{background:rgba(59,130,246,.15);color:#8fbcff}.vxSessionOnline{background:rgba(34,197,94,.13);color:#73e39a}.vxSessionEnded{background:rgba(148,163,184,.1);color:#8e9aad}
.vxSessionDevice{font-weight:800;color:#f0f4f8}.vxSessionGrid{display:grid;grid-template-columns:118px minmax(0,1fr);gap:5px 10px;font-size:11px}.vxSessionGrid span{color:#74859a}.vxSessionGrid b{font-weight:650;color:#c9d4df;overflow-wrap:anywhere}
.vxSessionEnd{width:100%;min-height:34px!important;margin:0!important;padding:7px 10px!important;border:1px solid rgba(239,68,68,.3)!important;border-radius:9px!important;background:rgba(92,28,39,.25)!important;color:#ffb6bf!important;font:800 11px/1.2 Inter,system-ui,sans-serif!important;cursor:pointer}.vxSessionEnd.is-current{border-color:#3b506d!important;background:#172437!important;color:#d8e4f1!important}
.vxSessionsEmpty,.vxSessionsLoading,.vxSessionsError{grid-column:1/-1;padding:20px;border:1px dashed #304056;border-radius:13px;color:#8191a5;text-align:center}.vxSessionsError{color:#ff9ba7}.vxSessionsError small{display:block;margin-top:5px;color:#8c98aa}
@media(max-width:680px){.vxSessionsOverlay{padding:0;align-items:flex-end}.vxSessionsModal{max-height:92vh;border-radius:22px 22px 0 0}.vxSessionsList{grid-template-columns:1fr}.vxSessionsSectionHead{align-items:stretch;flex-direction:column}.vxSessionsSectionHead>button{width:100%}.vxSessionGrid{grid-template-columns:105px minmax(0,1fr)}}
