@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800;900&display=swap');

:root{
  --game-bg:#05070d;--game-bg2:#090e1a;--game-panel:#0e1629;--game-panel2:#121d34;
  --game-line:rgba(255,255,255,.10);--game-text:#f8fafc;--game-muted:#9ba9c0;
  --game-purple:#7c3aed;--game-blue:#2563eb;--game-cyan:#22d3ee;--game-gold:#fbbf24;
  --game-danger:#ef4444;--game-success:#22c55e;--game-shadow:0 24px 70px rgba(0,0,0,.38)
}
html{scroll-behavior:smooth}body{font-family:"Plus Jakarta Sans",Arial,sans-serif}
img{max-width:100%}button,input,select,textarea{font:inherit}

/* Authentication */
body.auth-body{min-width:0!important;min-height:100vh;margin:0;display:grid;place-items:center;padding:28px 16px;color:var(--game-text);background:radial-gradient(circle at 10% 0,rgba(124,58,237,.28),transparent 32%),radial-gradient(circle at 95% 95%,rgba(34,211,238,.14),transparent 30%),var(--game-bg)}
.auth-box{width:min(460px,100%)!important;margin:0!important;padding:clamp(25px,5vw,42px)!important;border:1px solid var(--game-line)!important;border-radius:28px!important;background:linear-gradient(145deg,rgba(18,29,52,.96),rgba(6,10,19,.96))!important;box-shadow:var(--game-shadow)!important;color:var(--game-text)!important;backdrop-filter:blur(18px)}
.auth-logo-only{display:flex!important;justify-content:center!important;margin:0 auto 28px!important}.auth-logo-only img{display:block;width:auto;height:clamp(68px,12vw,104px);max-width:min(300px,85vw);object-fit:contain;filter:drop-shadow(0 14px 28px rgba(37,99,235,.26))}
.auth-box h2{margin:0 0 22px!important;text-align:center;font-size:clamp(27px,5vw,38px)!important;letter-spacing:-.04em;color:#fff!important}
.auth-box form{display:grid;gap:14px}.auth-box input,.auth-box select,.auth-box textarea{width:100%!important;min-height:54px;padding:0 16px!important;border:1px solid var(--game-line)!important;border-radius:14px!important;background:rgba(255,255,255,.055)!important;color:#fff!important;outline:none;transition:.2s}.auth-box input:focus,.auth-box select:focus,.auth-box textarea:focus{border-color:var(--game-cyan)!important;box-shadow:0 0 0 4px rgba(34,211,238,.12)!important}.auth-box input::placeholder{color:#7f8ba0}.auth-box button{min-height:54px;border:0!important;border-radius:14px!important;background:linear-gradient(135deg,var(--game-purple),var(--game-blue))!important;color:#fff!important;font-weight:900!important;cursor:pointer;box-shadow:0 14px 30px rgba(37,99,235,.28);transition:.2s}.auth-box button:hover{transform:translateY(-2px);filter:brightness(1.08)}.auth-box p{text-align:center;color:var(--game-muted)!important}.auth-box a{font-weight:800}.auth-box .alert{border-radius:14px!important}

/* Shared dashboard */
.admin-shell,.member-shell{min-width:0!important;min-height:100vh!important;background:radial-gradient(circle at 100% 0,rgba(37,99,235,.10),transparent 30%),#eef2f8!important}
.admin-sidebar,.member-sidebar{background:linear-gradient(180deg,#060912,#0b1020)!important;color:#fff!important;border-right:1px solid var(--game-line)!important;box-shadow:20px 0 50px rgba(0,0,0,.10)!important;overflow-y:auto!important;scrollbar-width:thin;scrollbar-color:#374151 transparent}
.admin-brand,.member-brand{min-height:92px!important;padding:20px 18px!important;border-bottom:1px solid var(--game-line)!important;gap:13px!important}.admin-logo,.member-logo{width:54px!important;height:54px!important;padding:4px!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:16px!important;background:#fff!important;overflow:hidden!important;display:grid!important;place-items:center!important;color:#0b1020!important;font-size:13px!important;font-weight:900!important;box-shadow:0 12px 28px rgba(37,99,235,.25)!important}.admin-logo img,.member-logo img{width:100%!important;height:100%!important;object-fit:contain!important}.admin-brand span,.member-brand span{font-size:16px!important;font-weight:900!important;letter-spacing:.02em!important}
.admin-sidebar .nav,.member-sidebar .nav{position:relative!important;margin:3px 12px!important;padding:12px 14px!important;border:1px solid transparent!important;border-radius:12px!important;color:#aebbd0!important;font-size:13px!important;font-weight:800!important;transition:.2s!important}.admin-sidebar .nav:hover,.member-sidebar .nav:hover{color:#fff!important;background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.06)!important;transform:translateX(3px)}.admin-sidebar .nav.active,.member-sidebar .nav.active{color:#fff!important;background:linear-gradient(135deg,rgba(124,58,237,.9),rgba(37,99,235,.9))!important;box-shadow:0 10px 25px rgba(37,99,235,.24)!important}
.admin-content,.member-content{min-width:0!important;padding:clamp(22px,3vw,42px)!important;background:transparent!important}.admin-topbar,.member-topbar{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;margin-bottom:24px!important}.admin-topbar h1,.member-topbar h1{margin:0!important;color:#0f172a!important;font-size:clamp(27px,4vw,42px)!important;letter-spacing:-.045em!important}.admin-muted,.member-muted{color:#64748b!important}
.mobile-dashboard-bar{display:none}
.admin-grid,.member-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin-bottom:22px!important}.admin-card,.member-card{min-width:0!important;border:1px solid #dfe5ee!important;border-radius:22px!important;background:linear-gradient(145deg,#fff,#f8fafc)!important;box-shadow:0 14px 40px rgba(15,23,42,.08)!important;transition:.2s!important}.admin-card:hover,.member-card:hover{transform:translateY(-4px);box-shadow:0 22px 55px rgba(15,23,42,.13)!important}.admin-card .value,.member-card .value{overflow-wrap:anywhere;color:#0f172a!important}.admin-panel,.member-panel,.spin-box{border:1px solid #dde4ee!important;border-radius:24px!important;background:#fff!important;box-shadow:0 16px 50px rgba(15,23,42,.09)!important;max-width:100%!important}.admin-panel h2,.member-panel h2{color:#0f172a!important}
.admin-table,.member-table{width:100%!important;max-width:100%!important;border-color:#dfe5ee!important}.admin-table th,.member-table th{background:linear-gradient(135deg,#0b1020,#17213b)!important}.admin-table td,.member-table td{overflow-wrap:anywhere}.admin-btn,.member-btn{border-radius:12px!important;background:linear-gradient(135deg,#151c2f,#0b1020)!important;transition:.2s!important}.admin-btn:hover,.member-btn:hover{transform:translateY(-1px);filter:brightness(1.12)}
.admin-panel input,.admin-panel select,.admin-panel textarea,.member-panel input,.member-panel select,.member-panel textarea,.admin-content input,.admin-content select,.admin-content textarea,.member-content input,.member-content select,.member-content textarea{max-width:100%;border:1px solid #d8e0eb;border-radius:12px;outline:none;transition:.2s}.admin-content input:focus,.admin-content select:focus,.admin-content textarea:focus,.member-content input:focus,.member-content select:focus,.member-content textarea:focus{border-color:#6366f1;box-shadow:0 0 0 4px rgba(99,102,241,.11)}
.sidebar-backdrop{display:none}

/* Public tournament/hall compatibility */
body.tournament-page,body.hof-page,.public-tournament-page{min-width:0!important;overflow-x:hidden}

@media(max-width:1250px){.admin-grid,.member-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:1024px){
  .admin-shell,.member-shell{display:block!important}.admin-sidebar,.member-sidebar{position:fixed!important;inset:0 auto 0 0!important;z-index:3000!important;width:min(320px,88vw)!important;transform:translateX(-104%);transition:transform .28s ease!important}.dashboard-menu-open .admin-sidebar,.dashboard-menu-open .member-sidebar{transform:translateX(0)}
  .admin-content,.member-content{width:100%!important;margin:0!important;padding:18px!important}.mobile-dashboard-bar{position:sticky;top:0;z-index:1200;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;margin:-18px -18px 22px;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.10);background:rgba(5,7,13,.94);color:#fff;backdrop-filter:blur(16px)}.mobile-dashboard-bar span{text-align:center;font-weight:900}.mobile-dashboard-bar a,.dashboard-menu-button{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.06);color:#fff;text-decoration:none;font-size:20px}.dashboard-menu-button{cursor:pointer}.sidebar-backdrop{position:fixed;inset:0;z-index:2500;background:rgba(0,0,0,.58);backdrop-filter:blur(3px)}.dashboard-menu-open .sidebar-backdrop{display:block}
  .admin-grid,.member-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.admin-topbar,.member-topbar{flex-direction:column!important}.small-actions{width:100%;display:flex;flex-wrap:wrap;gap:8px}
}
@media(max-width:680px){
  .admin-content,.member-content{padding:12px!important}.mobile-dashboard-bar{margin:-12px -12px 18px;padding:10px 12px}.admin-grid,.member-grid{grid-template-columns:1fr!important}.admin-card,.member-card{padding:18px!important}.admin-panel,.member-panel,.spin-box{padding:16px!important;border-radius:18px!important;overflow-x:auto!important}.admin-table,.member-table{min-width:680px!important}.admin-topbar h1,.member-topbar h1{font-size:30px!important}.admin-btn,.member-btn{width:auto;min-height:43px}.small-actions .admin-btn,.small-actions .member-btn{flex:1 1 150px}.auth-box{border-radius:22px!important}.register-welcome-card{max-height:90vh;overflow:auto}}
@media(max-width:420px){.admin-content,.member-content{padding:9px!important}.mobile-dashboard-bar{margin:-9px -9px 15px}.auth-box{padding:24px 18px!important}.auth-logo-only img{height:72px}.admin-card .value,.member-card .value{font-size:27px!important}}
