@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@400;500;600;700;800;900;1000&display=swap');
:root{--purple:#a900ef;--purple-dark:#4d0b94;--ink:#141041;--violet:#7b10d2;--lime:#d8ff00;--yellow:#ffdf00;--green:#26df18;--muted:#85839b;--page:#f8f7fb;--font:'Nunito Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--page);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}
button,input{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #00ceb6;outline-offset:3px}
button:disabled{opacity:.55;cursor:wait}
[hidden]{display:none!important}
.topbar{height:64px;background:linear-gradient(105deg,#ca00ff 0%,#a800ee 49%,#8b05f0 100%);position:relative;z-index:45;box-shadow:0 1px 0 #8c00df}
.topbar-inner{width:min(1120px,calc(100% - 42px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand-cluster{display:flex;align-items:center;gap:15px;flex-shrink:0}
.icon-button{width:30px;height:35px;border:0;background:none;color:#fff;display:grid;place-items:center;padding:2px}
.icon-button svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round}
.brand{display:flex;align-items:center;text-decoration:none;gap:3px;color:#fff;line-height:1}
.brand-mark{width:37px;height:37px;display:inline-flex;transform:rotate(-8deg)}
.brand-mark svg{width:100%;filter:drop-shadow(0 2px 2px #61039855)}
.brand-name,.drawer-brand,.footer-brand{font-weight:1000;font-size:25px;letter-spacing:-1.9px;font-style:italic}
.brand-name span,.drawer-brand span,.footer-brand span{font-style:normal;font-size:10px;letter-spacing:-.3px;margin-left:1px;vertical-align:baseline;font-weight:1000}
.search-box{height:37px;background:#fff;display:flex;align-items:center;gap:9px;border-radius:10px;width:min(360px,37vw);padding:0 11px;box-shadow:0 3px 10px #7b06ac18}
.search-box svg{width:18px;height:18px;fill:none;stroke:#131044;stroke-width:2.1;stroke-linecap:round;flex-shrink:0}
.search-box input{width:100%;border:0;outline:none!important;color:var(--ink);background:transparent;font-size:12px;font-weight:700;min-width:0}
.search-box input::placeholder{color:#a5a1b2;font-weight:500}
.search-box button{background:transparent;border:0;font-size:22px;color:var(--muted);padding:0}
.account-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}
.btn{border:0;border-radius:9px;height:42px;padding:0 22px;font-size:12px;font-weight:1000;color:#170e49;transition:transform .16s,filter .16s,box-shadow .16s;white-space:nowrap}
.btn:hover{transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 6px 15px #15075c24}
.btn-green{background:linear-gradient(#34f719,#16c90e);color:#fff;text-shadow:0 1px 1px #066405}
.btn-yellow{background:linear-gradient(#ffeb1b,#ffd400);color:#171048}
.btn-white{background:#fff;color:#4e17ac}
.page-shell{width:min(1120px,calc(100% - 42px));margin:0 auto}
.hero{height:405px;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 74% 58%,#5b167d 0%,transparent 54%),radial-gradient(ellipse at 19% 50%,#5a148e 0%,transparent 58%),linear-gradient(115deg,#39045b 0%,#1a063e 58%,#27034d 100%);color:white}
.hero::before{content:'';position:absolute;inset:0;opacity:.22;background-image:radial-gradient(circle at 9% 14%,#ff70ff 0 2px,transparent 3px),radial-gradient(circle at 40% 31%,white 0 1px,transparent 2px),radial-gradient(circle at 88% 13%,#ed77fc 0 2px,transparent 3px),radial-gradient(circle at 75% 81%,#fc9bff 0 2px,transparent 3px);background-size:190px 170px,235px 140px,260px 195px,160px 145px}
.hero::after{content:'';position:absolute;z-index:-1;inset:-30%;background:repeating-conic-gradient(from 44deg at 77% 48%,transparent 0deg 15deg,#bd23ff09 16deg 18deg,transparent 19deg 36deg)}
.hero-glow{position:absolute;border:3px solid #c73cfe43;border-radius:100%;pointer-events:none;filter:blur(1px)}
.hero-glow-one{right:-95px;top:5px;width:700px;height:345px;transform:rotate(-18deg);box-shadow:0 0 28px #ef46ff7a,inset 0 0 40px #be48ff50}
.hero-glow-two{right:-69px;top:-34px;width:760px;height:430px;transform:rotate(-18deg);border-color:#fff5}
.hero-stars{position:absolute;color:#ffdc00;font-size:24px;left:52%;top:19%;opacity:.8;transform:rotate(-12deg)}
.hero-stars span{font-size:14px;position:relative;top:48px;left:55px;color:#e989f8}
.hero-copy{position:relative;z-index:4;padding:60px 0 0 74px;width:56%}
.hero-eyebrow{display:inline-flex;align-items:center;gap:9px;letter-spacing:2.3px;font-size:10px;font-weight:1000;color:#f1beff}
.hero-eyebrow span{color:var(--lime);font-size:17px}
.hero h1{font-size:clamp(43px,4.3vw,65px);line-height:1.05;letter-spacing:-2.4px;font-weight:1000;font-style:italic;margin:13px 0 12px;text-shadow:0 4px 1px #19072b}
.hero h1 em{color:#fff;font-style:italic}
.hero h1 span{color:var(--lime);text-shadow:0 4px 0 #30064b}
.hero-copy p{font-size:15px;font-weight:800;max-width:415px;line-height:1.4;margin:0 0 22px;color:#f3daff}
.hero-cta{height:45px;font-size:13px;padding:0 28px;box-shadow:0 5px 0 #d19d06}
.hero-cta span{padding-left:8px;font-size:16px}
.hero-art{position:absolute;z-index:3;right:-33px;top:-37px;width:57%;height:460px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 20px 30px #0007)}
.hero-art img{width:100%;max-height:100%;object-fit:contain;transform:rotate(-13deg)}
.hero-bottom-tag{position:absolute;right:35px;bottom:24px;color:#f7cbffb8;font-size:11px;letter-spacing:3px;font-weight:1000}
.notice-strip{text-align:center;font-size:10px;font-weight:700;color:#a8a1bd;background:#2d0a68;min-height:25px;line-height:25px;margin:0;letter-spacing:.05px}
.categories{min-height:60px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e2ddea;gap:7px;overflow-x:auto;scrollbar-width:none}
.categories::-webkit-scrollbar{display:none}
.category{flex-shrink:0;background:none;border:0;display:flex;align-items:center;gap:7px;color:#2d1d61;font-weight:1000;font-size:12px;letter-spacing:-.15px;white-space:nowrap;padding:12px 9px;border-bottom:3px solid transparent}
.category.active{color:#8711dd;border-bottom-color:#a900ef}
.category-icon{font-size:24px;line-height:1;color:#960bd5}
.shelf{margin:31px 0 45px}
.shelf-heading{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:17px}
.section-kicker{font-size:9px;font-weight:1000;letter-spacing:2.3px;color:#ac75d9}
.shelf h2,.results-heading h2{font-size:24px;line-height:1.1;font-weight:1000;letter-spacing:-.9px;font-style:italic;margin:2px 0 0;color:#1f124b}
.section-spark{color:#b91ae7;font-style:normal;font-size:21px}
.shelf-controls{display:flex;align-items:center;gap:8px}
.view-all{padding:0 17px;height:36px;border:0;border-radius:20px;background:#eae5f3;color:#342061;font-size:10px;font-weight:1000}
.shelf-arrow{border:0;border-radius:50%;height:35px;width:35px;background:#eae5f3;color:#35205d;font-weight:1000;font-size:25px;line-height:1}
.view-all:hover,.shelf-arrow:hover{background:#dbcbf0}
.game-track{display:flex;overflow-x:auto;overflow-y:hidden;gap:10px;scroll-behavior:smooth;scrollbar-width:none;padding-bottom:3px}
.game-track::-webkit-scrollbar{display:none}
.game-card{position:relative;flex:0 0 calc((100% - 70px)/8);aspect-ratio:1/1;border-radius:13px;border:0;padding:0;overflow:hidden;min-width:115px;background:#30135b;display:block;transition:transform .18s ease,box-shadow .18s ease;box-shadow:0 2px 3px #12063d16;text-align:left}
.game-card:hover{transform:translateY(-5px);box-shadow:0 10px 22px #2d0e5638}
.game-card img{width:100%;height:100%;display:block;object-fit:cover}
.game-label{position:absolute;bottom:0;left:0;display:block;border-radius:0 8px 0 0;padding:4px 7px;background:#30c756;color:#fff;font-size:8px;line-height:1;font-weight:1000;letter-spacing:.15px;box-shadow:0 -3px 7px #06031342}
.game-label.new{background:#ffdc00;color:#302056}
.game-label.hot{background:#f04eac;color:white}
.game-shine{position:absolute;inset:0;background:linear-gradient(130deg,transparent 30%,#fff1 45%,transparent 55%);pointer-events:none}
.compact-shelf{margin-bottom:56px}
.results-heading{padding-top:28px}
.results-heading p{font-size:12px;color:#77718b;margin:6px 0 0}
.empty-results{text-align:center;padding:80px 15px 100px}
.empty-results h2{margin:8px 0 2px}
.empty-results p{color:var(--muted)}
.empty-icon{font-size:62px;color:var(--purple)}
.responsible-banner{display:flex;gap:18px;align-items:center;background:linear-gradient(110deg,#6621b7,#9b0bdc);padding:21px 30px;border-radius:18px;margin:0 0 52px;color:#fff}
.responsible-icon{font-size:49px;color:#e6ff38}
.responsible-banner h2{font-size:16px;margin:0 0 4px;font-weight:1000}
.responsible-banner p{font-size:11px;line-height:1.5;margin:0;max-width:700px;color:#eee5ff}
.responsible-banner .btn{margin-left:auto;font-size:11px}
.footer{border-top:1px solid #e4deef;background:#fff}
.footer-inner{width:min(1120px,calc(100% - 42px));min-height:81px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:18px;color:#8c87a2;font-size:11px;font-weight:700}
.footer-brand{color:#9825df;text-decoration:none;font-size:22px}
.drawer-overlay{position:fixed;inset:64px 0 0;background:#000a;z-index:48}
.site-drawer{position:fixed;z-index:50;top:84px;left:12px;width:285px;max-height:calc(100dvh - 102px);overflow-y:auto;background:#fff;border-radius:20px;padding:24px 20px 17px;box-shadow:0 14px 36px #12013256;transform:translateX(calc(-100% - 24px));transition:transform .24s ease}
.site-drawer.open{transform:translateX(0)}
.drawer-head{display:flex;align-items:center;justify-content:space-between;margin:0 1px 13px 6px}
.drawer-brand{color:#9325d7;font-size:22px}
.close-small{border:2px solid #7977ba;border-radius:50%;color:#7977ba;width:24px;height:24px;padding:0;font-size:20px;line-height:17px;background:none}
.drawer-links{display:flex;flex-direction:column;gap:3px}
.drawer-link{display:flex;align-items:center;gap:16px;width:100%;height:44px;border:0;border-radius:9px;background:transparent;color:#19124b;font-size:12px;font-weight:1000;text-align:left;padding:4px 10px}
.drawer-link:hover,.drawer-link.active{background:#f6ecff}
.drawer-icon{font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;color:#c31af8;width:26px;font-weight:1000}
.drawer-divider{height:1px;background:#ece5f1;margin:10px}
.drawer-bottom{font-size:10px;font-weight:800;color:#8d83a7;margin-top:14px;padding:8px}
.age-pill{font-size:11px;font-weight:1000;color:#7321be;border:1.5px solid #7828bc;padding:2px 5px;border-radius:6px;margin-right:5px}
.modal-overlay{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:#16052cc4;backdrop-filter:blur(3px);padding:18px;overflow-y:auto}
.modal-card{position:relative;max-height:calc(100dvh - 36px);overflow-y:auto;background:#fff;border-radius:22px;box-shadow:0 20px 80px #12033080;width:min(100%,448px);padding:29px 35px 33px}
.modal-close{position:absolute;top:15px;right:16px;width:29px;height:29px;border:0;background:#f1e8fa;color:#6c2caa;border-radius:50%;font-size:23px;line-height:1}
.modal-icon{height:47px;width:47px;display:grid;place-items:center;background:linear-gradient(145deg,#bb03f5,#6c0bdc);color:#f1ff20;font-size:33px;border-radius:13px;box-shadow:0 5px 13px #a205c34d;margin:0 auto 11px}
.modal-heading{text-align:center}
.modal-heading h2,#info-view h2,#game-view h2{font-size:26px;letter-spacing:-1px;font-weight:1000;margin:0 0 4px;color:#241052}
.modal-heading p{margin:0 0 18px;font-size:12px;color:#8c82a2;font-weight:700}
.auth-tabs{height:43px;border-radius:11px;background:#f1edfa;display:flex;padding:4px;gap:4px;margin-bottom:17px}
.auth-tab{flex:1;border:0;border-radius:8px;background:transparent;color:#7f6c99;font-size:12px;font-weight:1000}
.auth-tab.active{background:#fff;color:#7122bc;box-shadow:0 2px 6px #18042e0f}
#login-form,#register-form{display:flex;flex-direction:column}
#login-form label:not(.check-row),#register-form label:not(.check-row){font-size:12px;font-weight:1000;color:#24124d;margin:10px 0 6px}
#login-form>input,#register-form>input,.password-wrap input{height:44px;width:100%;border:1.5px solid #e1d8ed;background:#fdfbff;border-radius:10px;padding:0 12px;color:#24124d;font-size:13px;outline:none;min-width:0}
#login-form>input:focus,#register-form>input:focus,.password-wrap input:focus{border-color:#9b20de;box-shadow:0 0 0 3px #ab17d911}
.password-wrap{display:flex;align-items:center;position:relative}
.password-wrap input{padding-right:56px}
.show-password{position:absolute;right:9px;background:none;border:0;font-size:11px;font-weight:1000;color:#8d39c0;padding:7px 3px}
.field-hint{margin:5px 0 0;color:#817692;font-size:10px;line-height:1.4;font-weight:700}
.field-hint.invalid{color:#b71f6b}
.check-row{display:flex;align-items:flex-start;gap:9px;font-size:11px;color:#665878;font-weight:800;margin:15px 0 3px}
.check-row input{accent-color:#a817e5;width:16px;height:16px;margin:0;flex-shrink:0}
.form-submit{width:100%;height:44px;margin-top:20px}
.auth-switch{text-align:center;font-size:11px;color:#847998;margin:15px 0 0}
.auth-switch button{border:0;background:transparent;color:#8e12d2;font-size:11px;font-weight:1000;padding:0}
.form-error,.form-success{font-size:12px;padding:10px 12px;border-radius:8px;line-height:1.5;margin-bottom:9px;font-weight:700}
.form-error{background:#fff0f4;color:#a91c53}
.form-success{background:#eefced;color:#197629}
#info-view{text-align:center}
#info-view p,#game-view p{font-size:13px;color:#756a89;line-height:1.7}
#game-view{text-align:center}
.game-detail-image{width:168px;height:168px;border-radius:15px;object-fit:cover;box-shadow:0 8px 24px #1e0a4033;display:block;margin:0 auto 15px}
.game-detail-type{font-size:10px;color:#9138c9;letter-spacing:2px;font-weight:1000}
.game-detail-type+h2{margin:6px 0 4px}
.no-script{background:#ffffff;color:#411179;padding:15px;text-align:center;font-weight:900}
@media(max-width:1000px){.hero-copy{padding-left:45px}.hero-art{right:-65px;width:61%}.hero h1{font-size:51px}.game-card{flex-basis:calc((100% - 50px)/6);min-width:118px}.category{font-size:11px;gap:5px}.category-icon{font-size:22px}}
@media(max-width:740px){.topbar{height:61px}.topbar-inner,.page-shell,.footer-inner{width:min(100% - 26px,1120px)}.topbar-inner{gap:8px}.brand-cluster{gap:3px}.brand-name{font-size:21px}.brand-mark{width:30px;height:30px}.search-box{height:35px;width:auto;flex:1;max-width:290px;padding:0 8px}.search-box input{font-size:11px}.account-actions{gap:5px}.account-actions .btn{height:34px;padding:0 9px;font-size:10px;border-radius:7px}.hero{height:360px}.hero-copy{padding:45px 0 0 28px;width:69%}.hero h1{font-size:clamp(36px,6.4vw,49px)}.hero-copy p{font-size:12px;max-width:290px}.hero-art{right:-85px;top:5px;width:62%;height:340px;opacity:.9}.hero-bottom-tag{font-size:8px;right:15px;bottom:15px}.hero-eyebrow{font-size:8px;letter-spacing:1.3px}.hero-cta{height:39px;font-size:11px}.drawer-overlay{inset:61px 0 0}.site-drawer{top:73px}.categories{justify-content:flex-start;gap:16px}.category{font-size:11px}.game-card{flex-basis:calc((100% - 30px)/4);min-width:127px}.responsible-banner{flex-wrap:wrap}.responsible-banner .btn{margin-left:0}.footer-inner{flex-wrap:wrap;justify-content:center;padding:23px 0}}
@media(max-width:485px){.topbar-inner{width:calc(100% - 18px)}.brand-name{font-size:18px;letter-spacing:-1.5px}.brand-name span{font-size:8px}.brand-mark{width:26px;height:26px}.icon-button{width:28px}.search-box{order:3;position:absolute;top:66px;left:13px;right:13px;max-width:none;width:auto;box-shadow:0 2px 9px #2005501a}.topbar{margin-bottom:47px}.account-actions .btn{font-size:10px;padding:0 10px;height:33px}.hero{height:390px}.hero-copy{padding:27px 20px 0;width:100%;position:relative}.hero h1{font-size:40px;margin:10px 0 8px;letter-spacing:-1.8px}.hero-copy p{font-size:11px;max-width:245px;line-height:1.3}.hero-art{height:255px;width:305px;right:-108px;top:115px;opacity:.94}.hero-cta{position:relative;z-index:5;margin-top:9px}.hero-bottom-tag{right:9px;bottom:8px;letter-spacing:1px}.hero-stars{left:73%;top:10%}.notice-strip{font-size:8px;line-height:1.35;padding:7px 14px;min-height:unset}.shelf{margin:28px 0 35px}.shelf h2{font-size:21px}.section-kicker{font-size:8px}.game-card{flex-basis:calc((100% - 20px)/3);min-width:114px}.view-all{height:31px;padding:0 12px}.shelf-arrow{height:31px;width:31px}.responsible-banner{padding:17px}.responsible-icon{font-size:31px}.responsible-banner h2{font-size:14px}.responsible-banner p{font-size:10px}.modal-card{padding:25px 22px}.site-drawer{left:8px;top:119px}.drawer-overlay{inset:108px 0 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
