body:has(#screen-welcome.active){display:block;margin:0;padding:0;background:#090d1b;min-height:100vh}
.phone:has(#screen-welcome.active){width:100%!important;max-width:1240px!important;height:auto!important;min-height:100vh!important;margin:0 auto!important;border:0!important;border-radius:0!important;overflow:visible!important;box-shadow:none!important;background:#090d1b!important}
#screen-welcome.welcome.active{display:block!important;min-height:100vh;height:auto!important;padding:0 40px!important;overflow:visible!important;text-align:left;background:#090d1b!important;color:#f4f5ff;font-family:Arial,Helvetica,sans-serif}
#screen-welcome.welcome::before{content:none!important}
#screen-welcome *{box-sizing:border-box}
.portal-nav{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff14}
.portal-brand{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:17px;font-weight:900;color:#fff;text-decoration:none;letter-spacing:.04em}.portal-brand>span{display:grid;place-items:center;background:#85f5d5;color:#101a23;width:36px;height:36px;border-radius:11px}.portal-brand small{font-size:11px;font-weight:400;color:#96a5bc;letter-spacing:0;margin-left:3px}.portal-label{font-size:11px;letter-spacing:.16em;color:#a8b3c9}
.portal-hero{min-height:510px;position:relative;isolation:isolate;display:flex;align-items:center;margin:28px 0 42px;border:1px solid #b8c6ff20;border-radius:24px;overflow:hidden;background:#151c36}
.portal-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;z-index:-2}.portal-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#090d1bf5 0%,#090d1bd6 25%,#090d1b55 52%,#090d1b00 75%)}
.portal-copy{padding:45px;max-width:550px}.portal-eyebrow{font-size:10px;font-weight:800;color:#8bf6d7;letter-spacing:.16em}
#screen-welcome .portal-copy h1{font-size:clamp(38px,4.6vw,61px);line-height:1.04;letter-spacing:-.055em;margin:19px 0 22px;background:none;color:#fff;-webkit-text-fill-color:#fff;filter:none;text-shadow:none;font-weight:900}
.portal-copy p{font-size:16px;line-height:1.65;max-width:345px;color:#d1d9e8;margin:0 0 25px}
#screen-welcome #btn-start{width:245px;max-width:100%;border:0!important;border-radius:10px;padding:16px 20px;background:#9af4d8!important;color:#09241f;box-shadow:none!important;display:flex;justify-content:space-between;font-size:15px;font-weight:800;cursor:pointer}.portal-free{display:block;font-size:11px;color:#afbbcf;margin-top:14px}
.portal-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:21px}.portal-section-head h2{font-size:28px;letter-spacing:-.04em;margin:8px 0 0;font-weight:800}.portal-section-head>span{font-size:13px;color:#9eaac1;padding-bottom:4px}
.portal-games{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.portal-card{position:relative;height:248px;overflow:hidden;border:1px solid #ffffff1c;border-radius:17px;color:#fff;background:#202346;text-align:left;padding:0;cursor:pointer;font:inherit;transition:transform .2s,border-color .2s}.portal-card:hover{transform:translateY(-4px);border-color:#8bf6d7}.portal-card:focus-visible,.portal-more button:focus-visible{outline:3px solid #8bf6d7;outline-offset:4px}.portal-card>img{height:100%;width:100%;object-fit:cover;opacity:.9}.portal-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#101628 0%,#101628db 16%,transparent 75%)}.portal-card-copy{position:absolute;bottom:20px;left:18px;right:12px;z-index:1;display:flex;flex-direction:column;gap:7px}.portal-card-copy small{color:#aef3e2;font-size:9px;letter-spacing:.12em;font-weight:700}.portal-card-copy b{font-size:22px;letter-spacing:-.035em}.portal-card-copy>span{font-size:11px;color:#c4cee1;line-height:1.4}.portal-stack{background:radial-gradient(ellipse at top,#7265c2,#232844)}.portal-stack>img{object-fit:contain;object-position:70% top;height:92%;width:85%;margin-left:12%;padding-top:10px}.portal-rally>img{object-position:center 35%}
.portal-more{display:flex;align-items:center;gap:11px;flex-wrap:wrap;padding:26px 0 32px}.portal-more>span{font-size:9px;letter-spacing:.14em;color:#7e8ba5;margin-right:6px}.portal-more button{border:1px solid #ffffff1a;border-radius:9px;background:#121a2c;color:#cbd5e7;padding:11px 14px;font:inherit;font-size:12px;cursor:pointer}.portal-more button:hover{background:#233349;color:#fff}.portal-footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #ffffff13;padding:23px 0;color:#7e8ca7;font-size:11px}.credit{display:none}
.stack-host{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;padding:0;margin:0;background:#0c1424;color:white;overflow:hidden}.stack-host::backdrop{background:#0c1424}.stack-host header{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;font:700 13px Arial;border-bottom:1px solid #ffffff20}.stack-host button{border:1px solid #ffffff35;background:#20314a;color:#fff;border-radius:7px;padding:7px 13px;cursor:pointer;font:inherit}.stack-host iframe{display:block;width:100%;height:calc(100% - 48px);border:0;background:#0c1424}
#portal-home{display:block;margin:12px auto;padding:8px 14px;border:1px solid #ffffff2b;border-radius:9px;background:#14223b;color:#dce8ff;font:12px Arial;cursor:pointer}
@media(max-width:760px){#screen-welcome.welcome.active{padding:0 18px!important}.portal-nav{height:70px}.portal-label{display:none}.portal-brand small{font-size:10px}.portal-hero{min-height:560px;align-items:flex-end;margin-top:18px;margin-bottom:30px}.portal-art{object-position:62% top;height:68%}.portal-hero:after{background:linear-gradient(0deg,#0d1529 0%,#0d1529fa 22%,#0d152972 58%,transparent 85%)}.portal-copy{padding:26px;width:100%;max-width:100%}#screen-welcome .portal-copy h1{font-size:42px;margin:12px 0}.portal-copy p{font-size:14px;max-width:330px;line-height:1.5;margin-bottom:18px}.portal-section-head h2{font-size:25px}.portal-section-head>span{display:none}.portal-games{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.portal-card{height:220px}.portal-card-copy{left:13px;bottom:16px}.portal-card-copy b{font-size:19px}.portal-card-copy small{font-size:8px}.portal-more{gap:8px}.portal-more>span{width:100%}.portal-footer{font-size:10px;line-height:1.6}.portal-brand{font-size:14px;gap:7px}}
@media(prefers-reduced-motion:reduce){.portal-card{transition:none}}
body:has(#screen-lb.active){display:block;padding:0!important;margin:0!important}.phone:has(#screen-lb.active){width:100vw!important;max-width:none!important;margin:0!important;height:100dvh!important;min-height:0!important;border:0!important;border-radius:0!important}
#screen-lb.active{display:flex!important;height:100dvh!important;min-height:0!important;overflow:auto!important;padding:24px max(20px,calc((100vw - 850px)/2));background:radial-gradient(ellipse at top,#333360,#0c1327 65%);box-sizing:border-box}
#screen-lb>.hud{flex:none;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:0 0 22px;background:none;border:0}
.golden-back{background:#1c2b46;border:1px solid #a4c9ec66;border-radius:10px;color:#ecf7ff;font:700 14px Arial;padding:12px 18px;cursor:pointer}
#screen-lb .golden-hunter-banner{flex:none;margin:0 0 22px;padding:25px;border-radius:20px}#screen-lb .golden-hunter-banner b{font-size:26px}#screen-lb .golden-hunter-banner small{font-size:13px;margin-top:7px}#screen-lb .golden-cup{font-size:50px}
#screen-lb .lb-list{flex:1 0 auto;overflow:visible;padding:0;min-height:0}#screen-lb .lb-row{min-height:65px;padding:12px 18px;margin-bottom:8px;border:1px solid #ffffff13;border-radius:12px;background:#0b172ab3}#screen-lb .lb-name{font-size:16px}#screen-lb .lb-score{font-size:18px}#screen-lb .lb-note{flex:none;font-size:13px;line-height:1.5;margin:18px 0 22px;color:#bbc8df}#screen-lb .game-dock{flex:none!important;min-height:58px;border-radius:12px}
@media(max-width:600px){#screen-lb.active{padding:16px}#screen-lb .golden-hunter-banner{padding:18px}#screen-lb .golden-hunter-banner b{font-size:21px}#screen-lb .lb-name{font-size:14px}#screen-lb .lb-row{min-height:60px;padding:10px}.golden-back{font-size:13px;padding:10px 12px}}
#screen-arcade.active{height:100dvh;min-height:0;overflow:hidden;background:radial-gradient(ellipse at top,#27366a,#0c152a)}
body:has(#screen-arcade.active){display:block;padding:0!important;margin:0!important}.phone:has(#screen-arcade.active){width:100vw!important;max-width:none!important;margin:0!important;height:100dvh!important;min-height:0!important;border:0!important;border-radius:0!important}
#app.ps-open:before{content:'';position:absolute;top:0;left:0;right:0;height:56px;background:#071329;border-bottom:1px solid #71d8ee40;z-index:9999}
#app.ps-open #psExitHost{display:block!important;position:absolute!important;left:12px!important;right:auto!important;top:9px!important;bottom:auto!important;width:100px!important;height:38px!important;border-radius:9px!important;font:700 13px Arial;z-index:100001!important}
#app.ps-open #muteBtn{position:absolute!important;top:9px!important;right:12px!important;bottom:auto!important;left:auto!important;width:40px!important;height:38px!important;border-radius:9px!important;z-index:100001!important;box-shadow:none!important}
#app.ps-open .ps-host-title{position:absolute;top:0;height:56px;left:120px;right:62px;display:flex;align-items:center;justify-content:center;color:#b8f4ff;font:800 12px Arial;letter-spacing:.06em;z-index:100000;pointer-events:none}
#app.ps-open{height:100dvh!important;min-height:0!important}
#app.ps-open>.ps-screen{top:56px!important;height:calc(100% - 56px)!important;min-height:0!important}
body:has(#screen-map.active){display:block;margin:0!important;padding:0!important;background:#0b1124}.phone:has(#screen-map.active){width:100%!important;max-width:none!important;height:auto!important;min-height:100dvh!important;border:0!important;border-radius:0!important;margin:0!important;overflow:visible!important}
#screen-map.active{display:block!important;height:auto!important;min-height:100dvh!important;padding:0 max(20px,calc((100vw - 1120px)/2)) 25px!important;background:radial-gradient(ellipse at 65% 0%,#202947,#0b1124 75%)!important;overflow:visible!important;box-sizing:border-box}
#screen-map>.hud{height:55px;padding:10px 0;background:none;border-bottom:1px solid #ffffff14}.map-welcome-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0 14px}.map-welcome-heading span{color:#83e4d2;font-size:10px;letter-spacing:.15em}.map-welcome-heading h1{font-size:28px;line-height:1.2;letter-spacing:-.035em;margin:7px 0;color:#fff}.map-welcome-heading #portal-home{margin:0;flex:none}
#screen-map .map-header{min-height:0!important;padding:0!important;margin:0 0 14px!important;background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;display:block!important}#screen-map .map-header>img{display:none!important}#screen-map .map-header p{display:none}#screen-map .expert-hunter-btn{padding:9px 15px!important;border-radius:10px!important;max-width:none!important}#screen-map .expert-hunter-btn .expert-cup{font-size:22px}#screen-map .expert-hunter-btn b{font-size:13px}#screen-map .expert-hunter-btn small{font-size:10px}
#screen-map .cat-strip{display:flex!important;flex-wrap:wrap;gap:7px;padding:0 0 18px!important;margin:0;background:none!important;grid-template-columns:none!important}#screen-map .cat-pill{width:auto!important;flex:none;min-height:0!important;border:1px solid #718aaa40!important;background:#111e34!important;padding:6px 10px!important;font-size:10px}
#screen-map .path-wrap{height:auto!important;min-height:0!important;overflow:visible!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important}#screen-map .path-wrap:before,#screen-map .node-col:before{display:none!important}
#screen-map .node-col{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:15px!important;padding:0!important;margin:0!important;width:100%!important;max-width:none!important;align-items:stretch!important}
#screen-map .node-item{position:relative!important;width:100%!important;height:170px!important;margin:0!important;align-self:stretch!important;overflow:hidden;border:1px solid #a8bfdf28;border-radius:17px;background:linear-gradient(140deg,color-mix(in srgb,var(--card-accent) 15%,#152138),#10182c);transition:transform .2s,border-color .2s}
#screen-map .node-item:hover{border-color:var(--card-accent);transform:translateY(-3px)}#screen-map .node-item:has(button:focus-visible){outline:2px solid var(--card-accent);outline-offset:3px}
#screen-map .node{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;border:0!important;border-radius:0!important;background:none!important;clip-path:none!important;filter:none!important;box-shadow:none!important;transform:none!important;display:block!important;padding:0!important;cursor:pointer;outline-offset:-4px}
#screen-map .node:before,#screen-map .node:after{display:none!important}#screen-map .node img.map-game-art{position:absolute!important;top:9px!important;left:50%!important;transform:translateX(-50%)!important;width:100px!important;height:106px!important;object-fit:contain!important;filter:drop-shadow(0 7px 12px #0007)}
#screen-map .node-label{position:absolute!important;left:10px!important;right:10px!important;top:auto!important;bottom:30px!important;transform:none!important;margin:0!important;border:0!important;background:none!important;box-shadow:none!important;color:#f0f5ff!important;text-align:center;font-size:16px!important;font-weight:800;pointer-events:none}
.map-game-description{position:absolute;bottom:13px;left:8px;right:8px;text-align:center;color:var(--card-accent);font:700 9px Arial;letter-spacing:.11em;pointer-events:none}.vault-map-icon{display:block;margin:2px auto 48px;font:80px Arial;color:#ffda88;text-shadow:0 0 25px #dcab5a70}
#screen-map>.game-dock{display:none!important}
#screen-map .node-item>button.node{background:transparent!important}
#screen-map .node-item .node-label{width:auto!important;max-width:none!important;display:block!important;padding:0!important;text-align:center!important}
#screen-map .node-item>button.node>*{pointer-events:none}
@media(max-width:600px){#screen-map.active{padding:0 14px 20px!important}.map-welcome-heading{gap:8px;padding-top:17px}.map-welcome-heading h1{font-size:22px}.map-welcome-heading #portal-home{font-size:10px;padding:8px}.map-welcome-heading span{font-size:8px}#screen-map .node-col{gap:9px!important}#screen-map .node-item{height:138px!important;border-radius:12px}#screen-map .node img.map-game-art{width:75px!important;height:80px!important}#screen-map .node-label{font-size:11px!important;bottom:28px!important;white-space:normal!important;line-height:1.2} .map-game-description{font-size:7px;letter-spacing:.02em;bottom:12px}.vault-map-icon{font-size:60px;margin-bottom:35px}#screen-map .cat-strip{gap:5px}#screen-map .cat-pill{font-size:8px!important;padding:5px 7px!important}}
#screen-arcade .arcade-header{flex:none;width:min(900px,100%);margin:0 auto;padding:16px 22px 10px}#screen-arcade .arcade-header .arcade-title{font-size:24px}#screen-arcade .arcade-title img{max-height:64px!important;width:auto!important}#screen-arcade .arcade-howto{font-size:14px;line-height:1.5;margin:12px 0}#screen-arcade .fh-rush-sub{font-size:10px}#screen-arcade .fh-rush-meter{display:none}#screen-arcade #msg-lane{width:min(760px,100%);margin:0 auto;flex:1;min-height:200px;border-left:1px solid #42dbff30;border-right:1px solid #42dbff30;background:linear-gradient(180deg,#101b3588,#182c4ca8)}#screen-arcade .msg-card{left:5%!important;width:90%!important;max-width:none!important;font-size:16px;line-height:1.5;padding:16px 20px;border-radius:12px}#screen-arcade .msg-card .tag{font-size:11px;display:block;margin-bottom:7px}#screen-arcade .arcade-footer{flex:none;width:min(760px,100%);margin:auto;padding:12px 20px}#screen-arcade .rounds-left{font-size:12px;color:#c4d8f4}#screen-arcade .rush-endcard h2{font-size:28px;color:#a0f5df}#screen-arcade .rush-endcard p{font-size:16px}#screen-arcade .tabbar{flex:none}

/* Rally welcome: illustration above a compact circuit tray. */
#screen-rally .rally-menu{flex-direction:column;}
#screen-rally .rally-poster{width:100%;min-width:0;min-height:180px;max-height:none;flex:1;height:auto;background:#83ddf6;}
#screen-rally .rally-poster>img{object-fit:contain;object-position:center;}
#screen-rally .rally-menu-body{width:100%;flex:none;padding:12px max(16px,calc((100% - 840px)/2));display:block;}
#screen-rally .rally-menu-body>p:first-child{margin-bottom:6px;}
#screen-rally .rally-tracks{margin:6px 0 9px;}
#screen-rally .rally-rotate{margin-top:8px;}
@media(min-width:1000px) and (min-height:600px){#screen-rally .rally-menu{flex-direction:row;}#screen-rally .rally-poster{width:auto;height:100%;}#screen-rally .rally-menu-body{width:310px;padding:22px 16px;display:flex;justify-content:center;}#screen-rally .rally-tracks{grid-template-columns:1fr;gap:10px;}#screen-rally .rally-track{padding:12px;}#screen-rally .rally-poster>img{object-fit:cover;}}

#powers .power:disabled{opacity:.38;cursor:not-allowed;filter:grayscale(.7);}#powers .power.active{outline:3px solid #fff;outline-offset:-4px;transform:translateY(-3px);}#powers .power:focus-visible{outline:3px solid #ffe868;}.scanner-target{filter:drop-shadow(0 0 14px #2bff8f)!important;outline:2px dashed #2bff8f;outline-offset:4px;}

.hunter-profile{padding:18px;border:1px solid #775cb2;border-radius:18px;background:#201941;margin:16px 0;color:#fff}.hunter-profile h2{margin:0 0 12px}.hunter-profile input,.hunter-profile select,.hunter-profile button{font:inherit;padding:9px;border-radius:9px;border:1px solid #a78be0;background:#342656;color:white;margin:4px}.hunter-profile p{font-size:12px;line-height:1.5}.hunter-avatars{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.hunter-avatars button{width:70px;height:75px;padding:4px}.hunter-avatars img{width:100%;height:100%;object-fit:contain}.hunter-avatars [aria-pressed=true]{outline:3px solid #66f2dc}#powers .power img{object-fit:contain;border-radius:10px;}

.game-dock{display:grid!important;grid-template-columns:repeat(9,minmax(52px,1fr));overflow-x:auto;gap:4px}.game-dock .tab{min-width:52px;width:auto!important}.game-dock .ic img{width:30px;height:30px;object-fit:contain;display:block;margin:auto}.game-dock .ic{height:32px;display:block}
