/* VEXMIRA v2.7.6 compatibility layer — production stability, auth, SEO and responsive polish */
:root{--vx95-surface:#080c1b;--vx95-line:rgba(139,92,246,.22);--vx95-soft:rgba(255,255,255,.045)}

/* Server-rendered SEO copy is intentionally equivalent to visible SPA content; keep it accessible without duplicating the layout. */
#seoPrerender{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}

/* Header brand: explicit DOM lockup; never depend on pseudo-elements injected by older theme layers. */
#topbar .top-brand.vx95-brand-lockup{width:190px!important;min-width:190px!important;max-width:190px!important;height:50px!important;padding:5px 12px 5px 6px!important;display:flex!important;align-items:center!important;gap:10px!important;overflow:hidden!important;flex:0 0 190px!important;border:1px solid rgba(139,92,246,.28)!important;border-radius:17px!important;background:linear-gradient(135deg,rgba(139,92,246,.13),rgba(34,211,238,.055))!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 10px 26px -22px rgba(139,92,246,.8)!important}
#topbar .top-brand.vx95-brand-lockup::before,#topbar .top-brand.vx95-brand-lockup::after{display:none!important;content:none!important}
.vx95-brand-logo{width:40px;height:40px;min-width:40px;display:grid;place-items:center;overflow:hidden;border-radius:50%;filter:drop-shadow(0 0 8px rgba(139,92,246,.35))}
.vx95-brand-logo img{width:40px!important;height:40px!important;object-fit:cover!important;display:block!important}
.vx95-brand-copy{display:grid!important;min-width:0!important;line-height:1!important;text-align:left!important}
.vx95-brand-copy strong{display:block!important;color:#fff!important;font:900 14px/1.05 Inter,system-ui,sans-serif!important;letter-spacing:.14em!important;white-space:nowrap!important}
.vx95-brand-copy small{display:block!important;margin-top:5px!important;color:#8994b9!important;font:750 6.5px/1 Inter,system-ui,sans-serif!important;letter-spacing:.18em!important;white-space:nowrap!important}
#topbar .top-brand .brand-hex,#topbar .top-brand .vx46-brand-copy,#topbar .top-brand .vx73-brand-text{display:none!important}

/* Keep top navigation usable at laptop widths without hiding the brand name. */
@media (min-width:821px) and (max-width:1180px){
  #topbar .top-brand.vx95-brand-lockup{width:154px!important;min-width:154px!important;max-width:154px!important;flex-basis:154px!important}
  .vx95-brand-copy strong{font-size:12px!important}.vx95-brand-copy small{font-size:5.8px!important}
  #topbar .vx73-nav,#topbar nav{min-width:0!important}
}
@media (max-width:920px) and (min-width:821px){
  #topbar .top-brand.vx95-brand-lockup{width:52px!important;min-width:52px!important;max-width:52px!important;flex-basis:52px!important;padding:5px!important;justify-content:center!important}
  .vx95-brand-copy{display:none!important}
}
@media (max-width:820px){
  #topbar .top-brand.vx95-brand-lockup{width:48px!important;min-width:48px!important;max-width:48px!important;flex:0 0 48px!important;height:46px!important;padding:3px!important;border-radius:14px!important;justify-content:center!important}
  .vx95-brand-copy{display:none!important}.vx95-brand-logo,.vx95-brand-logo img{width:38px!important;height:38px!important;min-width:38px!important}
}

/* Production auth shell */
#modal-auth{z-index:9000!important;padding:12px!important;align-items:center!important;justify-content:center!important}
#modal-auth .auth-modal{width:min(1040px,calc(100vw - 30px))!important;height:min(720px,calc(100dvh - 28px))!important;max-height:720px!important;display:grid!important;grid-template-columns:minmax(300px,38%) minmax(0,1fr)!important;overflow:hidden!important;border-radius:28px!important;border:1px solid rgba(139,92,246,.27)!important;background:#070b18!important;box-shadow:0 32px 100px -48px #000,0 0 0 1px rgba(34,211,238,.04)!important}
#modal-auth .vx95-auth-aside{position:relative!important;min-width:0!important;height:100%!important;padding:42px 34px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;overflow:hidden!important;background:radial-gradient(480px 360px at 50% 22%,rgba(139,92,246,.22),transparent 67%),linear-gradient(155deg,#101630,#09101e 64%,#071725)!important;border-right:1px solid rgba(139,92,246,.18)!important}
#modal-auth .vx95-auth-aside>*{position:relative;z-index:2}
.vx95-auth-brand-card{display:grid;justify-items:start;gap:24px;max-width:310px}
.vx95-auth-emblem{position:relative;width:112px;height:112px;padding:10px;border-radius:30px;background:linear-gradient(145deg,rgba(139,92,246,.19),rgba(34,211,238,.08));border:1px solid rgba(167,139,250,.3);box-shadow:0 24px 60px -30px rgba(139,92,246,.85),inset 0 1px rgba(255,255,255,.08)}
.vx95-auth-emblem::before,.vx95-auth-emblem::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(103,232,249,.16);inset:-24px;animation:vx95Orbit 14s linear infinite;pointer-events:none}
.vx95-auth-emblem::after{inset:-45px;border-style:dashed;border-color:rgba(139,92,246,.12);animation-duration:24s;animation-direction:reverse}
.vx95-auth-emblem img{width:100%!important;height:100%!important;border-radius:22px!important;object-fit:cover!important}
.vx95-auth-brand-copy>span,.vx95-panel-kicker{color:#b699ff;font:900 8px/1.2 Inter,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.vx95-auth-brand-copy h2{margin:10px 0 12px;color:#fff;font:900 clamp(28px,3vw,40px)/.98 Inter,sans-serif;letter-spacing:-.04em}
.vx95-auth-brand-copy p{color:#a8b2cf;font-size:13px;line-height:1.7}
.vx95-auth-trust{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.vx95-auth-trust span{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid rgba(139,92,246,.17);border-radius:999px;background:rgba(5,8,18,.36);color:#b5bfd9;font-size:8px;font-weight:750;white-space:nowrap}
.vx95-auth-trust i{width:6px;height:6px;border-radius:50%;background:#34d399;box-shadow:0 0 10px #34d399}
.vx95-auth-orbit{position:absolute!important;z-index:1!important;inset:auto -180px -210px auto;width:480px;height:480px;border-radius:50%;border:1px solid rgba(139,92,246,.12);pointer-events:none}.vx95-auth-orbit::before,.vx95-auth-orbit::after,.vx95-auth-orbit i{content:"";position:absolute;inset:55px;border-radius:50%;border:1px solid rgba(34,211,238,.08)}.vx95-auth-orbit::after{inset:110px}.vx95-auth-orbit i:nth-child(1){inset:160px}
#modal-auth .auth-aside-foot{position:absolute!important;left:34px!important;bottom:28px!important;color:#697492!important;font:800 7px/1 Inter,sans-serif!important;letter-spacing:.18em!important}
#modal-auth .auth-main{position:relative!important;min-width:0!important;height:100%!important;max-height:none!important;padding:38px 42px!important;overflow-y:auto!important;overscroll-behavior:contain!important;background:radial-gradient(500px 300px at 95% 0,rgba(139,92,246,.075),transparent 70%),#080b18!important}
#modal-auth .auth-main::before{opacity:.32!important;pointer-events:none!important}
#modal-auth .auth-head h3{font-size:clamp(27px,3vw,38px)!important;letter-spacing:-.04em!important;line-height:1!important;margin:10px 0 8px!important}
#modal-auth .field{margin-bottom:14px!important}#modal-auth .field label{font-size:8px!important;letter-spacing:.12em!important}
#modal-auth .input-wrap,#modal-auth select{min-height:52px!important;border-radius:15px!important}
#modal-auth .btn-block{min-height:50px!important;border-radius:14px!important}
#modal-auth .auth-steps{display:none!important}
#modal-auth .vx-demo-login-only{display:none!important}
.vx95-code-wrap{margin:26px 0 12px}
#verifyCode{width:100%;height:76px;border-radius:18px;border:1px solid rgba(139,92,246,.45);background:#0a0e20;color:#fff;text-align:center;font:900 32px/1 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.34em;padding-left:.34em;outline:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}
#verifyCode:focus{border-color:#8b5cf6;box-shadow:0 0 0 4px rgba(139,92,246,.12)}
.vx95-auth-note{margin:0 0 18px;color:#8893b2;font-size:12px;line-height:1.65}
.vx95-auth-panel .btn+.btn{margin-top:10px}
@keyframes vx95Orbit{to{transform:rotate(360deg)}}

@media(max-width:760px){
  #modal-auth{padding:0!important;align-items:stretch!important}
  #modal-auth .auth-modal{width:100%!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;grid-template-columns:1fr!important;border:0!important}
  #modal-auth .vx95-auth-aside{display:none!important}
  #modal-auth .auth-main{height:100dvh!important;padding:calc(74px + env(safe-area-inset-top)) 18px calc(28px + env(safe-area-inset-bottom))!important;overflow-y:auto!important}
  #modal-auth .modal-x{position:fixed!important;right:15px!important;top:calc(14px + env(safe-area-inset-top))!important;z-index:10!important}
  #modal-auth .form-row{grid-template-columns:1fr!important;gap:0!important}
  #verifyCode{height:70px;font-size:28px}
}

/* Server category browsing / stable cards */
#page-servers .server-directory{align-items:stretch!important}
#page-servers .server-game-tile{min-width:0!important;overflow:hidden!important}
#page-servers .server-game-tile .sg-main{min-width:0!important}
#page-servers .server-game-tile .sg-main b,#page-servers .server-game-tile .sg-main small{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
#page-servers .server-game-tile.is-seo-active{border-color:rgba(139,92,246,.55)!important;box-shadow:0 0 0 1px rgba(139,92,246,.18),0 18px 40px -30px rgba(139,92,246,.9)!important}
.vx95-category-path{display:flex;align-items:center;gap:8px;margin:0 0 14px;color:#8290b2;font-size:11px}.vx95-category-path b{color:#c7b8ff}.vx95-category-path span{opacity:.55}

/* Performance: preserve visual identity, remove perpetual full-screen paint work. */
.atmosphere .aurora{animation:none!important;will-change:auto!important;filter:none!important;opacity:.14!important}
.hexgrid{animation:none!important;will-change:auto!important}
.page:not(.active){display:none!important}
.page.active{contain:layout style!important}
.vx90-hero-atmos,.vx90-planet{contain:paint!important}
#mainContent img{content-visibility:auto}
@media(max-width:1100px){
  .vx90-hero-atmos i,.vx90-planet{filter:none!important}
  .vx90-hero-atmos i{opacity:.55!important}
  .vx90-orbit,.vx91-ring,.vx95-auth-emblem::before,.vx95-auth-emblem::after{animation-duration:28s!important}
}
@media(max-width:760px){
  .vx90-hero-atmos i:nth-child(n+2),.vx91-ring.c{display:none!important}
  .vx90-float-card{backdrop-filter:none!important}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}
