/* NEXERA FC V283 — A-Z ULTIMATE ESPORTS REDESIGN
   Visual-only. Existing IDs/classes/functions are preserved. */
:root{
 --nx-bg:#05070d;--nx-panel:rgba(12,16,27,.82);--nx-panel2:rgba(18,23,38,.88);
 --nx-cyan:#27e7ff;--nx-blue:#4d7cff;--nx-violet:#9b5cff;--nx-pink:#ff3d9a;
 --nx-green:#20e0a0;--nx-gold:#ffd45a;--nx-text:#f7fbff;--nx-muted:#91a0ba;
 --nx-line:rgba(255,255,255,.10);--nx-radius:22px;
}
*{box-sizing:border-box}
html{background:var(--nx-bg)}body{background:radial-gradient(circle at 50% -10%,#15254d 0,#080b14 38%,#04050a 100%)!important;color:var(--nx-text)!important;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:linear-gradient(transparent 97%,rgba(39,231,255,.035) 98%),linear-gradient(90deg,transparent 97%,rgba(155,92,255,.03) 98%);background-size:42px 42px;mask-image:linear-gradient(to bottom,#000,transparent 90%);opacity:.7}
#toast,#authScreen,#app{position:relative;z-index:2}
/* Global ambient animation */
.nx283-world{position:fixed;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.nx283-world .orb{position:absolute;border-radius:50%;filter:blur(45px);opacity:.22;animation:nx283Orb 10s ease-in-out infinite alternate}
.nx283-world .o1{width:34vw;height:34vw;left:-12vw;top:8vh;background:#087dff}.nx283-world .o2{width:30vw;height:30vw;right:-10vw;top:38vh;background:#9b31ff;animation-delay:-3s}.nx283-world .o3{width:24vw;height:24vw;left:38vw;bottom:-15vw;background:#00d9b2;animation-delay:-6s}
.nx283-world .grid{position:absolute;left:-10%;right:-10%;bottom:-20%;height:65%;background-image:linear-gradient(rgba(39,231,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(39,231,255,.12) 1px,transparent 1px);background-size:48px 48px;transform:perspective(650px) rotateX(63deg);mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 75%,transparent)}
.nx283-world .beam{position:absolute;top:-10%;left:-30%;width:45%;height:120%;background:linear-gradient(90deg,transparent,rgba(39,231,255,.18),transparent);transform:rotate(18deg);filter:blur(3px);animation:nx283Beam 7s linear infinite}
.nx283-world .scan{position:absolute;left:0;right:0;top:-2px;height:2px;background:linear-gradient(90deg,transparent,var(--nx-cyan),transparent);box-shadow:0 0 24px var(--nx-cyan);animation:nx283Scan 5s linear infinite}
.nx283-ball{position:absolute;font-size:clamp(25px,4vw,52px);filter:drop-shadow(0 0 18px rgba(39,231,255,.75));animation:nx283Ball 6s cubic-bezier(.45,.05,.55,.95) infinite;will-change:transform}
.nx283-ball.b1{right:8%;top:18%}.nx283-ball.b2{left:13%;top:55%;font-size:26px;animation-duration:8s;animation-delay:-2s}.nx283-ball.b3{right:28%;bottom:18%;font-size:20px;animation-duration:9s;animation-delay:-5s}
@keyframes nx283Orb{to{transform:translate3d(80px,35px,0) scale(1.12)}}@keyframes nx283Beam{0%{transform:translateX(-10vw) rotate(18deg)}100%{transform:translateX(180vw) rotate(18deg)}}@keyframes nx283Scan{0%{top:0;opacity:0}10%{opacity:1}90%{opacity:1}100%{top:100%;opacity:0}}@keyframes nx283Ball{0%{transform:translate3d(0,0,0) rotate(0)}35%{transform:translate3d(-120px,110px,0) rotate(180deg)}68%{transform:translate3d(-20px,250px,0) rotate(390deg)}100%{transform:translate3d(0,0,0) rotate(720deg)}}
/* LOGIN — complete visual identity */
#authScreen{min-height:100dvh!important;padding:22px 14px 34px!important;background:radial-gradient(circle at 50% 12%,rgba(39,231,255,.10),transparent 28%),radial-gradient(circle at 85% 80%,rgba(155,92,255,.13),transparent 30%)!important;overflow:hidden}
#authScreen:before{content:"MATCHDAY • NEXERA FC • eFOOTBALL";position:absolute;left:50%;top:26px;transform:translateX(-50%);font-size:10px;letter-spacing:4px;color:rgba(255,255,255,.32);white-space:nowrap;animation:nx283PulseText 2.8s ease-in-out infinite}
.n153AuthBackdrop{opacity:0!important}
.n153AuthShell{max-width:500px!important;position:relative;z-index:5}
.n153AuthBrand{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:15px!important;margin:38px auto 16px!important;padding:4px 6px!important}
.authLogo{width:68px!important;height:68px!important;border-radius:20px!important;border:1px solid rgba(39,231,255,.55)!important;box-shadow:0 0 0 6px rgba(39,231,255,.04),0 0 38px rgba(39,231,255,.25)!important;object-fit:cover!important;animation:nx283Logo 4s ease-in-out infinite}
.n153AuthBrand h1{font-size:clamp(30px,8vw,42px)!important;letter-spacing:1px!important;line-height:1!important;background:linear-gradient(90deg,#fff,var(--nx-cyan),#fff)!important;background-size:200% auto!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;animation:nx283Shine 4s linear infinite!important}
.n153AuthBrand p{font-size:11px!important;letter-spacing:2px!important;text-transform:uppercase!important;color:#93a9c6!important;margin-top:7px!important}
.n153AuthCard{position:relative!important;overflow:hidden!important;background:linear-gradient(145deg,rgba(13,19,34,.94),rgba(5,8,15,.97))!important;border:1px solid rgba(39,231,255,.18)!important;border-radius:30px!important;padding:24px!important;box-shadow:0 30px 100px rgba(0,0,0,.58),0 0 70px rgba(39,231,255,.06)!important;backdrop-filter:blur(22px)!important}
.n153AuthCard:before{content:"";position:absolute;inset:-2px;background:conic-gradient(from 0deg,transparent 0 65%,rgba(39,231,255,.65),rgba(155,92,255,.55),transparent 78%);animation:nx283Border 6s linear infinite;z-index:-1}
.n153AuthCard:after{content:"";position:absolute;left:-40%;top:0;width:35%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.07),transparent);transform:skewX(-15deg);animation:nx283CardSweep 5s ease-in-out infinite;pointer-events:none}
.n153Welcome span{font-size:29px!important;font-weight:950!important;letter-spacing:-.5px!important}.n153Welcome small{color:#8294ad!important}
.n153RoleHint{background:linear-gradient(135deg,rgba(39,231,255,.08),rgba(155,92,255,.08))!important;border:1px solid rgba(39,231,255,.18)!important;border-radius:15px!important;padding:12px!important}
.n153RoleHint b{color:#fff!important}.n153RoleHint small{color:#7f93ae!important}
.n153InputWrap{height:58px!important;background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:16px!important;transition:.25s!important}
.n153InputWrap:focus-within{border-color:rgba(39,231,255,.65)!important;box-shadow:0 0 0 4px rgba(39,231,255,.07),0 0 25px rgba(39,231,255,.10)!important;transform:translateY(-1px)}
.n153InputWrap input{font-size:14px!important;color:#fff!important}.n153InputWrap input::placeholder{color:#718099!important}
.n153LoginBtn{height:56px!important;border-radius:16px!important;background:linear-gradient(110deg,#087cff,#17c9ff,#8a4dff,#087cff)!important;background-size:250% 100%!important;box-shadow:0 14px 34px rgba(40,126,255,.28)!important;animation:nx283Button 4s linear infinite!important;font-weight:950!important;letter-spacing:.4px!important}
.n153LoginBtn:hover{transform:translateY(-2px)!important;filter:brightness(1.08)!important}
.n263GuestLoginBtn{border-radius:15px!important;background:rgba(255,255,255,.04)!important;border:1px solid rgba(255,255,255,.10)!important;color:#dbe9f8!important;transition:.25s!important}.n263GuestLoginBtn:hover{border-color:rgba(39,231,255,.4)!important;transform:translateY(-2px)}
.n153AuthActions button,.n153RoleGrid button{background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:15px!important;color:#fff!important;transition:.25s!important}.n153AuthActions button:hover,.n153RoleGrid button:hover{transform:translateY(-3px)!important;border-color:rgba(39,231,255,.4)!important;background:rgba(39,231,255,.06)!important}
.n153RoleGrid button.active{background:linear-gradient(135deg,rgba(39,231,255,.16),rgba(155,92,255,.16))!important;border-color:rgba(39,231,255,.55)!important;box-shadow:0 0 25px rgba(39,231,255,.08)!important}
.n153BidRegisterBtn{height:52px!important;border-radius:16px!important;background:linear-gradient(110deg,#ff2f7d,#8c43ff,#1c8cff,#ff2f7d)!important;background-size:250% 100%!important;animation:nx283Button 5s linear infinite!important;border:0!important;box-shadow:0 14px 32px rgba(255,47,125,.18)!important}
.n153RegisterLine{color:#74869e!important}.n153RegisterLine button,.n153Remember button{color:var(--nx-cyan)!important}
@keyframes nx283Logo{50%{transform:translateY(-3px) rotate(1deg);box-shadow:0 0 0 8px rgba(39,231,255,.035),0 0 50px rgba(39,231,255,.38)}}@keyframes nx283Shine{to{background-position:200% center}}@keyframes nx283Border{to{transform:rotate(360deg)}}@keyframes nx283CardSweep{0%,55%{left:-40%}80%,100%{left:125%}}@keyframes nx283Button{to{background-position:250% 0}}@keyframes nx283PulseText{50%{opacity:.55}}
/* APP CHROME */
.topbar{position:sticky!important;top:0!important;background:rgba(4,7,14,.78)!important;border-bottom:1px solid rgba(39,231,255,.13)!important;backdrop-filter:blur(24px)!important;box-shadow:0 12px 35px rgba(0,0,0,.24)!important;z-index:100!important}
.brand img,.headerProfileBtn img{border:1px solid rgba(39,231,255,.35)!important;box-shadow:0 0 20px rgba(39,231,255,.12)!important}.brand b{letter-spacing:.8px}.headerClockUnderName{color:var(--nx-cyan)!important}
.headerIconBtn,.menuBtn,.headerProfileBtn{transition:.22s!important}.headerIconBtn:hover,.menuBtn:hover,.headerProfileBtn:hover{transform:translateY(-2px) scale(1.03)!important;background:rgba(39,231,255,.09)!important;border-color:rgba(39,231,255,.3)!important}
/* universal sections/cards */
#app main,.page,.section{position:relative;z-index:3}
.card,.tournamentHero,.nexaBidIntro,.nexaBidAction,.homeUpcomingProfileCard,.n172PersonalCard,.n172UpcomingCard,.n173SectionCard{background:linear-gradient(145deg,rgba(15,21,35,.92),rgba(7,10,18,.92))!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:0 18px 55px rgba(0,0,0,.28)!important;backdrop-filter:blur(12px)!important}
.card:hover,.tournamentHero:hover,.nexaBidAction:hover,.homeUpcomingProfileCard:hover{transform:translateY(-5px)!important;border-color:rgba(39,231,255,.3)!important;box-shadow:0 24px 65px rgba(0,0,0,.38),0 0 28px rgba(39,231,255,.07)!important}
button,.smallBtn,.primary{transition:transform .2s,filter .2s,box-shadow .2s!important}.primary:hover,.smallBtn:hover{transform:translateY(-2px)!important;filter:brightness(1.06)!important}
/* HOME hero / quick actions */
#home .n119TournamentBanner{position:relative!important;overflow:hidden!important;border:1px solid rgba(39,231,255,.2)!important;box-shadow:0 30px 90px rgba(0,0,0,.45),0 0 50px rgba(39,231,255,.07)!important}
#home .n119TournamentBanner:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,rgba(39,231,255,.15) 50%,transparent 70%);transform:translateX(-120%);animation:nx283HeroSweep 4.5s ease-in-out infinite;pointer-events:none}
@keyframes nx283HeroSweep{0%,55%{transform:translateX(-120%)}80%,100%{transform:translateX(120%)}}
#home .n119Quick{border:1px solid rgba(255,255,255,.08)!important;background:linear-gradient(145deg,rgba(16,22,37,.9),rgba(8,11,19,.92))!important;position:relative;overflow:hidden}
#home .n119Quick:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(39,231,255,.08),transparent);transform:translateX(-100%);animation:nx283QuickSweep 5s linear infinite}.n119Quick:nth-child(2):before{animation-delay:-1s}.n119Quick:nth-child(3):before{animation-delay:-2s}.n119Quick:nth-child(4):before{animation-delay:-3s}
@keyframes nx283QuickSweep{to{transform:translateX(100%)}}
/* tables / rankings */
table{border-collapse:separate!important;border-spacing:0 6px!important}th{color:#8ea2be!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.8px}td{background:rgba(255,255,255,.035)!important;border-top:1px solid rgba(255,255,255,.05)!important;border-bottom:1px solid rgba(255,255,255,.05)!important;color:#eef7ff!important}tr:hover td{background:rgba(39,231,255,.055)!important}
/* modal / drawer */
.modalBox{background:linear-gradient(145deg,#10182a,#070a12)!important;border:1px solid rgba(39,231,255,.18)!important;border-radius:24px!important;box-shadow:0 35px 100px rgba(0,0,0,.6)!important}.modalClose{transition:.2s!important}.modalClose:hover{transform:rotate(90deg)!important;color:var(--nx-cyan)!important}
#drawer{background:linear-gradient(180deg,#0a0f1c,#05070d)!important;border-left:1px solid rgba(39,231,255,.16)!important;box-shadow:-25px 0 70px rgba(0,0,0,.5)!important}
/* bottom nav */
.bottomNav,.bottom-nav{background:rgba(4,7,14,.88)!important;border-top:1px solid rgba(39,231,255,.14)!important;backdrop-filter:blur(22px)!important}
/* reduced motion */
@media(prefers-reduced-motion:reduce){.nx283-world *,.n153AuthBrand h1,.authLogo,.n153LoginBtn,.n153BidRegisterBtn,.n153AuthCard:before,.n153AuthCard:after,#home .n119TournamentBanner:after,#home .n119Quick:before{animation:none!important}.card,.n119Quick,.tournamentHero{transition:none!important}}
@media(max-width:700px){#authScreen{padding:32px 12px 28px!important}.n153AuthBrand{margin-top:24px!important}.n153AuthCard{padding:18px!important;border-radius:24px!important}.n153Welcome span{font-size:25px!important}.nx283-world .grid{background-size:32px 32px}.nx283-world .orb{filter:blur(35px)}.nx283-ball{font-size:28px!important}.nx283-ball.b2{font-size:18px!important}}
