@font-face{font-family:'Pumpblox Sans';src:url('/fonts/nunito-sans-latin.woff2') format('woff2');font-weight:200 1000;font-style:normal;font-display:swap}
:root{--ink:#202329;--muted:#747985;--line:#e3e6eb;--blue:#365eff;--lime:#a5eb5b;--night:#141a26}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:14px/1.45 'Pumpblox Sans',Arial,Helvetica,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}[hidden]{display:none!important}:focus-visible{outline:3px solid #4e75ff;outline-offset:3px}.rail{position:fixed;z-index:10;inset:0 auto 0 0;width:104px;border-right:1px solid #edf0f3;background:#fff;display:flex;align-items:center;flex-direction:column;gap:18px;padding:24px 7px}.rail-brand{width:58px;height:58px;background:#242932;color:#fff;border-radius:13px;display:grid;place-items:center;font:900 30px/1 Arial Black,Arial;position:relative;transform:rotate(-7deg);margin-bottom:23px}.rail-brand span{font:700 12px Arial;position:absolute;right:4px;top:5px}.rail-link{width:88px;height:70px;border-radius:12px;color:#676d78;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;font-size:11px;font-weight:700}.rail-link b{font:500 31px/1 Arial}.rail-link:hover,.rail-link.active{background:#f2f4f7;color:#222833}.rail-foot{margin-top:auto;text-align:center;font-size:9px;font-weight:800;letter-spacing:.09em;color:#9ba0a9;line-height:1.8}.shell{margin-left:104px}.topbar{height:82px;display:flex;align-items:center;gap:32px;padding:0 max(34px,calc((100vw - 1440px)/2));border-bottom:1px solid var(--line)}.wordmark{font:900 28px/1 Arial Black,Arial,sans-serif;letter-spacing:-.08em}.brand-dot{color:var(--blue)}.toplinks{display:flex;gap:28px;margin-left:25px;color:#59616e;font-weight:700}.toplinks a:hover{color:var(--blue)}.account{margin-left:auto;position:relative}.account-button{display:flex;gap:10px;align-items:center;border:0;background:#fff;color:#202329;font-weight:700}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e5ecf8;font-size:17px}.account-button b{color:#89909a}.account-menu{position:absolute;right:0;top:44px;width:250px;padding:16px;background:#fff;border:1px solid var(--line);box-shadow:0 20px 50px #202b4130;border-radius:12px;z-index:21}.account-menu strong{font-size:10px;color:#808691;letter-spacing:.08em}.account-menu button{display:flex;gap:12px;width:100%;padding:11px;margin-top:9px;border:1px solid var(--line);border-radius:8px;background:#f9fafb;text-align:left;font-weight:700}.account-menu p{font-size:11px;color:var(--muted);margin-bottom:0}main{max-width:1500px;margin:auto;padding:0 34px}.tabs{display:flex;align-items:center;gap:32px;height:60px;border-bottom:1px solid var(--line);font-size:15px;color:#676d78}.tabs a{height:100%;display:flex;align-items:center;border-bottom:2px solid transparent}.tabs a.active{border-color:var(--ink);color:var(--ink);font-weight:700}.live-indicator{margin-left:auto;font-size:10px;letter-spacing:.08em;font-weight:800;color:#59636d}.live-indicator i{display:inline-block;width:7px;height:7px;margin-right:4px;border-radius:50%;background:#39be75}.hero{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(480px,1.15fr);gap:40px;align-items:center;padding:44px 0 48px;border-bottom:1px solid var(--line)}.eyebrow{font-size:10px;letter-spacing:.12em;font-weight:900;color:#758090}.hero h1{font:900 clamp(40px,4.2vw,74px)/.98 Arial Black,Arial;letter-spacing:-.075em;margin:15px 0 20px}.hero h1 em{font-style:normal;color:#596bff}.hero-copy p{max-width:460px;color:#737a85;font-size:16px;line-height:1.6}.prompt-form{padding:19px;background:#f6f7f9;border:1px solid #e1e5ec;border-radius:14px}.prompt-form label{display:block;font-size:11px;letter-spacing:.06em;font-weight:900;margin-bottom:9px}.prompt-form textarea{display:block;width:100%;height:128px;resize:vertical;border:1px solid #d8dde5;border-radius:9px;background:#fff;padding:14px 16px;font-size:15px;line-height:1.5;color:var(--ink)}.prompt-form textarea:focus{outline:2px solid #9bb2ff;border-color:#6887ff}.prompt-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:11px}.prompt-bottom>span{font-size:11px;color:#737d88}.prompt-actions{display:flex;gap:8px}.prompt-actions select{max-width:145px;border:1px solid #d7dce4;border-radius:7px;background:#fff;padding:8px;color:#404a55;font-size:11px;font-weight:700}.prompt-actions button{border:0;border-radius:7px;background:#242a34;color:#fff;padding:10px 15px;font-size:12px;font-weight:800;white-space:nowrap}.prompt-actions button:hover{background:#435366}.prompt-actions b{padding-left:8px}.ideas{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:15px}.ideas span{font-size:10px;color:#87909b;font-weight:900;letter-spacing:.07em;margin-right:3px}.ideas button{border:1px solid #dce1e8;border-radius:6px;background:#fff;padding:6px 9px;color:#4c5664;font-size:10px;font-weight:700}.ideas button:hover{background:#eaf0ff}.builder-message{min-height:14px;margin:8px 0 0;font-size:11px;color:#617089}.browse{padding:48px 0 72px}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}.section-head h2{font-size:34px;letter-spacing:-.055em;margin:4px 0 3px}.section-head p{color:#858b94;margin:0}.game-count{color:#858d99;font-size:11px;font-weight:800;letter-spacing:.07em}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 20px}.game-card{min-width:0}.game-card button{display:block;width:100%;border:0;background:none;padding:0;text-align:left;color:inherit}.cover{position:relative;overflow:hidden;display:block;aspect-ratio:16/9;background:#273148;border-radius:11px}.cover canvas{display:block;width:100%;height:100%}.cover:after{content:'▶ PLAY NOW';position:absolute;left:12px;bottom:12px;padding:7px 10px;border:1px solid #ffffff55;border-radius:6px;background:#181d28d9;color:#fff;font-size:10px;font-weight:900;letter-spacing:.06em}.game-card button:hover .cover{outline:3px solid #9db1ff;outline-offset:2px}.game-card h3{font-size:18px;margin:10px 0 4px;letter-spacing:-.025em}.game-card p{color:#868c95;font-size:12px;margin:0}.game-card .card-type{float:right;padding:3px 6px;background:#f0f2f5;color:#67707c;border-radius:5px;font-size:10px;font-weight:800}.how{display:flex;align-items:center;gap:30px;margin-bottom:70px;padding:26px 30px;border-radius:12px;background:#f2f4f8}.how h2{font-size:25px;letter-spacing:-.04em;margin:3px 0;white-space:nowrap}.how p{margin:0;flex:1;color:#6f7782;font-size:12px;line-height:1.6}.how a{white-space:nowrap;border-radius:7px;background:#252b36;color:#fff;padding:10px 13px;font-weight:800;font-size:11px}footer{display:flex;gap:18px;align-items:center;padding:30px 0;border-top:1px solid var(--line);font-size:10px;letter-spacing:.1em;color:#9399a2}footer b{font:900 16px Arial Black,Arial;letter-spacing:-.07em;color:#303641}footer small{margin-left:auto}.player{position:fixed;inset:0;z-index:100;overflow-y:auto;background:#111824;color:#fff;padding:22px 30px 35px;overscroll-behavior:contain}body.in-game{overflow:hidden}.player-shell{max-width:1490px;margin:0 auto}.player-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.player-header h2{font-size:30px;margin:4px 0 1px;letter-spacing:-.045em}.player-header p{margin:0;color:#a7b1c0;font-size:12px}.exit{display:flex;gap:10px;border:1px solid #526071;background:#273241;color:#fff;border-radius:8px;padding:10px 15px;font-weight:800}.exit:hover{background:#405069}.player-grid{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:18px}.game-column{min-width:0}.canvas-wrap{position:relative;aspect-ratio:1100/620;overflow:hidden;border-radius:13px;background:#26354c;box-shadow:0 28px 70px #0006;touch-action:none}.canvas-wrap canvas{display:block;width:100%;height:100%;outline:0}.canvas-top{position:absolute;top:14px;left:14px;display:flex;gap:7px;pointer-events:none}.stat{min-width:80px;background:#101623dc;border:1px solid #ffffff35;border-radius:7px;padding:7px 10px}.stat small{display:block;color:#bac6d7;font-size:9px;letter-spacing:.07em;font-weight:900}.stat strong{display:block;font:900 20px/1.2 Arial Black,Arial}.start-screen{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:linear-gradient(90deg,#101725b8,#11182499);padding:20px}.start-screen span{font-size:10px;font-weight:900;letter-spacing:.12em;color:#d4f99f}.start-screen h3{max-width:90%;margin:7px 0;font:900 clamp(24px,4vw,52px)/1 Arial Black,Arial;letter-spacing:-.06em;text-shadow:0 4px 1px #10131e}.start-screen p{max-width:420px;color:#eef3fb;font-size:13px}.start-screen button{border:0;background:var(--lime);border-radius:7px;color:#1b2629;padding:12px 24px;font-weight:900;font-size:13px;margin-top:12px;box-shadow:0 7px 0 #5a9234}.start-screen button:hover{transform:translateY(2px);box-shadow:0 5px 0 #5a9234}.start-screen b{margin-left:9px}.game-footer{display:flex;align-items:center;gap:13px;padding:11px 4px;font-size:10px;font-weight:900;letter-spacing:.06em;color:#b9c4d4}.game-footer #runState{color:#b1ed72;margin-left:auto}.game-footer button{border:1px solid #536477;border-radius:6px;background:#263241;color:#fff;padding:7px 10px;font-size:10px;font-weight:800}.play-info{padding:21px;border:1px solid #425064;border-radius:12px;background:#1d2838}.play-info h3{font-size:24px;line-height:1.1;margin:10px 0;letter-spacing:-.04em}.play-info>p{font-size:12px;color:#b7c3d3;line-height:1.55}.objective{display:grid;gap:4px;padding:14px 0;border-top:1px solid #405066}.objective span,.shop>span{font-size:10px;letter-spacing:.08em;color:#95a6ba;font-weight:900}.objective strong{font-size:12px;line-height:1.4}.shop{border-top:1px solid #405066;padding-top:13px}.shop button{display:flex;justify-content:space-between;gap:4px;width:100%;margin:7px 0;border:1px solid #7c8b9e;border-radius:7px;background:#354761;color:#fff;padding:10px;font-size:11px;font-weight:800}.shop button small{font-size:9px;color:#ddf4a6}.remix{margin-top:23px;padding-top:16px;border-top:1px solid #405066}.remix label{display:block;font-size:11px;font-weight:800;margin-bottom:9px}.remix div{display:flex}.remix input{min-width:0;flex:1;border:1px solid #53647c;background:#111b2b;color:#fff;border-radius:6px 0 0 6px;padding:10px;font-size:11px}.remix button{border:0;border-radius:0 6px 6px 0;background:#a9eb65;color:#213024;padding:0 13px;font-weight:900}.touch-controls{position:absolute;bottom:12px;right:12px;display:flex;gap:15px;align-items:end;touch-action:none}.arrows{display:grid;grid-template-columns:repeat(3,42px);grid-template-rows:repeat(2,42px);gap:3px}.arrows button:nth-child(1){grid-column:1;grid-row:2}.arrows button:nth-child(2){grid-column:2;grid-row:1}.arrows button:nth-child(3){grid-column:2;grid-row:2}.arrows button:nth-child(4){grid-column:3;grid-row:2}.touch-controls button{touch-action:none;width:42px;height:42px;border:1px solid #ffffff70;border-radius:8px;background:#1b2634d9;color:#fff;font-size:21px;font-weight:800}.touch-controls .action{width:67px;height:52px;background:#8ad454;color:#142314;font-size:11px}.touch-controls{opacity:.86}@media(hover:hover) and (pointer:fine){.touch-controls{opacity:.5}.touch-controls:hover{opacity:1}}@media(max-width:1000px){.hero{grid-template-columns:1fr;gap:15px}.hero h1{font-size:54px}.cards{grid-template-columns:repeat(2,1fr)}.player-grid{grid-template-columns:1fr}.play-info{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.play-info .remix{grid-column:1/-1}.how{flex-wrap:wrap}.how p{min-width:300px}}@media(max-width:700px){.rail{inset:auto 0 0;width:auto;height:65px;flex-direction:row;justify-content:space-around;padding:3px 8px;border-right:0;border-top:1px solid var(--line)}.rail-brand,.rail-foot{display:none}.rail-link{width:32%;height:58px;font-size:10px}.rail-link b{font-size:22px}.shell{margin-left:0}.topbar{height:64px;padding:0 15px}.wordmark{font-size:22px}.toplinks{display:none}.account-button span:not(.avatar){display:none}main{padding:0 16px}.tabs{height:51px}.tabs a{font-size:13px}.live-indicator{font-size:8px}.hero{padding:26px 0 35px}.hero h1{font-size:42px}.hero-copy p{font-size:13px}.prompt-form{padding:12px}.prompt-form textarea{height:105px;font-size:13px}.prompt-bottom{align-items:start}.prompt-bottom>span{max-width:120px}.prompt-actions{flex-wrap:wrap;justify-content:flex-end}.prompt-actions select{max-width:117px}.cards{grid-template-columns:1fr;gap:22px}.browse{padding:34px 0}.section-head h2{font-size:27px}.section-head p{font-size:12px}.game-count{font-size:9px}.how{padding:20px;gap:9px;margin-bottom:85px}.how h2{font-size:22px}.how p{min-width:0}.player{padding:10px 8px 22px}.player-header h2{font-size:21px}.player-header p{font-size:10px}.player-header .eyebrow{font-size:8px}.exit{padding:8px 10px}.exit span{display:none}.canvas-wrap{aspect-ratio:1/.88}.canvas-top{top:7px;left:7px}.stat{min-width:54px;padding:4px 6px}.stat small{font-size:7px}.stat strong{font-size:15px}.arrows{grid-template-columns:repeat(3,35px);grid-template-rows:repeat(2,35px);gap:2px}.touch-controls button{width:35px;height:35px;font-size:17px}.touch-controls .action{width:51px;height:42px;font-size:9px}.touch-controls{right:5px;bottom:5px;gap:5px}.play-info{display:block;padding:16px}.play-info .objective{padding:10px 0}.start-screen h3{font-size:27px}.start-screen p{font-size:10px}.start-screen button{padding:9px 15px;font-size:11px}.game-footer{font-size:8px}footer{padding-bottom:76px}}
/* Player utilities and saved games share the existing Pumpblox card system. */
.player-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.player-actions .exit{white-space:nowrap}
.creations{padding-top:0}
.remix p{font-size:11px;color:#b6d4a1;overflow-wrap:anywhere;line-height:1.5}
@media(max-width:700px){.player-header{align-items:flex-start}.player-actions{max-width:170px;gap:5px}.player-actions .exit{font-size:10px;padding:7px 8px}.player-actions #exitButton{order:-1}}

/* Dark discovery shell inspired by game hubs; player canvas keeps each world's palette. */
:root{--ink:#f7f8fa;--muted:#aeb1b9;--line:#34363c;--blue:#fff;--night:#191b1f}
body{background:#191b1f;color:var(--ink);font-family:Arial,Helvetica,sans-serif}
.rail{width:176px;align-items:stretch;padding:25px 14px;background:#202227;border-right:1px solid #303238;gap:7px}
.rail-brand{width:44px;height:44px;margin:4px 0 36px 18px;background:#f7f8fa;color:#17191d;border-radius:6px;font-size:25px}
.rail-link{width:100%;height:48px;flex-direction:row;justify-content:flex-start;padding:0 13px;gap:14px;color:#c0c2c8;font-size:14px;border-radius:8px}
.rail-link b{font:500 24px/1 Arial;width:25px;text-align:center}
.rail-link:hover,.rail-link.active{background:#34363d;color:#fff}
.rail-foot{color:#777a83;text-align:left;margin-left:15px}
.shell{margin-left:176px}
.topbar{height:70px;border-color:#2d2f34;background:#191b1f}
.wordmark{letter-spacing:-.075em;font-size:25px;color:#f6f7fa}
.brand-dot{color:#f6f7fa}
.toplinks{color:#b7bac2}
.toplinks a:hover{color:#fff}
.account-button{background:transparent;color:#f6f7fa}
.avatar{border-radius:50%;background:#383b43;color:#fff}
.account-menu{background:#292b31;border-color:#45474f;box-shadow:0 18px 50px #0009;color:#fff}
.account-menu strong,.account-menu p{color:#b8bbc3}
.account-menu button{background:#353840;border-color:#50535c;color:#fff}
.account-menu button:hover{background:#444750}
.tabs{border-color:#32343b;color:#aeb1ba}
.tabs a.active{color:#fff;border-color:#fff}
.live-indicator{color:#b7bbc3}
.hero{border-color:#2e3035;gap:42px;padding-top:46px;padding-bottom:52px}
.hero h1{font-size:clamp(42px,4vw,66px);line-height:1.02;letter-spacing:-.065em}
.hero h1 em{color:#f8f9fa}
.hero-copy p{color:#b9bbc3}
.eyebrow{color:#a3a6ae}
.prompt-form{background:#24262b;border-color:#41434a;border-radius:12px;padding:20px}
.prompt-form textarea{background:#191b1f;color:#fff;border-color:#4a4d55;border-radius:8px}
.prompt-form textarea::placeholder{color:#858891}
.prompt-form textarea:focus{outline-color:#9299ac;border-color:#9fa5b2}
.prompt-bottom>span,.builder-message{color:#b1b4be}
.prompt-actions select{background:#34363d;color:#f6f7fa;border-color:#50535a}
.prompt-actions button{background:#f7f8fa;color:#191b1f}
.prompt-actions button:hover{background:#dce0e6}
.ideas span{color:#979aa4}
.ideas button{background:#34363d;color:#e5e6eb;border-color:#4b4d55}
.ideas button:hover{background:#45474f}
.section-head p,.game-card p{color:#aaaeb8}
.game-count{color:#9c9fa8}
.cover{border-radius:9px;background:#2c3547}
.cover:after{background:#191b1fe8;border-color:#ffffff58}
.game-card button:hover .cover{outline-color:#f8f9fa}
.game-card .card-type{background:#35383f;color:#c4c7d0}
.how{background:#292b31;border:1px solid #41434a}
.how p{color:#bec0c8}
.how a{background:#f6f7f8;color:#191b1f}
footer{border-color:#32343b;color:#989ba5}
footer b{color:#f6f7f8}
@media(max-width:700px){.rail{inset:auto 0 0;width:auto;height:65px;flex-direction:row;justify-content:space-around;padding:3px 8px;border-right:0;border-top:1px solid #34363c}.rail-link{width:32%;height:58px;flex-direction:column;justify-content:center;gap:0;font-size:10px;padding:0}.rail-link b{font-size:22px;width:auto}.shell{margin-left:0}.topbar{height:64px}.hero{padding-top:29px;padding-bottom:36px}}
.canvas-wrap #game3d{position:absolute;inset:0;width:100%;height:100%;cursor:grab;touch-action:none}.canvas-wrap #game3d:active{cursor:grabbing}

/* A readable, self-hosted game hub type system and responsive controls. */
body,button,input,textarea,select{font-family:'Pumpblox Sans',Arial,Helvetica,sans-serif}
.rail-brand,.wordmark,.hero h1,footer b,.stat strong,.start-screen h3{font-family:'Pumpblox Sans',Arial,Helvetica,sans-serif;font-weight:1000}
.hero h1,.wordmark,.section-head h2,.player-header h2,.play-info h3{letter-spacing:-.045em}
.touch-controls{opacity:1;z-index:4}
@media(hover:hover) and (pointer:fine){.touch-controls{opacity:1}}
.touch-controls button{background:#18243eef;border:1px solid #d9e6ffb0;box-shadow:0 3px 0 #090f1d99;color:#fff;transition:background .12s,transform .12s,box-shadow .12s}
.touch-controls button:hover,.touch-controls button.is-pressed,.touch-controls button:active{background:#466194;transform:translateY(2px);box-shadow:0 1px 0 #090f1d99}
.touch-controls .action{background:#a4e95f;border-color:#c9fa9b;color:#17231c}
.touch-controls .action:hover,.touch-controls .action:active{background:#c5fa8f}
.share-panel{display:flex;align-items:center;gap:9px;margin:-4px 0 12px;padding:9px 12px;border:1px solid #4a607c;border-radius:8px;background:#1d2c40;color:#dcebf9;font-size:12px}
.share-panel label{white-space:nowrap;font-weight:800}
.share-panel input{flex:1;min-width:0;padding:6px 9px;background:#101c2c;color:#fff;border:1px solid #607792;border-radius:5px;font-size:12px}
.share-panel span{font-weight:800;color:#c4f5a4}
.remix p{min-height:18px;margin:8px 0 0;color:#d8f1a6;font-size:12px}
@media(max-width:700px){.arrows{grid-template-columns:repeat(3,42px);grid-template-rows:repeat(2,42px)}.touch-controls button{width:42px;height:42px}.touch-controls .action{width:59px;height:48px}.share-panel{flex-wrap:wrap}.share-panel input{flex-basis:65%}}
.coin-builder{margin:30px 0 5px;padding:25px;display:grid;grid-template-columns:minmax(220px,.8fr) minmax(330px,1.2fr);gap:28px;border:1px solid #535969;border-radius:14px;background:linear-gradient(130deg,#2d3442,#22252c)}
.coin-builder h2{font-size:30px;letter-spacing:-.045em;margin:7px 0}.coin-builder p{color:#bfc5d0;line-height:1.55}.coin-builder label{display:block;font-size:10px;font-weight:900;letter-spacing:.1em;margin-bottom:8px}.coin-builder textarea{width:100%;min-height:100px;resize:vertical;padding:13px;border:1px solid #667083;border-radius:8px;background:#161c29;color:#fff}.coin-builder-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:10px}.coin-builder-actions span{font-size:11px;color:#aeb7c7}.coin-builder-actions button{white-space:nowrap;padding:11px 14px;border:0;border-radius:7px;background:#b8f07c;color:#192719;font-size:12px;font-weight:900}.coin-builder #coinGameStatus{min-height:18px;font-size:12px;margin:10px 0 0}.coin-creations{padding-top:0}.coin-card-label{display:inline-block;margin-top:10px;font-size:10px;font-weight:900;letter-spacing:.06em;color:#b8f07c}.coin-card-label+h3{margin-top:3px}
@media(max-width:780px){.coin-builder{grid-template-columns:1fr;padding:17px;gap:8px}.coin-builder h2{font-size:24px}.coin-builder-actions{align-items:stretch;flex-direction:column}.coin-builder-actions button{align-self:flex-start}}
.pumpfun-claim{margin:25px 0 36px;padding:26px;display:grid;grid-template-columns:minmax(220px,.8fr) minmax(330px,1.2fr);gap:30px;border:1px solid #3f464f;border-radius:14px;background:#24272e}
.pumpfun-claim h2{font-size:clamp(24px,2.4vw,34px);letter-spacing:-.05em;line-height:1.1;margin:9px 0 11px}
.pumpfun-claim p{color:#b9bec8;font-size:13px;line-height:1.55;margin:0 0 16px}
.pumpfun-claim a{color:#d9f7b4;font-weight:800;font-size:12px;text-decoration:none}
.pumpfun-claim a:hover{text-decoration:underline}
.pumpfun-claim form{padding:18px;border-radius:10px;background:#191c22;border:1px solid #424852}
.pumpfun-claim label{display:block;margin:0 0 8px;font-size:10px;font-weight:900;letter-spacing:.1em;color:#cbd0d7}
.pumpfun-claim input{width:100%;min-width:0;margin:0 0 16px;padding:12px;border:1px solid #565d68;border-radius:7px;background:#242831;color:#fff;font-size:13px}
.pumpfun-claim input:focus{outline:2px solid #b8f07c;outline-offset:1px}
.pumpfun-claim input::placeholder{color:#9299a4}
.pumpfun-claim button{padding:12px 16px;border:0;border-radius:7px;background:#b8f07c;color:#192719;font-size:12px;font-weight:900;cursor:pointer}
.pumpfun-claim button:disabled{opacity:.6;cursor:wait}
.pumpfun-claim #pumpfunStatus{margin:12px 0 0;min-height:19px;color:#d9f7b4}
[hidden]{display:none!important}
@media(max-width:780px){.pumpfun-claim{grid-template-columns:1fr;padding:18px;gap:12px}.pumpfun-claim form{padding:14px}}
.pumpfun-launch{margin:27px 0 23px;padding:30px;display:grid;grid-template-columns:minmax(220px,.84fr) minmax(340px,1.16fr);gap:32px;border:1px solid #a4e95f75;border-radius:16px;background:radial-gradient(circle at 8% 4%,#426d374d,transparent 36%),linear-gradient(130deg,#26342c,#20272b 60%,#25282d)}
.pumpfun-launch .eyebrow{color:#b8ef82}.launch-intro h2{font-size:clamp(30px,3vw,46px);letter-spacing:-.065em;line-height:1.04;margin:12px 0 16px}.launch-intro h2 em{font-style:normal;color:#b8ef82}.launch-intro p{color:#d0d6ce;line-height:1.6;font-size:14px;max-width:48ch}.launch-steps{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.launch-steps span{padding:8px 10px;border:1px solid #82928178;border-radius:6px;color:#e3f3d5;font-size:11px;font-weight:800}.launch-steps b{color:#a6e96b;margin-right:5px}.launch-intro .launch-note{font-size:11px;color:#b5c1b4;border-left:2px solid #a4e95f;padding-left:12px}
.pumpfun-launch form{padding:22px;border:1px solid #53634e;border-radius:11px;background:#171f1bdc}.pumpfun-launch label{display:block;margin-bottom:15px;color:#cdd8ca;font-size:10px;font-weight:900;letter-spacing:.08em}.pumpfun-launch label span{color:#aebdac;font-weight:500;letter-spacing:0}.pumpfun-launch input,.pumpfun-launch textarea{width:100%;min-width:0;display:block;margin-top:7px;padding:11px 12px;border:1px solid #60705d;border-radius:7px;background:#222c26;color:#fff;font-size:13px;letter-spacing:normal}.pumpfun-launch textarea{resize:vertical;min-height:75px}.pumpfun-launch input:focus,.pumpfun-launch textarea:focus{outline:2px solid #b8ef82;outline-offset:1px}.pumpfun-launch input[type=file]{padding:9px;font-size:11px}.pumpfun-launch input[type=file]::file-selector-button{border:0;border-radius:5px;padding:7px 9px;margin-right:8px;background:#445844;color:#fff;font:inherit;cursor:pointer}.launch-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.pumpfun-launch form>button:not(.launch-retry){background:#b8ef82;color:#1c291d;border:0;border-radius:7px;padding:13px 18px;font-size:13px;font-weight:900;cursor:pointer}.pumpfun-launch button:disabled{opacity:.6;cursor:wait}.pumpfun-launch #launchStatus{min-height:17px;margin:13px 0 0;font-size:12px;color:#daffc4;line-height:1.5;overflow-wrap:anywhere}.pumpfun-launch .launch-retry{margin-top:9px;padding:8px 0;border:0;background:none;color:#d3faa9;text-decoration:underline;font-size:12px;font-weight:800;cursor:pointer}
@media(max-width:900px){.pumpfun-launch{grid-template-columns:1fr;gap:12px;padding:19px}.launch-intro p{max-width:70ch}.launch-steps{margin:15px 0}.pumpfun-launch form{padding:16px}}
@media(max-width:500px){.launch-fields{grid-template-columns:1fr;gap:0}.launch-intro h2{font-size:33px}}

/* Entry points to the published Roblox experience. */
.roblox-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border:1px solid #666b76;background:#30343d;color:#f7f8fa;padding:10px 14px;border-radius:8px;font-size:11px;font-weight:900;letter-spacing:.02em;transition:background .15s,border-color .15s,transform .15s}
.roblox-link:hover,.roblox-link:focus-visible{background:#454b57;border-color:#b5bac4;color:#fff}
.roblox-link:active{transform:translateY(1px)}
.roblox-link-short{display:none}
.topbar .roblox-header-link{margin-left:24px}
.roblox-access{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;padding:22px 26px;border:1px solid #535d6b;border-radius:12px;background:linear-gradient(110deg,#29323e,#22262e)}
.roblox-access .eyebrow{color:#c0d6f4}
.roblox-access h2{margin:5px 0 6px;font-size:25px;line-height:1.1;letter-spacing:-.045em}
.roblox-access p{margin:0;color:#b9c2cf;font-size:12px;line-height:1.5}
.roblox-access-link{background:#f7f8fa;border-color:#f7f8fa;color:#1c232b;font-size:12px}
.roblox-access-link:hover,.roblox-access-link:focus-visible{background:#dce5f0;border-color:#dce5f0;color:#1c232b}
@media(max-width:700px){.topbar .roblox-header-link{margin-left:auto;padding:8px 10px}.roblox-link-full{display:none}.roblox-link-short{display:inline}.topbar .account{margin-left:10px}.roblox-access{align-items:flex-start;flex-direction:column;gap:16px;padding:18px;margin-top:18px}.roblox-access h2{font-size:22px}.roblox-access-link{width:100%}}

/* Launch section: a small playable-world vignette and responsive interaction feedback. */
.pumpfun-launch{position:relative;isolation:isolate;overflow:hidden}
.launch-preview{position:relative;overflow:hidden;max-width:500px;margin-top:42px;border:1px solid #a1da8169;border-radius:13px;background:radial-gradient(circle at 51% 57%,#527b4b40,transparent 56%),linear-gradient(155deg,#172820,#1a2626 62%,#172027);box-shadow:inset 0 1px #d8ffb21f,0 20px 40px #101b1733}
.launch-preview::before{content:"";position:absolute;inset:-38% -20% -22%;pointer-events:none;opacity:.26;background-image:linear-gradient(#9cda7739 1px,transparent 1px),linear-gradient(90deg,#9cda7739 1px,transparent 1px);background-size:26px 26px;transform:perspective(300px) rotateX(63deg) scale(1.2);transform-origin:50% 85%;mask-image:linear-gradient(transparent 9%,#000 72%)}
.launch-preview-top,.launch-preview-bottom{position:relative;z-index:1;display:flex;align-items:center;gap:9px;margin:0 17px;color:#b4c6ac;font-size:9px;font-weight:900;letter-spacing:.13em}
.launch-preview-top{padding-top:15px}.launch-preview-top b{margin-left:auto;color:#c9f5a1;font-size:16px;font-weight:600;line-height:1}
.launch-preview-bottom{justify-content:space-between;padding-bottom:14px;color:#8fa18d}
.launch-preview-led{width:6px;height:6px;border-radius:50%;background:#b8ef82;box-shadow:0 0 10px #b8ef82}
.launch-preview svg{position:relative;display:block;width:100%;height:auto;margin:-2px 0 -10px;overflow:visible}
.launch-preview-route{opacity:.72}
.launch-steps span{position:relative;transition:background .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s ease}
.launch-steps span.is-current{background:#b8ef821c;border-color:#b8ef82;color:#f1ffe5;box-shadow:0 0 0 1px #b8ef8233,0 0 22px #a3ef6626;transform:translateY(-2px)}
.launch-steps span.is-complete{border-color:#b8ef8278;background:#b8ef820f;color:#d9efcd}
.launch-steps span.is-complete b::after{content:"✓";display:inline-block;margin-left:3px;color:#b8ef82}
.pumpfun-launch form{transition:border-color .25s ease,box-shadow .25s ease}
.pumpfun-launch form:focus-within{border-color:#8fbe75;box-shadow:0 0 0 1px #a4e95f38,0 0 30px #a4e95f13}
.pumpfun-launch form input,.pumpfun-launch form textarea{transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}
.pumpfun-launch form input:hover,.pumpfun-launch form textarea:hover{border-color:#8cae84}
.pumpfun-launch form input:focus,.pumpfun-launch form textarea:focus{background:#27352b;box-shadow:0 0 0 4px #a4e95f1c}
.pumpfun-launch #launchButton{position:relative;overflow:hidden;isolation:isolate;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.pumpfun-launch #launchButton::after{content:"";position:absolute;inset:-50% auto -50% -42%;width:34%;transform:skewX(-25deg);background:linear-gradient(90deg,transparent,#fff8,transparent);transition:left .55s ease;pointer-events:none}
.pumpfun-launch #launchButton:not(:disabled):hover{transform:translateY(-2px);background:#cbf8a0;box-shadow:0 8px 24px #a6f07842}
.pumpfun-launch #launchButton:not(:disabled):hover::after{left:115%}
.pumpfun-launch #launchButton:not(:disabled):active{transform:translateY(1px);box-shadow:none}
.pumpfun-launch #launchButton:focus-visible{outline:2px solid #f2ffe8;outline-offset:3px}
@keyframes launch-appear{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes launch-hover{50%{transform:translateY(-6px)}}
@keyframes launch-hop{0%,70%,100%{transform:translateY(0)}80%{transform:translateY(-10px)}89%{transform:translateY(0)}}
@keyframes launch-route{to{stroke-dashoffset:-120}}
@keyframes launch-beacon{50%{opacity:.55;filter:drop-shadow(0 0 9px #b8ef82)}}
@keyframes launch-led-pulse{50%{opacity:.55;box-shadow:0 0 3px #b8ef82}}
@media(prefers-reduced-motion:no-preference){
  .launch-preview-coin{animation:launch-hover 3.4s ease-in-out infinite}
  .launch-preview-avatar{animation:launch-hop 3.4s ease-in-out infinite}
  .launch-preview-route{animation:launch-route 7s linear infinite}
  .launch-preview-portal{animation:launch-beacon 3.4s ease-in-out infinite}
  .launch-preview-led{animation:launch-led-pulse 2.6s ease-in-out infinite}
  .pumpfun-launch.motion-ready:not(.in-view) .launch-intro>*,
  .pumpfun-launch.motion-ready:not(.in-view) #launchForm{opacity:0;transform:translateY(18px)}
  .pumpfun-launch.motion-ready.in-view .launch-intro>*,
  .pumpfun-launch.motion-ready.in-view #launchForm{animation:launch-appear .66s cubic-bezier(.2,.8,.2,1) both}
  .pumpfun-launch.motion-ready.in-view .launch-intro>:nth-child(2){animation-delay:.06s}
  .pumpfun-launch.motion-ready.in-view .launch-intro>:nth-child(3){animation-delay:.12s}
  .pumpfun-launch.motion-ready.in-view .launch-intro>:nth-child(4){animation-delay:.18s}
  .pumpfun-launch.motion-ready.in-view .launch-intro>:nth-child(5){animation-delay:.24s}
  .pumpfun-launch.motion-ready.in-view .launch-preview{animation-delay:.3s}
  .pumpfun-launch.motion-ready.in-view #launchForm{animation-delay:.16s}
}
@media(max-width:900px){.launch-preview{max-width:560px;margin-top:23px}}
@media(max-width:500px){.launch-preview{margin-top:20px}.launch-preview-top,.launch-preview-bottom{margin:0 12px}}
@media(prefers-reduced-motion:reduce){.pumpfun-launch *, .pumpfun-launch *::before,.pumpfun-launch *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

.coin-empty{padding:26px;border:1px solid #d9dee7;border-radius:12px;color:#68717f;background:#f6f8fb;font-size:14px}.coin-empty[hidden]{display:none}.coin-external{display:inline-block;margin-top:10px;color:#465ed5;font-size:12px;font-weight:800;text-decoration:none}.coin-external:hover,.coin-external:focus-visible{text-decoration:underline}

/* The original block-built Pumpblox mark is shared across navigation and footer. */
.brand-logo{display:inline-flex;align-items:center;flex:none;line-height:0}
.brand-logo img{display:block;width:190px;height:auto;max-height:66px;object-fit:contain}
.rail-brand{transform:none;overflow:hidden;background:#191b1f url('/pumpblox-logo.png') no-repeat -3px center / 220px auto;border:1px solid #b8ef8266;color:transparent;font-size:0}
.footer-logo{display:inline-flex;align-items:center;line-height:0}
.footer-logo img{display:block;width:136px;height:auto}
@media(max-width:1250px){.topbar{gap:18px}.toplinks{gap:16px;margin-left:0}.brand-logo img{width:168px}.topbar .roblox-header-link{margin-left:0}}
@media(max-width:960px){.toplinks{display:none}.topbar .roblox-header-link{margin-left:auto}}
@media(max-width:700px){.topbar{gap:9px}.brand-logo img{width:138px}.topbar .roblox-header-link{margin-left:auto}}


/* Pumpblox game hub refresh: one dark surface and the logo's lime accent. */
:root{--ink:#f6f8f2;--muted:#a8afa5;--line:#30372f;--blue:#b6f66b;--lime:#b6f66b;--night:#111510}
html{scroll-padding-top:86px}
body{background:#111510;color:var(--ink)}
:focus-visible{outline:2px solid #b6f66b;outline-offset:3px}
.rail{background:#171b17;border-color:#30372f;width:164px;padding:22px 12px}
.rail-brand{margin:4px 0 30px 11px;border:0;background-color:#111510}
.rail-link{border-radius:10px;color:#adb6a9;font-weight:800;transition:background .2s,color .2s,transform .2s}
.rail-link:hover,.rail-link.active{background:#293326;color:#efffdf}
.rail-link:active{transform:scale(.97)}
.rail-foot{color:#65715f}
.shell{margin-left:164px}
.topbar{position:sticky;top:0;z-index:9;height:72px;background:#111510ed;border-color:#2b3429;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.toplinks{gap:24px;color:#a8b2a5;font-size:12px}
.toplinks a{white-space:nowrap;transition:color .2s}
.toplinks a:hover{color:#b6f66b}
.account-button{color:#f6f8f2}
.account-button:hover{color:#b6f66b}
.avatar{background:#2d3929;color:#b6f66b}
.account-menu{background:#1d251b;border-color:#3f4b3b}
.account-menu button{background:#283226;border-color:#45513f}
.account-menu button:hover{background:#374634}
main{max-width:1470px;padding:0 clamp(24px,3.2vw,58px)}
.tabs{height:62px;border-color:#2d362a;gap:26px;color:#8c9989;font-size:12px;font-weight:850}
.tabs a{transition:color .2s}
.tabs a.active{border-color:#b6f66b;color:#f5ffe9}
.tabs a:hover{color:#dffbc3}
.live-indicator{color:#a8b6a4;font-size:9px}
.live-indicator i{background:#b6f66b;box-shadow:0 0 12px #b6f66b88}
.roblox-access{position:relative;overflow:hidden;margin-top:26px;border-color:#45583b;border-radius:16px;padding:25px 30px;background:radial-gradient(circle at 82% 20%,#8bd65233,transparent 29%),linear-gradient(115deg,#242f22,#1b241c 62%,#202d20)}
.roblox-access:after{content:"";position:absolute;right:24%;top:-40px;width:160px;height:160px;border:22px solid #b6f66b12;transform:rotate(25deg);pointer-events:none}
.roblox-access .eyebrow{color:#b6f66b}
.roblox-access h2{font-size:clamp(22px,2.1vw,30px);margin:6px 0}
.roblox-access p{color:#bec9b8}
.roblox-access-link{position:relative;z-index:1;border:0;background:#b6f66b;color:#172015;box-shadow:0 5px 0 #6f993d}
.roblox-access-link:hover,.roblox-access-link:focus-visible{background:#d3ff9a;color:#172015}
.roblox-link:active{transform:translateY(3px);box-shadow:0 2px 0 #6f993d}
.hero{position:relative;gap:clamp(28px,5vw,92px);grid-template-columns:minmax(260px,.88fr) minmax(450px,1.12fr);padding:clamp(54px,6vw,92px) 0;border-color:#2d362a}
.hero:before{content:"";position:absolute;right:12%;top:12%;width:320px;height:320px;z-index:-1;background:#a4e56612;filter:blur(90px);pointer-events:none}
.eyebrow{color:#b6f66b;font-size:10px;letter-spacing:.13em}
.hero h1{font-size:clamp(54px,5.2vw,88px);line-height:.97;letter-spacing:-.075em;margin:18px 0 24px;max-width:9ch}
.hero h1 em{color:#b6f66b}
.hero-copy p{font-size:16px;line-height:1.65;color:#bec8ba;max-width:38ch}
.hero-discover{display:inline-flex;align-items:center;gap:8px;margin-top:20px;color:#d8fbb5;font-size:12px;font-weight:900;border-bottom:1px solid #759956;padding-bottom:5px}
.hero-discover:hover{color:#fff}
.prompt-form{background:#20291e;border:1px solid #4c6045;border-radius:16px;padding:22px;box-shadow:0 28px 64px #0003}
.prompt-form label{color:#dce8d5;font-size:10px;letter-spacing:.11em}
.prompt-form textarea{min-height:158px;height:158px;background:#141b14;border:1px solid #4b6048;border-radius:10px;padding:17px;color:#f8fff3;font-size:14px}
.prompt-form textarea::placeholder{color:#91a08d}
.prompt-form textarea:focus{outline:2px solid #b6f66b;border-color:#b6f66b}
.prompt-bottom>span,.builder-message{color:#b5c2ae}
.prompt-actions select{background:#2b3829;border-color:#52674b;color:#eaf6e2}
.prompt-actions button{background:#b6f66b;color:#142012;border-radius:8px;box-shadow:0 4px 0 #6e993d;transition:transform .18s,background .18s,box-shadow .18s}
.prompt-actions button:hover{background:#d3ff9a}
.prompt-actions button:active{transform:translateY(3px);box-shadow:0 1px 0 #6e993d}
.browse{padding:56px 0 74px}
.section-head{align-items:end;gap:20px;margin-bottom:25px}
.section-head h2{font-size:clamp(31px,3vw,46px);line-height:1.07;margin:7px 0 7px}
.section-head p{color:#aebbac;font-size:13px}
.game-count{color:#9cae96}
#games{border-bottom:1px solid #293427}
#games .cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 18px}
#games .game-card:nth-child(-n+2){grid-column:span 2}
.game-card button{border-radius:12px;transition:transform .2s ease}
.game-card button:hover{transform:translateY(-4px)}
.game-card button:active{transform:translateY(-1px)}
.cover{background:#263322;border:1px solid #40513b;border-radius:12px;box-shadow:0 15px 28px #0003}
.cover:after{left:14px;bottom:14px;background:#101a0ee8;border:1px solid #a5d889a6;color:#f4ffe9;font-size:10px;padding:8px 11px;border-radius:7px;opacity:0;transform:translateY(7px);transition:opacity .2s,transform .2s}
.game-card button:hover .cover:after,.game-card button:focus-visible .cover:after{opacity:1;transform:translateY(0)}
.game-card button:hover .cover{outline:2px solid #b6f66b;outline-offset:3px}
.game-card h3{font-size:17px;margin:13px 0 5px;color:#f5fbf0}
.game-card p{color:#a9b5a4;line-height:1.5}
.game-card .card-type{background:#2c3a29;color:#bdeb99;border-radius:5px;font-size:9px;letter-spacing:.05em}
.coin-creations{padding-top:56px}
.coin-card-label{color:#b6f66b}
.coin-empty{background:#1d261b;border:1px dashed #53664b;color:#becbb7;padding:28px;border-radius:12px}
.coin-external{color:#b6f66b}
.coin-external:hover{color:#dcffb2}
.pumpfun-launch{margin-top:8px}
.pumpfun-claim{background:#1d241d;border-color:#3e4e3b}
.pumpfun-claim form{background:#151d15;border-color:#42543d}
.pumpfun-claim input{background:#202b20;border-color:#52654b}
.pumpfun-claim button{background:#b6f66b}
.how{background:#1e281c;border-color:#3d5038;margin-top:14px}
.how a{background:#b6f66b;color:#172015}
.how a:hover{background:#d2ff9b}
footer{border-color:#2f3a2d}
@media(max-width:1100px){
  .hero{grid-template-columns:1fr;gap:24px}
  .hero h1{max-width:none}
  #games .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  #games .game-card:nth-child(-n+2){grid-column:span 1}
}
@media(max-width:700px){
  html{scroll-padding-top:72px}
  .rail{inset:auto 0 0;width:auto;height:66px;padding:4px 8px;background:#192119;border-top:1px solid #42523c}
  .rail-link{height:55px}
  .shell{margin-left:0}
  .topbar{height:64px}
  main{padding:0 17px}
  .tabs{height:51px;gap:18px}
  .live-indicator{font-size:8px;letter-spacing:0}
  .roblox-access{padding:20px;margin-top:18px}
  .hero{padding:47px 0 53px;gap:22px}
  .hero h1{font-size:clamp(47px,12vw,66px);margin:12px 0 16px}
  .hero-copy p{font-size:14px}
  .prompt-form{padding:15px}
  .prompt-form textarea{height:134px;min-height:134px;font-size:13px}
  .prompt-bottom{align-items:flex-start}
  .browse{padding:42px 0 52px}
  #games .cards{grid-template-columns:1fr;gap:24px}
  .cover:after{opacity:1;transform:none}
  .section-head{align-items:flex-start}
  .section-head h2{font-size:30px}
  .game-count{padding-top:7px;white-space:nowrap}
}
@media(prefers-reduced-motion:reduce){
  .game-card button,.cover:after,.rail-link,.prompt-actions button{transition:none}
  .game-card button:hover{transform:none}
}

/* Illustrated discovery artwork for the featured playable games. */
.hero{isolation:isolate;overflow:hidden;margin-top:24px;padding-left:clamp(22px,3vw,42px);padding-right:clamp(22px,3vw,42px);border:1px solid #3a5134;border-radius:20px;background:linear-gradient(90deg,#111510f5 0%,#111510e8 31%,#111510a8 62%,#11151077 100%),url('/pumpblox-hero.svg') center 52%/cover no-repeat}
.hero-copy,.hero .prompt-form{position:relative;z-index:1}
.hero .prompt-form{background:#1c271bdc;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:#68845c}
#games .game-card:nth-child(1) .cover:before,#games .game-card:nth-child(2) .cover:before{content:"";position:absolute;inset:0;z-index:1;background-position:center;background-size:cover;pointer-events:none}
#games .game-card:nth-child(1) .cover:before{background-image:url('/neon-rooftop.svg')}
#games .game-card:nth-child(2) .cover:before{background-image:url('/bot-blitz.svg')}
#games .game-card:nth-child(-n+2) .cover:after{z-index:2}
@media(max-width:700px){.hero{margin-top:16px;padding-left:21px;padding-right:21px;background-position:62% center}.hero .prompt-form{background:#1c271bf0}}
