body{color:#ffb700;text-shadow:0 0 2px #ffb700,0 0 5px #ffb700;background:radial-gradient(circle at top,#0f0f0f,#1b1b1b);justify-content:center;align-items:center;height:100vh;margin:0;font-family:"Press Start 2P",cursive;display:flex}.card{background:#111;border:2px solid #ffb700;border-radius:10px;width:20%;padding:30px;box-shadow:0 0 15px #ffb700}.card-alt1{background:#111;border:2px solid #ffb700;border-radius:10px;width:15%;margin-left:8px;padding:20px;box-shadow:0 0 15px #ffb700}.card-dashboard{background:#111;border:2px solid #ffb700;border-radius:10px;width:35%;padding:30px;box-shadow:0 0 15px #ffb700}h2{text-align:center;color:#ffb700;text-shadow:0 0 5px #ffb700;margin-bottom:20px}input[type=text],input[type=email],input[type=password]{color:#ffb700;background:#111;border:2px solid #ffb700;border-radius:5px;outline:none;width:90%;margin:8px 0;padding:10px;font-family:"Press Start 2P",cursive}input[type=checkbox]{accent-color:#ffb700;border:2px solid #ffb700;margin-right:4px;transform:scale(1.2)}input:focus{border-color:#ffdf8e;box-shadow:0 0 5px #ffedbf}button{color:#111;cursor:pointer;text-shadow:none;background-color:#ffb700;border:none;border-radius:5px;margin-top:10px;padding:10px;font-family:"Press Start 2P",cursive;font-size:12px}button:hover{color:#111;text-shadow:0 0 5px #ffdf8e;background-color:#ffdf8e}label{margin-top:10px;font-size:10px;display:block}label input{margin-right:5px}.cf-turnstile{margin-top:12px}pre{color:#ffb700;text-shadow:0 0 2px #ffb700;background:#111;border:2px solid #ffb700;border-radius:5px;padding:10px;font-size:10px;overflow-x:auto}.hidden{display:none}.dashboard_img{vertical-align:sub;width:24px;height:24px;margin-right:6px}.login_with{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;min-height:40px;font-size:14px;display:flex}.login_with_img{flex-shrink:0;width:auto;height:32px;margin-right:6px;display:block}.login_with_text{padding-top:3px}#discordLogin{color:#fff;background-color:#5865f2;align-items:center;display:flex}#googleLogin{color:#fff;background-color:#db4437;align-items:center;display:flex}#passkeyLogin{color:#111;background-color:#ffb700;align-items:center;display:flex}#passkeyLogin:disabled{cursor:wait;opacity:.65}a{color:#8beeff;text-decoration:none}a:hover{text-decoration:underline}a:visited{color:#41d0ff}#user_avatar{text-align:center;border-radius:50%;width:128px;height:128px;margin-bottom:8px}.portal-page{--arcade-yellow:#ffe26a;--arcade-pink:#ff4fa3;--arcade-cyan:#56edff;--arcade-ink:#080b24;box-sizing:border-box;color:#f7f4ff;text-shadow:2px 2px #141030;background:linear-gradient(#56edff0e 1px,#0000 1px) 0 0/28px 28px,linear-gradient(90deg,#56edff0e 1px,#0000 1px) 0 0/28px 28px,radial-gradient(at 50% 120%,#451266 0%,#0000 58%),linear-gradient(145deg,#080b24 0%,#170c3d 48%,#090b28 100%);place-items:center;height:auto;min-height:100svh;padding:32px 20px;display:grid;overflow-x:hidden}.portal-page>#root{width:min(100%,920px)}.portal-page:before{content:"";pointer-events:none;z-index:2;opacity:.22;background:repeating-linear-gradient(0deg,#0000 0 3px,#00000038 3px 4px);position:fixed;inset:0}.portal-shell{grid-template-columns:minmax(0,1.25fr) minmax(270px,.85fr);align-items:stretch;gap:18px;width:100%;display:grid}.login-layout{display:contents}.session-card{box-sizing:border-box;grid-column:1/-1;justify-self:center;width:min(100%,520px)!important}.service-state p:not(.panel-label){color:#d9d4ff;text-align:center;font-size:10px;line-height:1.9}.service-state code,.service-code{color:var(--arcade-cyan);font-family:inherit}.pixel-loader{background:var(--arcade-cyan);width:56px;height:12px;box-shadow:20px 0 0 var(--arcade-pink), 40px 0 0 var(--arcade-yellow);margin:8px auto 0;animation:.8s steps(2,end) infinite pixel-pulse}@keyframes pixel-pulse{50%{opacity:.35;transform:translateY(3px)}}.portal-brand{text-align:center;grid-column:1/-1;padding:8px 0 14px}.portal-kicker,.portal-subtitle,.panel-label{letter-spacing:1px;margin:0;font-size:9px}.portal-kicker{color:var(--arcade-cyan)}.portal-subtitle{color:var(--arcade-pink)}.portal-brand h1{color:var(--arcade-yellow);letter-spacing:-2px;text-shadow:4px 4px #d82f84,8px 8px #261152;margin:12px 0 10px;font-size:clamp(27px,7vw,52px);line-height:1.15}.portal-brand h1 span{color:var(--arcade-cyan)}.portal-page .card,.portal-page .card-alt1,.portal-page .card-dashboard{border:3px solid var(--arcade-cyan);background:linear-gradient(135deg,#191441f7,#0a0c29f7);border-radius:0;width:auto;min-width:0;margin:0;padding:clamp(20px,4vw,32px);box-shadow:6px 6px #ff4fa3e6,0 0 22px #56edff40}.portal-page .card-alt1{border-color:var(--arcade-pink);box-shadow:6px 6px #56edffcc,0 0 22px #ff4fa338}.portal-page .card-dashboard{box-sizing:border-box;grid-column:1/-1;justify-self:center;width:100%;max-width:760px}.portal-page .panel-label{color:var(--arcade-cyan);text-align:center;margin-bottom:13px}.portal-page .card-alt1 .panel-label{color:var(--arcade-pink)}.portal-page h2{color:var(--arcade-yellow);text-shadow:3px 3px #a72a70;margin:0 0 24px;font-size:clamp(18px,3vw,24px);line-height:1.4}.portal-page input[type=text],.portal-page input[type=password]{box-sizing:border-box;color:#fff;background:#080b24;border:2px solid #7268b5;border-radius:0;width:100%;margin:7px 0;padding:14px;font-size:10px}.portal-page input:focus{border-color:var(--arcade-cyan);box-shadow:0 0 0 3px #56edff2e}.portal-page label{color:#d9d4ff;line-height:1.6}.portal-page button{box-sizing:border-box;background:var(--arcade-yellow);color:#15102d;border:2px solid #fff5b0;border-radius:0;width:100%;min-height:46px;padding:11px 12px;font-size:10px;line-height:1.35;transition:transform .12s,box-shadow .12s,filter .12s;box-shadow:4px 4px #a62b70}.portal-page button:hover{color:#15102d;text-shadow:none;background:#fff0a1;transform:translate(2px,2px);box-shadow:2px 2px #a62b70}.portal-page button:active{box-shadow:none;transform:translate(4px,4px)}.portal-page button:focus-visible{outline:3px solid var(--arcade-cyan);outline-offset:3px}.portal-page button:disabled,.register-page button:disabled{cursor:wait;opacity:.6;transform:none;box-shadow:2px 2px #533252}.portal-page .card-alt1 button,.portal-page .oauth-button{justify-content:center;align-items:center;gap:8px;display:flex}.portal-page .card-alt1 .login_with_img{height:27px;margin:0}.portal-page .card-alt1 .login_with_text{padding:0}.portal-page .oauth-button,.portal-page .oauth-button:visited{box-sizing:border-box;color:#fff;text-align:center;border:2px solid #fff5b0;width:100%;min-height:46px;margin-top:10px;padding:11px 12px;font-size:10px;line-height:1.35;text-decoration:none;box-shadow:4px 4px #251548}.portal-page .oauth-button:hover{filter:brightness(1.12);transform:translate(2px,2px);box-shadow:2px 2px #251548}.portal-page .oauth-button.discord{background:#5865f2}.portal-page .oauth-button.google{background:#db4437}.portal-page #discordLogin{color:#fff;background:#5865f2}.portal-page #googleLogin{color:#fff;background:#db4437}.portal-page #passkeyLogin{background:var(--arcade-yellow);color:#15102d}.portal-page #stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.portal-page #stats>div:not(:first-child){background:#070a23b3;border:1px solid #514a90;align-items:center;gap:7px;padding:11px;font-size:10px;line-height:1.55;display:flex}.portal-page #stats>div:first-child{text-align:center;grid-column:1/-1}.portal-page .dashboard_img{width:22px;height:22px;margin:0}.portal-page #user_avatar{border:3px solid var(--arcade-yellow);width:104px;height:104px;box-shadow:4px 4px 0 var(--arcade-pink);object-fit:cover;border-radius:0;margin:0 auto 4px}.portal-page .avatar-row>img,.portal-page .avatar-placeholder{border:3px solid var(--arcade-yellow);width:104px;height:104px;color:var(--arcade-cyan);box-shadow:4px 4px 0 var(--arcade-pink);object-fit:cover;background:#080b24;place-items:center;margin:0 auto 4px;display:grid}.portal-page .dashboard-actions{gap:14px;margin-top:12px;display:flex}.portal-page .dashboard-actions button{margin-top:0}.portal-page .dashboard-actions button:nth-child(2){background:var(--arcade-cyan);border-color:#d4fbff}.portal-page .dashboard-actions button:nth-child(3){background:#ff659d;border-color:#ffd0e2}.portal-page #dashboard>div:last-child{gap:14px;display:flex}.portal-page #dashboard>div:last-child button{margin-top:0}.portal-page #userSettingsBtn{background:var(--arcade-cyan);color:#15102d;border-color:#d4fbff}.portal-page #logoutBtn{background:#ff659d;border-color:#ffd0e2}.portal-page.modal-open{overflow:hidden}.portal-page .game-selector{z-index:100;box-sizing:border-box;-webkit-backdrop-filter:grayscale()blur(3px);backdrop-filter:grayscale()blur(3px);background:#05060fd1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.portal-page .game-selector.hidden{display:none}.portal-page .game-selector-panel{box-sizing:border-box;border:3px solid var(--arcade-cyan);width:min(100%,720px);max-height:calc(100svh - 40px);box-shadow:8px 8px 0 var(--arcade-pink), 0 0 35px #56edff59;background:linear-gradient(135deg,#191441,#080b29);flex-direction:column;padding:clamp(24px,5vw,42px);display:flex;position:relative;overflow:hidden}.portal-page .game-selector-close{background:var(--arcade-pink);border-color:#ffd0e2;width:40px;min-height:40px;margin:0;padding:0;font-family:Arial,sans-serif;font-size:28px;line-height:1;position:absolute;top:10px;right:10px;box-shadow:3px 3px #65124b}.portal-page .game-grid{scrollbar-color:var(--arcade-cyan) #080b24;grid-template-columns:repeat(auto-fill,200px);place-content:start center;gap:18px;min-height:0;padding:5px 10px 12px 5px;display:grid;overflow-y:auto}.portal-page .game-card,.portal-page .game-card:visited{box-sizing:border-box;color:#fff;text-align:center;background:#070a23d9;border:2px solid #7268b5;flex-direction:column;justify-content:center;align-items:center;gap:16px;width:200px;height:170px;padding:20px 14px;text-decoration:none;transition:transform .12s,border-color .12s,box-shadow .12s;display:flex}.portal-page .game-card:hover,.portal-page .game-card:focus-visible{border-color:var(--arcade-yellow);box-shadow:5px 5px 0 var(--arcade-pink);outline:none;transform:translate(-2px,-2px)}.portal-page .game-logo{object-fit:contain;object-position:center;width:100%;max-width:168px;height:100px;display:block}.portal-page .game-name{justify-content:center;align-items:center;min-height:30px;font-size:11px;line-height:1.5;display:flex}@media (width<=650px){.portal-page{align-items:start;padding:22px 14px}.portal-shell{grid-template-columns:1fr;gap:16px}.portal-brand{padding-bottom:5px}.portal-kicker,.portal-subtitle,.panel-label{font-size:8px}.portal-page .card,.portal-page .card-alt1,.portal-page .card-dashboard{padding:20px 16px}.portal-page #stats{grid-template-columns:1fr}.portal-page #dashboard>div:last-child,.portal-page .dashboard-actions{flex-direction:column;gap:10px}.portal-page .game-selector{padding:14px}.portal-page .game-selector-panel{max-height:calc(100svh - 28px);padding:54px 16px 22px}.portal-page .game-grid{grid-template-columns:repeat(auto-fill,minmax(120px,180px));gap:12px;padding-inline:3px 8px}.portal-page .game-card{width:100%;height:150px;padding:12px 8px}.portal-page .game-logo{max-width:150px;height:82px}}.register-page{--arcade-yellow:#ffe26a;--arcade-pink:#ff4fa3;--arcade-cyan:#56edff;box-sizing:border-box;color:#f7f4ff;text-shadow:2px 2px #141030;background:linear-gradient(#56edff0e 1px,#0000 1px) 0 0/28px 28px,linear-gradient(90deg,#56edff0e 1px,#0000 1px) 0 0/28px 28px,radial-gradient(at 50% 120%,#451266 0%,#0000 58%),linear-gradient(145deg,#080b24 0%,#170c3d 48%,#090b28 100%);place-items:center;height:auto;min-height:100svh;padding:32px 20px;display:grid;overflow-x:hidden}.register-page>#root{width:min(100%,540px)}.register-page:before{content:"";z-index:2;pointer-events:none;opacity:.22;background:repeating-linear-gradient(0deg,#0000 0 3px,#00000038 3px 4px);position:fixed;inset:0}.register-shell{width:100%}.register-brand{text-align:center;padding:8px 0 22px}.register-brand p,.register-page .panel-label{color:var(--arcade-cyan);letter-spacing:1px;margin:0;font-size:9px}.register-brand p:last-child{color:var(--arcade-pink)}.register-brand h1{color:var(--arcade-yellow);letter-spacing:-2px;text-shadow:4px 4px #d82f84,8px 8px #261152;margin:12px 0 10px;font-size:clamp(27px,9vw,47px);line-height:1.15}.register-brand h1 span{color:var(--arcade-cyan)}.register-page .card{border:3px solid var(--arcade-pink);background:linear-gradient(135deg,#191441f7,#0a0c29f7);border-radius:0;width:auto;padding:clamp(20px,5vw,32px);box-shadow:6px 6px #56edffcc,0 0 22px #ff4fa338}.register-page .panel-label{text-align:center;margin-bottom:13px}.register-page h2{color:var(--arcade-yellow);text-shadow:3px 3px #a72a70;margin:0 0 24px;font-size:clamp(18px,4vw,24px);line-height:1.4}.register-page input[type=text],.register-page input[type=email],.register-page input[type=password]{box-sizing:border-box;color:#fff;background:#080b24;border:2px solid #7268b5;border-radius:0;width:100%;margin:7px 0;padding:14px;font-size:10px}.register-page input:focus{border-color:var(--arcade-cyan);box-shadow:0 0 0 3px #56edff2e}.register-page label{color:#d9d4ff;line-height:1.8}.register-page a,.register-page a:visited{color:var(--arcade-cyan)}.register-page button{box-sizing:border-box;background:var(--arcade-yellow);color:#15102d;border:2px solid #fff5b0;border-radius:0;width:100%;min-height:46px;padding:11px 12px;font-size:10px;line-height:1.35;transition:transform .12s,box-shadow .12s;box-shadow:4px 4px #a62b70}.register-page button:hover{color:#15102d;text-shadow:none;background:#fff0a1;transform:translate(2px,2px);box-shadow:2px 2px #a62b70}.register-page button:active{box-shadow:none;transform:translate(4px,4px)}.register-page button:focus-visible{outline:3px solid var(--arcade-cyan);outline-offset:3px}.register-page .cf-turnstile{max-width:100%;overflow:hidden}@media (width<=420px){.register-page{align-items:start;padding:22px 14px}.register-brand{padding-bottom:15px}.register-brand p,.register-page .panel-label{font-size:8px}.register-page .card{padding:20px 16px}.register-page .cf-turnstile{transform-origin:0;width:111%;transform:scale(.9)}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
