
/* Soft, raised surfaces share the homepage's neumorphic palette. */
.app-profile{--profile-ink:#182b48;--profile-blue:#0879ed;--profile-line:#d5dee7;--profile-shadow:8px 8px 20px #cbd3dd,-8px -8px 20px #ffffff;--profile-inset:inset 4px 4px 10px #ccd5df,inset -4px -4px 10px #ffffff;background:var(--surface);color:var(--profile-ink)}
.app-profile h1,.app-profile h2,.app-profile h3{color:var(--profile-ink)}
.app-profile p{color:#52657d}
.app-profile .site-header{min-height:64px;padding-block:10px}
.app-profile .site-header nav{background:var(--surface);border:1px solid #ffffff8c;box-shadow:var(--profile-inset)}
.app-profile .site-header nav a:hover{background:var(--surface);color:#066acd}
.app-profile .site-footer{margin-top:30px}
.app-profile main{padding-bottom:30px}
.profile-cover{height:230px;position:relative;overflow:hidden;background:#c8e7e5}
.profile-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#f0f9ff08,#0c3a3c13)}
.profile-cover img{width:100%;height:100%;object-fit:cover;object-position:center 47%;display:block;filter:blur(4px);transform:scale(1.035)}
.profile-content{position:relative;margin-top:-44px}
.profile-identity{display:grid;grid-template-columns:1fr;gap:26px;position:relative;z-index:2;padding:0 0 38px}
.profile-avatar{display:block;width:116px;height:116px;border:5px solid var(--surface);border-radius:29px;box-shadow:8px 10px 22px #344b6929;background:var(--surface);position:relative;z-index:2;margin:0 auto}
.profile-name{text-align:center;min-width:0}
.profile-name h1{font-size:clamp(29px,7vw,40px);line-height:1.15;letter-spacing:-.045em;margin:0;overflow-wrap:break-word}
.profile-maker{font-size:14px;margin-top:9px;line-height:1.5}
.profile-maker a{color:#066acd;font-weight:650}
.profile-tagline{font-size:16px;margin-top:10px;line-height:1.7}
.profile-store-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:25px}
.store-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#101727;color:#fff;border:1px solid #101727;border-radius:13px;min-height:56px;padding:8px 13px;min-width:145px;transition:background .16s,transform .16s}
.store-button img{display:block;object-fit:contain;flex:none;max-height:30px}
.store-button span{text-align:left}
.store-button small{display:block;font-size:10px;line-height:1.3;letter-spacing:.01em;font-weight:500;white-space:nowrap}
.store-button b{display:block;font-size:17px;line-height:1.35;letter-spacing:-.025em;font-weight:650}
.store-button[href]:hover{background:#1b2b49;transform:translateY(-2px)}
.store-upcoming{border-color:#ffffffb0;background:var(--surface);color:#52657d;box-shadow:var(--profile-inset)}
.store-upcoming img{opacity:.7;filter:grayscale(1)}
.profile-release-note{font-size:12px;line-height:1.8;margin:18px 0 0}
.profile-facts{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;background:none;border:0;padding:0;margin:12px 0 0;overflow:visible}
.profile-facts>div{display:grid;grid-template-columns:50px minmax(0,1fr);column-gap:18px;align-content:center;min-width:0;min-height:104px;padding:22px;border:1px solid #ffffff9c;border-radius:23px;background:var(--surface);box-shadow:var(--profile-shadow)}
.profile-fact-icon{grid-row:1/3;grid-column:1;display:grid;place-items:center;align-self:center;width:50px;height:50px;border-radius:17px;color:#0879ed;background:var(--surface);box-shadow:var(--profile-inset)}
.profile-fact-icon svg{display:block;width:30px;height:30px}
.profile-facts dt{grid-column:2;font-size:14px;line-height:1.5;font-weight:750;color:#24496e}
.profile-facts dd{grid-column:2;font-size:12px;line-height:1.8;color:#52657d;margin:4px 0 0}
.profile-tabs{display:flex;gap:10px;padding:7px;background:var(--surface);border:1px solid #ffffff70;box-shadow:var(--profile-inset);border-radius:22px;overflow-x:auto;scrollbar-width:none}
.profile-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;flex:1;padding:10px 13px;border-radius:16px;font-size:12px;line-height:1.3;color:#52657d;white-space:nowrap}
.profile-tabs a[aria-current=location]{color:#0868c8;background:var(--surface);box-shadow:5px 5px 11px #cbd3dd,-5px -5px 11px #ffffff;font-weight:750}
.profile-tabs a:hover{color:#0868c8}
.profile-section{padding-top:48px;scroll-margin-top:25px}
.profile-overview{display:grid;gap:25px}
.profile-intro h2{font-size:32px;line-height:1.2;letter-spacing:-.045em;margin-top:13px}
.profile-intro p{font-size:14px;line-height:1.9;max-width:570px;margin-top:18px}
.profile-game{border:1px solid #ffffffa0;background:linear-gradient(135deg,#edf4ef,#e2eee8);border-radius:26px;box-shadow:var(--profile-shadow);display:grid;grid-template-columns:minmax(0,1fr) 84px;align-items:center;gap:18px;padding:26px 22px;min-width:0}
.profile-game h3{font-size:24px;line-height:1.2;letter-spacing:-.035em;margin-bottom:13px}
.profile-game p{font-size:13px;line-height:1.85;color:#396051}
.profile-game a{display:inline-flex;align-items:center;gap:10px;color:#24684b;font-size:13px;min-height:44px;font-weight:750;margin-top:13px}
.profile-game a svg,.profile-legal a svg{width:16px;height:16px;flex:none}
.profile-game>img{display:block;width:84px;height:84px;object-fit:cover;border-radius:21px;box-shadow:5px 7px 15px #1d3c581a}
.profile-game-blocks{background:linear-gradient(135deg,#302343,#211a35);border-color:#ffffff1c}
.profile-game-blocks h3{color:#fff}
.profile-game-blocks p{color:#d7cfea}
.profile-game-blocks a{color:#8ee9e8}
.profile-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.profile-section h2{font-size:30px;letter-spacing:-.035em;line-height:1.25}
.profile-section-heading h2{margin-top:11px}
.profile-section-heading p{font-size:13px;line-height:1.9;margin-top:14px;max-width:620px}
.gallery-controls{display:flex;gap:12px;flex:none;padding-bottom:3px}
.gallery-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffffb0;background:var(--surface);color:#176cb8;border-radius:15px;box-shadow:5px 5px 12px #cbd3dd,-5px -5px 12px #ffffff;font-size:21px;cursor:pointer}
.gallery-controls button:active{box-shadow:var(--profile-inset)}
.gallery-controls button:disabled{opacity:.4;cursor:default;box-shadow:var(--profile-inset)}
/* Every slide reserves identical rows. No scroll listener changes page geometry. */
.profile-gallery{--gallery-media-height:260px;display:flex;align-items:flex-start;gap:26px;overflow-x:auto;overflow-y:hidden;padding:12px 4px 24px;scroll-padding-inline:4px;scroll-snap-type:x mandatory;scrollbar-color:#a6bfd9 #dce5ee;scrollbar-width:thin;overscroll-behavior-x:contain;overflow-anchor:none}
.profile-shot,.profile-shot.landscape,.profile-shot.portrait{display:grid;grid-template-rows:var(--gallery-media-height) 96px;row-gap:28px;flex:none;width:min(86vw,600px);max-width:100%;padding:0 0 8px;border:0;border-radius:0;background:transparent;box-shadow:none;scroll-snap-align:start;overflow:visible}
.profile-shot-media{display:flex;align-items:center;justify-content:center;width:100%;height:var(--gallery-media-height);padding:0;background:transparent;border:0;box-shadow:none}
.profile-shot-media img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border:0;border-radius:0;background:transparent;box-shadow:none}
.profile-shot>.screenshot-thought{position:relative;display:flex;align-self:start;justify-self:center;align-items:center;justify-content:center;gap:10px;max-width:calc(100% - 16px);min-height:52px;padding:13px 20px;border:2px solid #0b1746;border-radius:45% 55% 47% 53% / 48% 46% 54% 52%;background:#fc139e;color:#0b1746;box-shadow:4px 5px 0 #0b1746;font-size:13px;font-weight:850;line-height:1.5;text-align:center;transform:rotate(-2deg)}
.profile-shot>.screenshot-thought:before,.profile-shot>.screenshot-thought:after{content:"";position:absolute;background:#fc139e;border:2px solid #0b1746;border-radius:50%;pointer-events:none}
.profile-shot>.screenshot-thought:before{width:13px;height:11px;top:-18px;left:27%}
.profile-shot>.screenshot-thought:after{width:6px;height:6px;top:-29px;left:23%}
.profile-shot:nth-child(2n)>.screenshot-thought{transform:rotate(2deg);color:#fcff49;background:#bd006e}
.profile-shot:nth-child(2n)>.screenshot-thought:before,.profile-shot:nth-child(2n)>.screenshot-thought:after{background:#bd006e}
.profile-shot:hover>.screenshot-thought{box-shadow:6px 7px 0 #0b1746}
.profile-shot:focus-visible{outline:3px solid #0879ed;outline-offset:2px}
.profile-upgrade{padding:30px 26px;background:var(--surface);border:1px solid #ffffffa0;box-shadow:var(--profile-shadow);border-radius:27px;margin-top:42px;display:grid;gap:24px}
.profile-upgrade h2{font-size:27px;letter-spacing:-.035em;line-height:1.25;margin-top:12px}
.profile-upgrade p{font-size:14px;line-height:1.9;margin-top:16px}
.profile-upgrade>p{color:#244c78;font-weight:650;margin:0}
.profile-upgrade>p span{font-size:12px;font-weight:400;color:#52657d}
.profile-help{display:grid;gap:32px;padding-bottom:42px}
.profile-help h2{margin-top:12px}
.profile-help p{font-size:14px;line-height:1.9;margin-top:17px}
.profile-primary{background:var(--surface)!important;box-shadow:var(--profile-shadow);border:1px solid #ffffffc0;color:#0868c8!important;border-radius:17px;min-height:50px;margin-top:25px}
.profile-primary:hover{background:#edf3f9!important}
.profile-primary:active{box-shadow:var(--profile-inset)}
.profile-legal{display:flex;flex-direction:column;justify-content:center;padding:24px;border:1px solid #ffffff85;border-radius:23px;background:var(--surface);box-shadow:var(--profile-inset)}
.profile-legal a{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#245b8f;border-bottom:1px solid var(--profile-line);font-size:13px;min-height:50px}
.profile-legal p{font-size:12px;color:#52657d;max-width:360px}
.profile-back{padding-block:20px 0;border-top:1px solid var(--profile-line)}
.profile-back a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:#426b90}
.profile-lightbox{border:0;background:transparent;box-shadow:none;border-radius:0;padding:55px 8px 24px;width:min(1180px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 24px);overflow:auto;margin:auto;color:#213f61}
.profile-lightbox::backdrop{background:#071a34e3;backdrop-filter:blur(7px)}
.profile-lightbox>img{display:block;max-width:100%;max-height:calc(100dvh - 170px);width:auto;height:auto;margin:auto;object-fit:contain;border:0;border-radius:0}
.lightbox-close{position:absolute;right:9px;top:5px;display:grid;place-items:center;border-radius:50%;border:2px solid #0b1746;background:#fcff49;color:#0b1746;font-size:27px;width:44px;height:44px;cursor:pointer}
.profile-lightbox p{display:table;max-width:90%;margin:22px auto 8px;padding:13px 22px;border:2px solid #0b1746;border-radius:40px;background:#bd006e;color:#fcff49;box-shadow:4px 4px 0 #0b1746;font-size:14px;line-height:1.7;font-weight:750}
.profile-launch{display:flex;align-items:center;justify-content:center;gap:15px;flex-wrap:wrap;margin-top:25px}
.profile-launch>span:last-child{font-size:13px;color:#52657d}
.profile-feature{padding:28px;border:1px solid #ffffffa0;border-radius:26px;background:var(--surface);box-shadow:var(--profile-shadow)}
.profile-feature-number{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;box-shadow:var(--profile-inset);font-size:12px;font-weight:750;color:#397d79;margin-bottom:23px}
.profile-feature h3{font-size:23px;line-height:1.3;letter-spacing:-.025em}
.profile-feature p{font-size:14px;line-height:1.9;margin-top:16px}
.profile-development{padding:30px;border-radius:26px;background:var(--surface);border:1px solid #ffffffa0;box-shadow:var(--profile-inset);margin-top:42px}
.profile-development b{font-size:22px;color:#5a4072;letter-spacing:-.02em}
.profile-development p{font-size:14px;line-height:1.9;color:#665774;margin-top:14px}
@media(min-width:600px){
 .profile-cover{height:270px}.profile-avatar{width:146px;height:146px;border-radius:35px;border-width:6px}.profile-content{margin-top:-54px}
 .profile-identity{gap:28px;padding-bottom:48px}.profile-name h1{font-size:40px}
 .profile-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:18px}
 .profile-facts>div{grid-template-columns:1fr;gap:0;padding:25px 20px;text-align:center;align-content:start}
 .profile-fact-icon{grid-row:auto;grid-column:1;justify-self:center;margin-bottom:18px}
 .profile-facts dt,.profile-facts dd{grid-column:1}.profile-facts dt{font-size:14px}.profile-facts dd{margin-top:8px;font-size:12px}
 .profile-tabs{gap:14px;padding:9px}.profile-tabs a{font-size:14px;padding-inline:22px;flex:0 1 auto;min-width:130px}
 .profile-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.profile-intro{grid-column:1/-1}
 .profile-intro h2{font-size:37px}.profile-intro p{font-size:15px}
 .profile-game{grid-template-columns:1fr;padding:29px;position:relative;overflow:hidden}
 .profile-game>img{position:absolute;width:88px;height:88px;right:24px;top:25px}
 .profile-game h3{max-width:calc(100% - 98px);min-height:78px;font-size:25px}.profile-game p{font-size:14px}
 .profile-section{padding-top:65px}.profile-section-heading h2,.profile-help h2{font-size:35px}.profile-section-heading{margin-bottom:32px}
 .profile-gallery{--gallery-media-height:320px;gap:32px}
 .profile-help{grid-template-columns:1.15fr 1fr;gap:45px;padding-bottom:55px}
 .profile-upgrade{grid-template-columns:1.7fr 1fr;gap:40px;padding:36px;align-items:center;margin-top:48px}
}
@media(min-width:1000px){
 .profile-cover{height:300px}.profile-content{margin-top:-60px}
 .profile-identity{grid-template-columns:180px minmax(0,1fr);gap:32px;align-items:start;padding-bottom:50px}
 .profile-avatar{margin:0;width:180px;height:180px;border-radius:40px}
 .profile-name{padding-top:80px;text-align:left}.profile-name h1{font-size:43px}
 .profile-maker{font-size:15px}.profile-tagline{font-size:18px;margin-top:11px}.profile-store-buttons{justify-content:flex-start;margin-top:26px}
 .profile-facts{grid-column:1/-1;margin-top:16px;gap:28px}
 .profile-facts>div{grid-template-columns:50px minmax(0,1fr);column-gap:18px;text-align:left;align-content:center;padding:28px;min-height:130px}
 .profile-fact-icon{grid-row:1/3;grid-column:1;margin:0;justify-self:start}.profile-facts dt,.profile-facts dd{grid-column:2}.profile-facts dt{font-size:15px}.profile-facts dd{font-size:13px;margin-top:5px}
 .profile-overview{grid-template-columns:.9fr 1fr 1fr;gap:32px}.profile-intro{grid-column:auto}
 .profile-intro h2{font-size:35px}.profile-intro p{font-size:14px;line-height:1.95}
 .profile-game{padding:29px;min-height:280px}.profile-game h3{font-size:26px;min-height:86px}.profile-game p{font-size:13px}
 .profile-upgrade{grid-template-columns:1.8fr 1fr;padding:42px;gap:65px}.profile-upgrade h2{font-size:30px}
 .profile-help{grid-template-columns:1.5fr 1fr;gap:80px;padding-bottom:60px}.profile-launch{justify-content:flex-start}
}
@media(max-width:849px){.app-profile .site-header{min-height:60px;padding-block:8px}}
@media(max-width:359px){
 .profile-cover{height:204px}.profile-avatar{width:108px;height:108px}.profile-content{margin-top:-40px}
 .profile-name h1{font-size:28px}.profile-store-buttons{gap:9px}.store-button{min-width:0;padding:8px 10px;gap:7px;flex:1;max-width:180px}
 .store-button b{font-size:15px}.store-button small{font-size:9px}.store-button img{width:25px;height:25px}
 .profile-facts>div{padding:20px;column-gap:16px}.profile-facts dt{font-size:13px}
 .profile-tabs{gap:5px;padding:6px}.profile-tabs a{font-size:11px;padding-inline:9px}
 .profile-game{grid-template-columns:minmax(0,1fr) 65px;padding:24px 20px;gap:14px}.profile-game>img{width:65px;height:65px}
 .profile-game h3{font-size:22px}.profile-game p{font-size:12px}
 .gallery-controls{gap:8px}.profile-section-heading{gap:12px}.profile-section-heading h2{font-size:27px}
 .profile-gallery{--gallery-media-height:240px}.profile-shot>.screenshot-thought{font-size:12px;padding:12px 15px}
}
@media(prefers-reduced-motion:reduce){.profile-gallery{scroll-behavior:auto}.store-button{transition:none}.store-button[href]:hover{transform:none}}
