@import"https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#eff4ff;background:#080b14;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #080b14;--bg-soft: #0d1220;--surface: #111827;--surface-2: #151e2e;--surface-3: #1b2638;--text: #eff4ff;--text-muted: #8d9bb2;--text-faint: #62728c;--accent: #79f0b2;--accent-dark: #3ed08c;--blue: #7ab6ff;--violet: #9b88ff;--border: rgba(177, 198, 232, .12);--border-strong: rgba(177, 198, 232, .2);--shadow: 0 20px 60px rgba(0, 0, 0, .28);--header: rgba(8, 11, 20, .82)}:root[data-theme=light]{color-scheme:light;--bg: #f3f6fb;--bg-soft: #edf2fa;--surface: #fff;--surface-2: #f8faff;--surface-3: #eaf0f8;--text: #172235;--text-muted: #56647a;--text-faint: #7a879a;--accent: #13975f;--accent-dark: #087c4b;--blue: #286bb4;--violet: #6b57d4;--border: rgba(35, 56, 86, .12);--border-strong: rgba(35, 56, 86, .2);--shadow: 0 20px 60px rgba(38, 58, 92, .12);--header: rgba(245, 248, 253, .9)}*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--text);transition:background .25s ease,color .25s ease}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button{cursor:pointer}::selection{background:#79f0b23d}.app-shell{min-height:100vh;position:relative;isolation:isolate;overflow:clip}.ambient-stars{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:.38;background-image:radial-gradient(1px 1px at 11% 18%,rgba(215,232,255,.85) 50%,transparent 100%),radial-gradient(1px 1px at 74% 30%,rgba(215,232,255,.75) 50%,transparent 100%),radial-gradient(1.5px 1.5px at 41% 72%,rgba(121,240,178,.65) 50%,transparent 100%),radial-gradient(1px 1px at 88% 81%,rgba(215,232,255,.8) 50%,transparent 100%),radial-gradient(1px 1px at 21% 91%,rgba(155,136,255,.8) 50%,transparent 100%),radial-gradient(1px 1px at 61% 10%,rgba(215,232,255,.7) 50%,transparent 100%);background-size:420px 360px;-webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.45) 65%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.45) 65%,transparent 100%)}:root[data-theme=light] .ambient-stars{opacity:.12}.site-header{position:sticky;top:0;z-index:30;background:var(--header);border-bottom:1px solid var(--border);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%)}.header-inner{width:min(1320px,calc(100% - 48px));height:76px;margin:0 auto;display:flex;align-items:center;gap:38px}.brand{display:inline-flex;align-items:center;gap:9px;padding:0;border:0;background:transparent;color:var(--text);flex:0 0 auto}.brand-mark{width:37px;height:37px;color:var(--accent);filter:drop-shadow(0 0 12px rgba(121,240,178,.2))}.brand-name{font:700 20px/1 Space Grotesk,sans-serif;letter-spacing:-.8px}.main-nav{display:flex;align-items:center;gap:28px;height:100%}.nav-link{position:relative;display:inline-flex;align-items:center;height:100%;border:0;padding:0 2px;background:transparent;color:var(--text-muted);font-size:13px;font-weight:600;transition:color .2s ease}.nav-link:hover,.nav-link.active{color:var(--text)}.nav-link.active:after{content:"";position:absolute;left:2px;right:2px;bottom:17px;height:2px;border-radius:2px;background:var(--accent);box-shadow:0 0 12px #79f0b2a6}.header-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.search-box{position:relative;width:min(270px,25vw);height:39px;padding:0 12px;display:flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-faint)}.search-box:focus-within{border-color:#79f0b28c;box-shadow:0 0 0 3px #79f0b214}.search-box input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--text);font-size:12px}.search-box input::placeholder{color:var(--text-faint)}.search-clear{border:0;padding:2px;display:grid;place-items:center;color:var(--text-faint);background:transparent}.search-suggestions{position:absolute;z-index:40;top:calc(100% + 9px);left:0;right:0;padding:6px;border:1px solid var(--border-strong);border-radius:13px;background:var(--surface);box-shadow:var(--shadow)}.search-suggestions button{display:flex;width:100%;align-items:center;gap:10px;border:0;border-radius:8px;padding:8px;background:transparent;color:var(--text);text-align:left;font-size:12px}.search-suggestions button:hover{background:var(--surface-3)}.search-suggestions img{width:32px;height:32px;border-radius:8px;object-fit:cover}.search-suggestions button span{flex:1;font-weight:600}.search-suggestions small{display:block;margin-top:3px;color:var(--text-faint);font-size:10px;font-weight:400}.icon-button{width:38px;height:38px;border:1px solid var(--border);border-radius:10px;display:inline-grid;place-items:center;background:var(--surface);color:var(--text-muted);transition:.2s ease}.icon-button:hover{color:var(--accent);border-color:var(--border-strong);background:var(--surface-2)}.profile-button{position:relative}.profile-settings{position:absolute;right:4px;bottom:4px;background:var(--surface);border-radius:50%}.mobile-nav{display:none}.content-width{width:min(1240px,calc(100% - 48px));margin-left:auto;margin-right:auto}.home-page{padding-top:27px}.intro-line{display:flex;align-items:center;justify-content:space-between;margin:0 2px 14px}.eyebrow{color:var(--text-faint);font-size:9px;line-height:1.4;font-weight:700;letter-spacing:1.45px;text-transform:uppercase}.catalog-count{display:inline-flex;align-items:center;gap:7px;color:var(--text-faint);font-size:11px}.catalog-count span,.live-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px #79f0b2cc}.hero-panel{position:relative;isolation:isolate;min-height:338px;overflow:hidden;border:1px solid rgba(122,182,255,.16);border-radius:20px;display:flex;align-items:center;padding:39px 50px;background:radial-gradient(ellipse at 75% 42%,rgba(41,83,124,.38),transparent 36%),radial-gradient(ellipse at 95% 100%,rgba(63,44,122,.25),transparent 40%),linear-gradient(112deg,#111b2c,#0c1423 52%,#0a111e);box-shadow:0 24px 70px #00000029}:root[data-theme=light] .hero-panel{background:radial-gradient(ellipse at 75% 42%,rgba(49,126,179,.22),transparent 36%),radial-gradient(ellipse at 95% 100%,rgba(115,96,200,.13),transparent 40%),linear-gradient(112deg,#e5edf8,#f1f5fb 52%,#e9eff8)}.hero-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:.28;background-image:radial-gradient(1px 1px at 15% 26%,white 50%,transparent 100%),radial-gradient(1px 1px at 40% 70%,white 50%,transparent 100%),radial-gradient(1.5px 1.5px at 81% 20%,white 50%,transparent 100%),radial-gradient(1px 1px at 60% 84%,white 50%,transparent 100%);background-size:320px 240px}.hero-copy{position:relative;z-index:3;width:min(570px,61%)}.hero-kicker{display:flex;align-items:center;gap:9px;color:var(--accent);font-size:9px;letter-spacing:1.35px;font-weight:700}.kicker-divider{color:#647694}.hero-kicker span:last-child{color:#8696af}.hero-copy h1{max-width:560px;margin:19px 0 12px;font:700 clamp(34px,4vw,52px)/1.06 "Space Grotesk",sans-serif;letter-spacing:-2.6px}.hero-tags{display:flex;align-items:center;gap:9px}.hero-tags>span:not(.rating){padding:4px 8px;border:1px solid var(--border-strong);border-radius:5px;color:var(--text-muted);font-size:8px;font-weight:700;letter-spacing:.7px}.rating{display:inline-flex;align-items:center;gap:4px;color:#f4c96a;font-size:12px;white-space:nowrap}.rating b{color:var(--text);font-size:11px;font-weight:600}.rating-small{gap:3px;font-size:10px}.rating-small b{font-size:10px}.hero-copy>p{max-width:435px;margin:16px 0 20px;color:var(--text-muted);font-size:13px;line-height:1.65}.hero-actions{display:flex;align-items:center;gap:11px}.get-button{min-height:42px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:11px;border:1px solid transparent;border-radius:9px;background:var(--accent);color:#082013;font-size:12px;font-weight:800;box-shadow:0 8px 25px #35d08c26;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.get-button:hover{background:#9af7c6;transform:translateY(-2px);box-shadow:0 12px 30px #35d08c3d}:root[data-theme=light] .get-button{color:#fff}.outline-button{min-height:42px;padding:0 15px;display:inline-flex;align-items:center;gap:9px;border:1px solid var(--border-strong);border-radius:9px;background:#ffffff06;color:var(--text);font-size:11px;font-weight:600;transition:.2s}.outline-button:hover{background:#ffffff14;border-color:#79f0b273}.hero-pagination{display:flex;align-items:center;gap:9px;margin-top:28px;color:#8392aa;font:600 10px Space Grotesk,sans-serif}.hero-pagination>button{width:24px;height:24px;padding:0;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;background:#ffffff0a;color:var(--text-muted)}.hero-pagination>button:hover{color:var(--accent);border-color:var(--accent)}.hero-pagination i{margin:0 3px;font-style:normal;color:#43536e}.hero-dots{display:flex;align-items:center;gap:5px;margin-left:10px}.hero-dots button{width:5px;height:5px;padding:0;border:0;border-radius:9px;background:#52627c;transition:.2s}.hero-dots button.selected{width:19px;background:var(--accent)}.hero-art-button{position:absolute;z-index:2;right:9%;top:50%;transform:translateY(-50%);width:238px;height:238px;padding:21px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:radial-gradient(circle,rgba(97,128,185,.25),rgba(34,50,81,.13) 55%,transparent 70%);cursor:pointer}.hero-art-button img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;border-radius:24%;filter:drop-shadow(0 18px 25px rgba(0,0,0,.45));transition:transform .35s ease}.hero-art-button:hover img{transform:scale(1.05) rotate(-2deg)}.hero-art-halo{position:absolute;top:-18px;right:-18px;bottom:-18px;left:-18px;border:1px solid rgba(121,240,178,.12);border-radius:50%;transform:rotate(-28deg) scaleY(.43)}.hero-art-halo:after{content:"";position:absolute;right:12%;top:28%;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 17px var(--accent)}.hero-orbit{position:absolute;z-index:1;width:400px;height:140px;border:1px solid rgba(120,165,230,.12);border-radius:50%;transform:rotate(-28deg);right:3%;top:29%;pointer-events:none}.hero-orbit-two{width:500px;height:190px;right:0;top:23%;transform:rotate(28deg);border-color:#9b88ff1c}.hero-aside-label{position:absolute;right:29px;bottom:28px;color:#cdddf552;font:700 8px/1.5 Space Grotesk,sans-serif;letter-spacing:1.4px;text-align:right}.trending-section,.shelf-section{margin-top:47px}.section-heading{margin-bottom:17px;display:flex;justify-content:space-between;align-items:center;gap:15px}.section-title-wrap{display:flex;align-items:center;gap:11px}.section-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#79f0b214;color:var(--accent)}.section-title-wrap h2{margin:0;font:600 17px/1.25 Space Grotesk,sans-serif;letter-spacing:-.35px}.section-title-wrap p{margin:4px 0 0;color:var(--text-faint);font-size:10px}.see-all{display:inline-flex;align-items:center;gap:7px;padding:8px 2px;border:0;background:transparent;color:var(--accent);font-size:11px;font-weight:700}.see-all:hover{color:var(--text)}.trending-rail{display:grid;grid-template-columns:repeat(4,1fr);gap:9px 12px}.trending-item{min-width:0;height:70px;padding:9px 11px;display:flex;align-items:center;gap:11px;border:1px solid var(--border);border-radius:12px;background:var(--surface);text-align:left;transition:transform .2s ease,background .2s ease,border .2s ease}.trending-item:hover{transform:translateY(-2px);border-color:var(--border-strong);background:var(--surface-2)}.trend-number{color:var(--text-faint);font:600 16px Space Grotesk,sans-serif;letter-spacing:-1px}.trending-item>img{width:42px;height:42px;flex:0 0 auto;object-fit:cover;border-radius:10px}.trending-copy{min-width:0;flex:1}.trending-copy strong{display:block;overflow:hidden;color:var(--text);font-size:10px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.trending-copy small{display:flex;align-items:center;gap:4px;margin-top:5px;color:var(--text-faint);font-size:9px}.trending-copy .rating{gap:2px}.trend-arrow{color:var(--text-faint);opacity:0;transition:.2s}.trending-item:hover .trend-arrow{opacity:1;color:var(--accent)}.shelf-wrap{position:relative}.item-rail{display:flex;gap:15px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 1px 12px}.item-rail::-webkit-scrollbar{display:none}.item-card{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--surface);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.item-card:hover{transform:translateY(-4px);border-color:#79f0b24f;box-shadow:0 15px 35px #00000026}.item-card-compact{flex:0 0 188px;scroll-snap-align:start}.card-art-button{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left}.card-art{position:relative;height:132px;overflow:hidden;display:grid;place-items:center;padding:16px;background:radial-gradient(circle at 50% 30%,rgba(102,128,176,.17),transparent 65%),var(--surface-2)}.card-art img{width:100%;height:100%;object-fit:contain;border-radius:12px;transition:transform .3s ease}.item-card:hover .card-art img{transform:scale(1.04)}.source-badge{position:absolute;top:9px;right:9px;padding:4px 7px;border:1px solid rgba(197,213,238,.15);border-radius:5px;background:#080b14ad;color:#dce7f8;font-size:7px;font-weight:800;letter-spacing:.8px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.card-content{padding:11px 12px 12px}.card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.card-title{display:-webkit-box;min-height:30px;overflow:hidden;padding:0;border:0;background:transparent;color:var(--text);font:600 12px/1.3 Space Grotesk,sans-serif;text-align:left;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:2}.card-title:hover{color:var(--accent)}.save-button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:3px;border:0;background:transparent;color:var(--text-faint);font-size:10px;transition:color .2s}.save-button:hover,.save-button.is-saved{color:#ff7c9a}.card-meta{display:flex;align-items:center;gap:6px;margin-top:8px;color:var(--text-faint);font-size:9px}.meta-dot{width:3px;height:3px;border-radius:50%;background:var(--text-faint)}.card-stats{display:flex;justify-content:space-between;gap:4px;margin-top:9px;color:var(--text-faint);font-size:8px}.get-button-small{width:100%;min-height:32px;margin-top:11px;justify-content:space-between;padding:0 11px;border-radius:7px;font-size:10px;box-shadow:none}.rail-arrow{position:absolute;z-index:4;top:41%;width:31px;height:31px;display:grid;place-items:center;border:1px solid var(--border-strong);border-radius:50%;background:var(--surface);color:var(--text);box-shadow:0 5px 20px #00000038;opacity:0;transition:opacity .2s,color .2s,border .2s}.shelf-wrap:hover .rail-arrow,.rail-arrow:focus-visible{opacity:1}.rail-arrow:hover{color:var(--accent);border-color:var(--accent)}.rail-prev{left:-15px}.rail-next{right:-15px}.catalog-note{margin:32px 0 58px;padding:13px 16px;display:flex;align-items:flex-start;gap:10px;border:1px solid rgba(122,182,255,.13);border-radius:10px;background:#7ab6ff0a;color:var(--text-faint)}.catalog-note svg{flex:0 0 auto;color:var(--blue)}.catalog-note p{margin:0;font-size:10px;line-height:1.6}.library-page{min-height:70vh;padding-top:47px;padding-bottom:70px}.page-hero{min-height:190px;margin-bottom:26px;padding:29px 34px;border:1px solid var(--border);border-radius:17px;display:flex;justify-content:space-between;align-items:center;background:radial-gradient(ellipse at 82% 30%,rgba(64,113,171,.19),transparent 40%),linear-gradient(115deg,var(--surface),var(--bg-soft))}.page-hero h1{margin:12px 0 7px;display:flex;align-items:center;gap:12px;font:700 clamp(31px,4vw,43px)/1.1 "Space Grotesk",sans-serif;letter-spacing:-1.7px}.page-hero h1 svg{color:var(--accent);width:29px;height:29px}.page-hero p{margin:0;color:var(--text-muted);font-size:12px}.page-hero-count{display:flex;align-items:center;gap:13px;color:var(--text-faint)}.page-hero-count strong{color:var(--accent);font:600 35px Space Grotesk,sans-serif}.page-hero-count span{font-size:9px;line-height:1.6;text-transform:uppercase;letter-spacing:.8px}.page-hero-count svg{color:var(--accent)}.library-toolbar{min-height:42px;margin-bottom:17px;display:flex;align-items:center;justify-content:space-between;gap:12px}.filter-tabs{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.filter-label{margin-right:4px;color:var(--text-faint);font-size:10px}.filter-chip{padding:7px 11px;border:1px solid var(--border);border-radius:7px;background:transparent;color:var(--text-muted);font-size:9px;transition:.2s}.filter-chip:hover{border-color:var(--border-strong);color:var(--text)}.filter-chip.active{border-color:#79f0b259;background:#79f0b214;color:var(--accent)}.results-count{color:var(--text-faint);font-size:10px}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.catalog-grid .card-art{height:178px}.search-page .page-hero{min-height:150px}.empty-state{min-height:310px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--text-muted)}.empty-state>svg{color:var(--accent)}.empty-state h2{margin:14px 0 5px;color:var(--text);font:600 22px Space Grotesk,sans-serif}.empty-state p{margin:0 0 18px;font-size:12px}.not-found{padding-top:30px;padding-bottom:50px}.not-found h1{margin:10px 0;color:var(--text);font:700 39px Space Grotesk,sans-serif}.detail-page{padding-top:25px;padding-bottom:70px}.back-link{display:inline-flex;align-items:center;gap:7px;margin:0 0 17px;border:0;background:transparent;color:var(--text-muted);font-size:11px}.back-link:hover{color:var(--accent)}.detail-banner{position:relative;height:225px;overflow:hidden;border:1px solid var(--border);border-radius:16px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 25%,rgba(81,126,192,.27),transparent 50%),linear-gradient(112deg,#0f1829,#10111c)}.detail-banner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#080b1414,#080b1459),radial-gradient(ellipse at 50% 100%,rgba(121,240,178,.08),transparent 60%)}.detail-banner>img{width:126px;height:126px;z-index:1;object-fit:contain;border-radius:25px;filter:drop-shadow(0 15px 28px rgba(0,0,0,.44))}.detail-banner-glow{position:absolute;width:240px;height:240px;border:1px solid rgba(121,240,178,.18);border-radius:50%;transform:scaleY(.54) rotate(-19deg)}.banner-caption{position:absolute;z-index:2;left:19px;right:19px;bottom:15px;display:flex;justify-content:space-between;color:#dfebff8c;font-size:8px;font-weight:700;letter-spacing:1.2px}.detail-heading{display:flex;align-items:center;gap:17px;padding:22px 4px 20px}.detail-icon{width:76px;height:76px;flex:0 0 auto;padding:4px;border:1px solid var(--border-strong);border-radius:18px;background:var(--surface);box-shadow:0 9px 23px #00000029}.detail-icon img{width:100%;height:100%;object-fit:cover;border-radius:13px}.detail-title{min-width:0;flex:1}.detail-tags{display:flex;gap:6px}.detail-tags span{color:var(--accent);font-size:8px;font-weight:700;letter-spacing:.9px}.detail-title h1{margin:6px 0 7px;font:700 clamp(24px,3vw,33px)/1.15 "Space Grotesk",sans-serif;letter-spacing:-1.2px}.detail-subline{display:flex;align-items:center;gap:10px;color:var(--text-faint);font-size:10px}.detail-actions{display:flex;align-items:center;gap:9px}.detail-actions .get-button{min-width:98px}.detail-save{min-height:41px;padding:0 12px;border:1px solid var(--border);border-radius:8px;color:var(--text-muted)}.detail-save:hover{border-color:#ff7c9a}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);border-radius:13px;background:var(--surface)}.stat-strip>div{min-height:77px;padding:16px 18px;border-right:1px solid var(--border);display:flex;flex-direction:column;justify-content:center;gap:8px}.stat-strip>div:last-child{border-right:0}.stat-strip span{color:var(--text-faint);font-size:8px;font-weight:700;letter-spacing:1px}.stat-strip strong{display:flex;align-items:center;gap:5px;color:var(--text);font:600 13px Space Grotesk,sans-serif}.stat-strip strong svg{color:#f4c96a}.stat-strip strong small{color:var(--text-faint);font:400 9px DM Sans,sans-serif}.detail-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(245px,.8fr);gap:28px;margin-top:31px}.detail-main-column{display:flex;flex-direction:column;gap:27px}.detail-section .eyebrow{display:block;margin-bottom:7px}.detail-section h2{margin:0 0 11px;font:600 19px Space Grotesk,sans-serif;letter-spacing:-.4px}.detail-section>p{max-width:700px;margin:0;color:var(--text-muted);font-size:12px;line-height:1.75}.info-table{margin:0;border-top:1px solid var(--border)}.info-table>div{min-height:40px;padding:10px 3px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--border);font-size:10px}.info-table dt{color:var(--text-faint)}.info-table dd{margin:0;color:var(--text);text-align:right}.info-table dd small{display:block;margin-top:3px;color:var(--text-faint);font-size:8px}.detail-side-column{display:flex;flex-direction:column;gap:13px}.platform-card{padding:18px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.platform-card h3{margin:6px 0 7px;font:600 15px Space Grotesk,sans-serif}.platform-card>p{margin:0 0 14px;color:var(--text-faint);font-size:10px;line-height:1.6}.platform-choice{width:100%;min-height:49px;padding:8px 9px;display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text-muted);text-align:left;margin-top:7px}.platform-choice:hover{border-color:#79f0b266;color:var(--accent)}.platform-choice>span{flex:1;color:var(--text);font-size:10px;font-weight:600}.platform-choice small{display:block;margin-top:3px;color:var(--text-faint);font-size:8px;font-weight:400}.detail-page .shelf-section{margin-top:42px}.site-footer{margin-top:30px;border-top:1px solid var(--border);background:#070a1259}.footer-inner{width:min(1240px,calc(100% - 48px));margin:0 auto;padding:25px 0 20px;display:flex;align-items:center;gap:17px;flex-wrap:wrap}.footer-inner .brand-mark{width:28px;height:28px}.footer-inner .brand-name{font-size:16px}.footer-inner>p{margin:0;color:var(--text-faint);font-size:10px}.footer-links{margin-left:auto;display:flex;align-items:center;gap:14px}.footer-links button{padding:5px 0;border:0;background:transparent;color:var(--text-muted);font-size:9px}.footer-links button:hover{color:var(--accent)}.footer-links span{color:var(--text-faint);font-size:9px}.footer-inner>small{flex-basis:100%;color:var(--text-faint);font-size:8px}.panel-backdrop,.dialog-backdrop{position:fixed;z-index:60;top:0;right:0;bottom:0;left:0;background:#02050bad;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);animation:fade-in .18s ease both}.settings-panel{position:absolute;top:12px;right:12px;bottom:12px;width:min(390px,calc(100% - 24px));overflow-y:auto;padding:23px;border:1px solid var(--border-strong);border-radius:17px;background:var(--surface);box-shadow:var(--shadow);animation:slide-in .22s ease both}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start}.panel-heading h2{margin:5px 0 0;font:600 21px Space Grotesk,sans-serif}.profile-card{margin:20px 0 16px;padding:13px;display:flex;align-items:center;gap:11px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2)}.profile-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#79f0b21c;color:var(--accent)}.profile-card strong{font-size:11px}.profile-card p{margin:4px 0 0;color:var(--text-faint);font-size:9px}.setting-row{min-height:66px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border)}.setting-icon{color:var(--text-faint)}.setting-copy{flex:1}.setting-copy strong,.setting-copy span{display:block}.setting-copy strong{font-size:10px}.setting-copy span{margin-top:4px;color:var(--text-faint);font-size:8px}.switch{width:35px;height:20px;padding:2px;border:1px solid var(--border-strong);border-radius:20px;background:var(--surface-3)}.switch span{display:block;width:14px;height:14px;border-radius:50%;background:var(--text-faint);transition:transform .2s,background .2s}.switch.on{background:#79f0b23d;border-color:#79f0b273}.switch.on span{transform:translate(15px);background:var(--accent)}.saved-heading{margin:22px 0 11px;display:flex;align-items:center;justify-content:space-between;color:var(--accent)}.saved-heading h3{margin:5px 0 0;color:var(--text);font:600 14px Space Grotesk,sans-serif}.saved-heading h3 span{margin-left:5px;color:var(--text-faint);font:400 10px DM Sans,sans-serif}.empty-saved{padding:15px;border:1px dashed var(--border-strong);border-radius:9px;color:var(--text-faint);font-size:10px}.saved-list{display:flex;flex-direction:column;gap:5px}.saved-list button{width:100%;display:flex;align-items:center;gap:9px;padding:7px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;font-size:10px}.saved-list button:hover{background:var(--surface-2)}.saved-list img{width:32px;height:32px;border-radius:7px;object-fit:cover}.saved-list span{flex:1}.saved-list small{display:block;margin-top:3px;color:var(--text-faint);font-size:8px}.panel-footnote{margin:20px 0 0;color:var(--text-faint);font-size:8px;line-height:1.6}.dialog-backdrop{z-index:70;display:grid;place-items:center;padding:20px}.get-dialog{position:relative;width:min(440px,100%);max-height:min(760px,calc(100vh - 40px));overflow-y:auto;padding:24px;border:1px solid var(--border-strong);border-radius:18px;background:var(--surface);box-shadow:0 28px 90px #0000008c;animation:dialog-in .22s cubic-bezier(.2,.75,.25,1) both}.dialog-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%}.dialog-item{display:flex;align-items:center;gap:12px;padding-right:30px}.dialog-item img{width:55px;height:55px;border:1px solid var(--border);border-radius:13px;object-fit:cover}.dialog-item h2{margin:4px 0;font:600 17px Space Grotesk,sans-serif}.dialog-item-meta{color:var(--text-faint);font-size:9px}.platform-select{margin:18px 0;display:flex;align-items:center;justify-content:space-between;gap:10px}.platform-select>span{color:var(--text-faint);font-size:9px}.platform-select>div{display:flex;gap:6px}.platform-pill{min-height:30px;padding:0 9px;display:flex;align-items:center;gap:5px;border:1px solid var(--border);border-radius:7px;background:transparent;color:var(--text-muted);font-size:9px}.platform-pill.selected{color:var(--accent);border-color:#79f0b266;background:#79f0b212}.dialog-start{width:100%;min-height:43px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{opacity:.7;transform:translate(15px)}to{opacity:1;transform:translate(0)}}@keyframes dialog-in{0%{opacity:0;transform:translateY(9px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:1060px){.header-inner{gap:25px}.main-nav{gap:20px}.hero-panel{padding-left:38px}.hero-art-button{right:6%;width:210px;height:210px}.trending-rail{grid-template-columns:repeat(2,1fr)}.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.header-inner{width:calc(100% - 30px);height:64px;gap:16px}.main-nav{display:none}.mobile-nav{height:39px;display:flex;justify-content:center;gap:32px;border-top:1px solid var(--border)}.mobile-nav .nav-link{font-size:11px}.mobile-nav .nav-link.active:after{bottom:4px}.search-box{width:min(260px,40vw)}.content-width,.footer-inner{width:calc(100% - 30px)}.home-page{padding-top:20px}.hero-panel{min-height:330px;padding:29px 27px}.hero-copy{width:65%}.hero-art-button{right:2%;width:168px;height:168px}.hero-copy h1{font-size:38px}.hero-copy>p{font-size:11px}.trending-rail{gap:8px}.trending-item{height:65px;gap:8px;padding:7px}.trend-number{font-size:13px}.trending-item>img{width:36px;height:36px}.trending-copy strong{font-size:9px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalog-grid .card-art{height:150px}.detail-columns{grid-template-columns:1fr}.detail-side-column{display:grid;grid-template-columns:1fr 1fr;align-items:start}.detail-banner{height:190px}.page-hero{min-height:160px;padding:24px}}@media(max-width:520px){.header-inner{gap:10px}.brand-mark{width:31px;height:31px}.brand-name{font-size:17px}.header-actions{gap:6px}.search-box{width:38px;padding:0 10px;transition:width .2s}.search-box:focus-within{position:absolute;left:15px;right:113px;width:auto;z-index:5;background:var(--surface)}.search-box:not(:focus-within) input{width:0;padding:0;opacity:0}.search-box:not(:focus-within){justify-content:center}.search-box:not(:focus-within)>svg{flex:0 0 auto}.icon-button{width:35px;height:35px}.hero-panel{min-height:400px;padding:25px 21px;align-items:flex-start}.hero-copy{width:100%}.hero-copy h1{max-width:330px;margin-top:14px;font-size:33px;letter-spacing:-1.7px}.hero-copy>p{max-width:300px;margin:11px 0 15px}.hero-art-button{top:auto;bottom:36px;right:23px;width:116px;height:116px;padding:11px}.hero-aside-label{right:20px;bottom:16px;font-size:7px}.hero-orbit{right:-30%;top:54%}.hero-orbit-two{right:-39%;top:48%}.hero-pagination{margin-top:18px}.trending-section,.shelf-section{margin-top:34px}.section-title-wrap h2{font-size:15px}.section-title-wrap p{font-size:9px}.section-icon{width:30px;height:30px}.trending-rail{grid-template-columns:1fr}.trending-item{height:62px;padding:7px 10px}.item-card-compact{flex-basis:165px}.card-art{height:118px}.card-content{padding:9px}.catalog-grid .card-art{height:125px;padding:11px}.catalog-grid{gap:9px}.card-stats{font-size:7px}.library-page{padding-top:27px}.page-hero{min-height:140px;padding:19px}.page-hero h1{font-size:28px}.page-hero p{max-width:230px;font-size:10px}.page-hero-count strong{font-size:25px}.page-hero-count{gap:6px}.page-hero-count span{font-size:7px}.library-toolbar{align-items:flex-start}.filter-label{display:none}.filter-tabs{gap:5px}.filter-chip{padding:6px 7px;font-size:8px}.results-count{display:none}.detail-page{padding-top:18px}.detail-banner{height:150px}.detail-banner>img{width:92px;height:92px}.detail-heading{align-items:flex-start;gap:10px;flex-wrap:wrap}.detail-icon{width:58px;height:58px;border-radius:14px}.detail-icon img{border-radius:10px}.detail-title{min-width:calc(100% - 70px)}.detail-title h1{font-size:23px}.detail-subline{flex-wrap:wrap;gap:6px;font-size:8px}.detail-actions{width:100%;margin-top:2px}.detail-actions .get-button{flex:1}.stat-strip>div{min-height:66px;padding:10px 8px}.stat-strip span{font-size:7px}.stat-strip strong{font-size:10px}.detail-side-column{display:flex}.info-table>div{align-items:flex-start;font-size:9px}.footer-inner{gap:10px}.footer-inner>p{flex-basis:100%;order:3}.footer-links{margin-left:auto}.footer-links{gap:9px}.footer-links span{display:none}.get-dialog{padding:20px 17px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root[data-motion=reduced] *,:root[data-motion=reduced] *:before,:root[data-motion=reduced] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.link-status{margin-top:20px;padding:13px;display:flex;align-items:flex-start;gap:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text-muted)}.link-status>svg{flex:0 0 auto;color:var(--blue)}.link-status p{margin:0;font-size:10px;line-height:1.6}.link-status.link-ready{border-color:#79f0b23d;background:#79f0b20f}.link-status.link-ready>svg{color:var(--accent)}.get-button:disabled{opacity:.48;cursor:not-allowed;box-shadow:none;filter:saturate(.45)}.get-button:disabled:hover{transform:none;box-shadow:none}:root{font-family:Archivo,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#eef1ff;background:#0a0e27;--bg: #0a0e27;--bg-soft: #0f1433;--surface: #141a3a;--surface-2: #1b2250;--surface-3: #252e66;--text: #eef1ff;--text-muted: #a9b0d6;--text-faint: #737ba8;--accent: #ffb23f;--accent-dark: #e6941d;--blue: #8aa9ff;--violet: #b7a5ff;--border: rgba(164, 178, 255, .12);--border-strong: rgba(164, 178, 255, .22);--shadow: 0 24px 60px -18px rgba(0, 0, 10, .7);--header: rgba(13, 18, 46, .72)}:root[data-theme=light]{color-scheme:light;--bg: #eef1f8;--bg-soft: #f8f9fd;--surface: #fff;--surface-2: #e0e5f2;--surface-3: #d3daec;--text: #0a0e27;--text-muted: #4a5178;--text-faint: #737ba8;--accent: #d88712;--accent-dark: #ad6500;--blue: #4567be;--violet: #6953b8;--border: rgba(10, 14, 39, .1);--border-strong: rgba(10, 14, 39, .18);--shadow: 0 24px 60px -20px rgba(20, 28, 70, .28);--header: rgba(248, 249, 253, .82)}body,button,input{font-family:Archivo,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}h1,h2,h3,.brand-name,.stat-strip strong{font-family:Archivo,ui-sans-serif,system-ui,sans-serif!important}::selection{background:#ffb23f4d}.ambient-stars{opacity:.14}:root[data-theme=light] .ambient-stars{opacity:.05}.site-header{position:fixed;inset:0 0 auto;background:var(--header);border-bottom-color:transparent;box-shadow:0 1px #ffffff0a}.header-inner{width:min(1440px,calc(100% - 40px));height:64px;gap:26px}.brand-mark{color:var(--accent);filter:drop-shadow(0 0 12px rgba(255,178,63,.22))}.brand-name span{color:var(--accent)}.main-nav{height:42px;gap:3px;padding:4px;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:#080a1e57}.nav-link{height:32px;padding:0 15px;border-radius:999px;color:#eef1ffc7}.nav-link.active:after{display:none}.nav-link.active{color:#0a0e27;background:var(--accent)}.nav-link:hover:not(.active){background:#ffffff14}.search-box{border-radius:999px;background:#080a1e5c;border-color:#ffffff1c}.icon-button{border-radius:50%;background:#080a1e47}.content-width{width:min(1320px,calc(100% - 48px))}.home-page{width:100%;max-width:none;margin:0;padding:0 0 42px}.home-page>.hero-panel{width:100%;margin:0;border:0;border-radius:0;min-height:640px;padding:104px max(24px,calc((100vw - 1320px)/2)) 64px;background:#0a0e27;box-shadow:none}.hero-panel:after{content:"";position:absolute;z-index:-2;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(90deg,#0a0e27fa,#0a0e27e6 30%,#0a0e278f 63%,#0a0e2757),var(--hero-art);background-position:center,center 38%;background-repeat:no-repeat;background-size:cover;opacity:.9}:root[data-theme=light] .home-page>.hero-panel{background:#182040}:root[data-theme=light] .hero-panel:after{background-image:linear-gradient(90deg,#0a0e27eb,#0a0e27b8 48%,#0a0e2759),var(--hero-art)}.hero-panel:before{opacity:.13}.hero-copy{width:min(610px,58%)}.hero-kicker{color:var(--accent)}.hero-copy h1{font-size:clamp(42px,5.6vw,72px);letter-spacing:-2.5px}.hero-copy>p{color:#c0c6e2;font-size:15px}.hero-tags>span:not(.rating){border-radius:999px;background:#080a1e7a;color:#eef1ff}.get-button{border-radius:999px;background:var(--accent);color:#0a0e27;box-shadow:0 10px 28px -10px #ffb23fcc}.get-button:hover{background:#ffc05d;color:#0a0e27;box-shadow:0 14px 34px -8px #ffb23fcc}:root[data-theme=light] .get-button{color:#0a0e27}.outline-button{border-radius:999px;background:#ffffff14}.hero-pagination>button{border-radius:50%}.hero-dots button.selected{background:var(--accent)}.hero-art-button{right:max(30px,calc((100vw - 1190px)/2));width:212px;height:212px;border-color:#ffffff3d;background:radial-gradient(circle,rgba(255,255,255,.2),rgba(27,34,80,.18) 58%,transparent 74%)}.hero-art-halo{border-color:#ffb23f52}.hero-art-halo:after{background:var(--accent);box-shadow:0 0 17px var(--accent)}.hero-orbit,.hero-orbit-two{border-color:#a4b2ff26}.hero-aside-label{color:#eef1ff80}.home-page>.trending-section,:is(.home-page,.detail-page)>.shelf-section,.home-page>.catalog-note{width:min(1320px,calc(100% - 48px));margin-left:auto;margin-right:auto}.trending-section,.shelf-section{margin-top:36px}.section-title-wrap h2{font-size:21px}.section-title-wrap p{font-size:12px}.section-icon{border-radius:50%;background:#ffb23f1f;color:var(--accent)}.see-all{color:var(--accent)}.trending-rail{display:flex;gap:14px;overflow-x:auto;padding:3px 2px 15px;scrollbar-width:thin;scrollbar-color:rgba(255,178,63,.34) transparent}.trending-item{position:relative;flex:0 0 196px;height:110px;overflow:hidden;border:0;border-radius:18px;background:transparent}.trend-number{position:absolute;left:5px;bottom:-22px;z-index:0;color:transparent;-webkit-text-stroke:1px rgba(210,218,255,.32);font-size:96px;line-height:1;letter-spacing:-8px}.trending-item>img{position:relative;z-index:1;width:76px;height:76px;border-radius:18px;box-shadow:0 12px 30px #00000a66}.trending-copy{position:relative;z-index:1;align-self:flex-end;padding-bottom:5px}.trending-copy strong{font-size:12px}.trending-copy small{font-size:10px}.trend-arrow{position:relative;z-index:1}.item-rail{gap:16px;padding-bottom:14px}.item-card{border-radius:18px;background:var(--surface)}.item-card:hover{border-color:#ffb23f73}.item-card-compact{flex-basis:210px}.card-art{height:150px;border-radius:0;background:radial-gradient(circle at 50% 35%,rgba(164,178,255,.2),transparent 66%),var(--surface-2)}.card-art img{border-radius:23%}.source-badge{border-radius:999px;background:#080a1ead}.card-content{padding:13px}.get-button-small{min-height:34px;border-radius:999px}.rail-arrow{border-radius:50%;background:var(--surface-2)}.catalog-note{margin-top:30px}.library-page,.detail-page{padding-top:82px}.page-hero{border-radius:24px;background:linear-gradient(125deg,#171d43,#101632)}:root[data-theme=light] .page-hero{background:linear-gradient(125deg,#e3e8f3,#f8f9fd)}.catalog-grid{gap:18px}.catalog-grid .card-art{height:180px}.detail-banner{border-radius:24px}.stat-strip,.platform-card{border-radius:18px}.site-footer{margin-top:44px;background:var(--bg-soft)}.partner-disclosure{margin:-4px 0 18px;color:var(--text-muted);font-size:12px;line-height:1.6}.partner-disclosure a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.partner-progress{width:100%;padding:15px 0 2px}.partner-progress-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;color:var(--text);font-size:13px}.partner-progress-label strong{color:var(--accent);font-variant-numeric:tabular-nums}.partner-progress-track{height:9px;overflow:hidden;border-radius:999px;background:linear-gradient(180deg,#ffffff06,#0000001f),var(--surface-3);box-shadow:inset 0 0 0 1px #ffb23f2e,inset 0 1px 3px #00000061}.partner-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f4a42c,#ffbd55 55%,#ffdc87);box-shadow:0 0 10px #ffb23f57,inset 0 1px #ffffff4d;transition:width .18s cubic-bezier(.22,1,.36,1)}.partner-progress small{display:block;margin-top:9px;color:var(--text-faint);font-size:11px}@media(max-width:1060px){.header-inner{gap:16px}.main-nav{gap:2px}.home-page>.hero-panel{min-height:570px;padding-top:93px}.hero-art-button{width:178px;height:178px;right:5%}.home-page>.trending-section,:is(.home-page,.detail-page)>.shelf-section,.home-page>.catalog-note{width:calc(100% - 40px)}}@media(max-width:760px){.site-header{background:#0d122ed6}.header-inner{width:calc(100% - 30px);height:60px}.mobile-nav{background:#0d122ec7;border-top-color:#ffffff12}.home-page>.hero-panel{min-height:530px;padding:112px 24px 38px;align-items:flex-start}.hero-copy{width:72%}.hero-copy h1{font-size:clamp(38px,8vw,56px)}.hero-copy>p{max-width:420px;font-size:13px}.hero-art-button{width:138px;height:138px;right:24px;bottom:34px;top:auto}.hero-aside-label{display:none}.home-page>.trending-section,:is(.home-page,.detail-page)>.shelf-section,.home-page>.catalog-note{width:calc(100% - 30px)}.trending-item{flex-basis:186px}.item-card-compact{flex-basis:180px}.library-page,.detail-page{padding-top:75px}}@media(max-width:520px){.hero-panel:after{background-image:linear-gradient(180deg,#0a0e27e6,#0a0e27e0 47%,#0a0e278f),var(--hero-art);background-position:center,65% center}.home-page>.hero-panel{min-height:590px;padding:110px 20px 28px}.hero-copy{width:100%}.hero-copy h1{max-width:360px;font-size:40px}.hero-copy>p{max-width:300px}.hero-art-button{width:102px;height:102px;right:20px;bottom:32px}.hero-pagination{margin-top:19px}.trending-section,.shelf-section{margin-top:30px}.section-title-wrap h2{font-size:18px}.trending-item{flex-basis:175px;height:98px}.trending-item>img{width:64px;height:64px}.trend-number{font-size:82px}.item-card-compact{flex-basis:164px}.card-art{height:124px}}@media(prefers-reduced-motion:reduce){.partner-progress-track span{transition:none}}.trending-item{flex-basis:145px;height:137px;padding:8px 6px;display:grid;grid-template-columns:1fr;grid-template-rows:79px 1fr;align-content:start;gap:3px}.trend-number{top:-13px;bottom:auto;left:0}.trending-item>img{width:66px;height:66px;justify-self:center;align-self:start}.trending-copy{width:100%;align-self:start;padding:0}.trending-copy strong{font-size:11px}.trending-copy small{font-size:9px}.trend-arrow{position:absolute;right:5px;top:8px}.card-title{font-size:12px}.card-meta{font-size:9px}.card-stats{font-size:8px}.rating-source{margin-left:2px;color:var(--text-muted);font-size:8px;font-weight:700;letter-spacing:.7px}.verified-meta{margin:9px 0 0;color:var(--text-muted);font-size:12px}.verified-meta strong{margin-right:5px;color:var(--text)}.research-note{margin-top:11px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;color:var(--text-muted);font-size:11px;line-height:1.6}.source-links{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:13px;color:var(--text-faint);font-size:10px}.source-links strong{margin-right:2px;color:var(--text-muted)}.source-links a{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid var(--border);border-radius:999px;color:var(--accent)}.source-links a:hover{border-color:var(--accent);background:#ffb23f14}@media(max-width:760px){.trending-item{flex-basis:145px;height:130px}}@media(max-width:520px){.trending-item{flex-basis:140px;height:124px;grid-template-rows:70px 1fr}.trending-item>img{width:58px;height:58px}}.related-official-panel{margin:20px 0;padding:18px;border:1px solid rgba(255,178,63,.24);border-left:3px solid var(--accent);border-radius:14px;background:linear-gradient(135deg,#ffb23f14,#1b225033)}.related-official-panel h3{margin:7px 0 8px;color:var(--text);font-size:17px}.related-official-panel>p{margin:0;color:var(--text-muted);font-size:12px;line-height:1.7}.related-official-facts{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.related-official-facts>span{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border-radius:999px;background:var(--surface-2);color:var(--text-muted);font-size:10px}.related-official-facts>span:has(svg){color:var(--accent)}.related-official-link{display:inline-flex;align-items:center;gap:6px;margin-top:11px;color:var(--accent);font-size:11px;font-weight:700}.related-official-link:hover{text-decoration:underline;text-underline-offset:2px}.mobile-menu-toggle{display:none;margin-left:auto;flex:0 0 auto}.mobile-menu-layer{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;visibility:hidden;pointer-events:none}.mobile-menu-layer.is-open{visibility:visible;pointer-events:auto}.mobile-menu-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;background:#040714ad;opacity:0;transition:opacity .28s ease}.mobile-menu-layer.is-open .mobile-menu-backdrop{opacity:1}.mobile-menu-panel{position:absolute;inset:0 0 0 auto;width:min(88vw,380px);overflow-y:auto;display:flex;flex-direction:column;gap:25px;padding:22px 20px 28px;border-left:1px solid var(--border-strong);background:var(--bg);box-shadow:-20px 0 60px #0000004d;transform:translate(100%);transition:transform .3s cubic-bezier(.22,1,.36,1)}.mobile-menu-layer.is-open .mobile-menu-panel{transform:translate(0)}.mobile-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.mobile-menu-heading .icon-button{background:var(--surface)}.mobile-menu-nav{display:grid;gap:7px}.mobile-menu-link{width:100%;min-height:48px;padding:0 14px;border:0;border-radius:11px;background:transparent;color:var(--text-muted);font-size:14px;font-weight:650;text-align:left;transition:background .18s ease,color .18s ease}.mobile-menu-link:hover{background:var(--surface-2);color:var(--text)}.mobile-menu-link.active{background:var(--accent);color:#0a0e27}.mobile-menu-search .mobile-search-box{width:100%;height:44px;border-radius:12px;background:var(--surface)}.mobile-menu-actions{display:grid;gap:9px;margin-top:auto}.mobile-menu-action{width:100%;min-height:46px;padding:0 13px;display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);text-align:left;font-size:12px;font-weight:600}.mobile-menu-action span{flex:1}@media(max-width:760px){.main-nav,.header-actions,.mobile-nav{display:none!important}.mobile-menu-toggle{display:inline-grid}.mobile-menu-layer{display:block}}@media(prefers-reduced-motion:reduce){.mobile-menu-panel,.mobile-menu-backdrop{transition:none}}.detail-banner>img[src="/catalog/hollow-knight.jpg"]{width:100%;height:100%;object-fit:cover;object-position:center center;border-radius:0;filter:none}/*! tailwindcss v4.1.13 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial}}}@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-\[-22px\]{top:-22px;right:-22px;bottom:-22px;left:-22px}.z-10{z-index:10}.z-\[10000\]{z-index:10000}.mx-\[8px\]{margin-inline:8px}.mt-\[12px\]{margin-top:12px}.mt-\[18px\]{margin-top:18px}.mt-\[24px\]{margin-top:24px}.mt-\[25px\]{margin-top:25px}.mb-\[10px\]{margin-bottom:10px}.flex{display:flex}.hidden{display:none}.inline{display:inline}.h-\[172px\]{height:172px}.h-full{height:100%}.min-h-\[100svh\]{min-height:100svh}.w-\[172px\]{width:172px}.w-full{width:100%}.max-w-\[640px\]{max-width:640px}.max-w-\[min\(90vw\,780px\)\]{max-width:min(90vw,780px)}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-\[11px\]{gap:11px}.gap-\[12px\]{gap:12px}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\[25px\]{border-radius:25px}.rounded-\[31px\]{border-radius:31px}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.bg-\[\#080C16\]{background-color:#080c16}.object-cover{object-fit:cover}.p-\[7px\]{padding:7px}.px-\[24px\]{padding-inline:24px}.py-\[16px\]{padding-block:16px}.py-\[24px\]{padding-block:24px}.pb-\[2px\]{padding-bottom:2px}.text-center{text-align:center}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[clamp\(28px\,5vw\,44px\)\]{font-size:clamp(28px,5vw,44px)}.leading-\[1\.25\]{--tw-leading:1.25;line-height:1.25}.leading-none{--tw-leading:1;line-height:1}.tracking-\[-0\.035em\]{--tw-tracking:-.035em;letter-spacing:-.035em}.tracking-\[0\.26em\]{--tw-tracking:.26em;letter-spacing:.26em}.break-words{overflow-wrap:break-word}.text-\[\#8F9AAD\]{color:#8f9aad}.text-\[\#939EB0\]{color:#939eb0}.text-\[\#465369\]{color:#465369}.text-\[\#F7F9FC\]{color:#f7f9fc}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}}.installing-screen,.installing-screen *{box-sizing:border-box}.installing-screen{z-index:10000;isolation:isolate;color:#f7f9fc;-webkit-font-smoothing:antialiased;background:#080c16;height:100svh;min-height:540px;font-family:Inter,Segoe UI,ui-sans-serif,system-ui,sans-serif;position:fixed;top:0;right:0;bottom:0;left:0}.installing-screen:before{z-index:-1;content:"";background:#080c16;position:absolute;top:0;right:0;bottom:0;left:0}.installing-screen__ambient{z-index:0;pointer-events:none;background:radial-gradient(at 50% 35%,#1c71ec33,#0d37771f 31%,#080c1600 68%);width:min(100vw,900px);height:min(78vh,760px);position:absolute;top:7%;left:50%;transform:translate(-50%)}.installing-screen__app-name{color:#f7f9fc;letter-spacing:-.035em;overflow-wrap:anywhere;max-width:min(90vw,780px);font-size:clamp(28px,5vw,44px);font-weight:750;line-height:1.08;font-family:Inter,Segoe UI,ui-sans-serif,system-ui,sans-serif!important}.installing-screen__icon-wrap{isolation:isolate;background:linear-gradient(145deg,#1f43778f,#070e1bb8);border:1px solid #a3cdff42;flex:none;box-shadow:0 22px 74px #1163e22e,0 0 0 1px #ffffff09}.installing-screen__icon-halo{z-index:-1;filter:blur(19px);pointer-events:none;background:radial-gradient(circle,#3596ff52,#175fc82b 38%,#0f366c00 72%)}.installing-screen__app-icon{border-radius:inherit;object-fit:cover;background:#111a2a;width:100%;height:100%;display:block}.installing-screen__close{position:absolute;z-index:30;top:clamp(14px,3vw,28px);right:clamp(14px,3vw,28px);display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(143,154,173,.25);border-radius:14px;background:rgba(17,26,42,.76);color:#f7f9fc;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.installing-screen__close:hover{transform:translateY(-1px);border-color:rgba(81,173,255,.7);background:rgba(31,48,72,.94)}.installing-screen__close:focus-visible{outline:2px solid #51adff;outline-offset:3px}.installing-screen__percentage{color:#f7f9fc;font-variant-numeric:tabular-nums;justify-content:center;align-items:flex-start;line-height:.88}.installing-screen__percentage-number{letter-spacing:-.09em;font-size:clamp(78px,14vw,112px);font-weight:760}.installing-screen__percentage-sign{color:#e5edf8;letter-spacing:-.04em;margin-top:.1em;margin-left:7px;font-size:clamp(32px,6vw,45px);font-weight:650;line-height:1}.installing-screen__details{color:#939eb0;font-variant-numeric:tabular-nums;letter-spacing:.015em;font-size:12px}.installing-screen__steps-list{width:min(100%,420px);flex-direction:column;align-items:stretch;gap:11px;margin:0 auto;padding:0;list-style:none;display:flex;transform:translateX(clamp(0px,3.5vw,40px))}.installing-screen__content{transform:translateY(clamp(-32px,-3.5vh,-14px))}.installing-screen__step{align-items:center;justify-content:flex-start;gap:12px;min-height:24px;transition:color .22s,opacity .22s;display:flex}.installing-screen__step-indicator{color:#07111f;border:1px solid #4e5e758a;border-radius:50%;flex:0 0 22px;place-items:center;width:22px;height:22px;transition:border-color .22s,background-color .22s,box-shadow .22s,color .22s;display:grid}.installing-screen__step[data-state=complete] .installing-screen__step-indicator{background:#51adff;border-color:#51adff;box-shadow:0 0 16px #3999ff8a}.installing-screen__step[data-state=active] .installing-screen__step-indicator{color:#59b4ff;border-color:#4eaeffe6;box-shadow:0 0 14px #3291ff33}.installing-screen__step[data-state=pending] .installing-screen__step-indicator{background:#09101bb8;border-color:#414d6094}.installing-screen__step-label{color:#475467;font-size:13px;line-height:1.25;text-align:left;transition:color .22s,font-weight .22s}.installing-screen__step[data-state=complete] .installing-screen__step-label{color:#8f9bad;font-weight:450}.installing-screen__step[data-state=active] .installing-screen__step-label{color:#f7f9fc;font-weight:700}.installing-screen__step[data-state=pending] .installing-screen__step-label{color:#475467;font-weight:450}.installing-screen__spinner{animation:.85s linear infinite installing-screen-spin}@keyframes installing-screen-spin{to{transform:rotate(360deg)}}@media(max-width:560px){.installing-screen__icon-wrap{width:154px;height:154px}.installing-screen__steps-list{gap:9px}.installing-screen__step-label{font-size:12px}}@media(max-height:690px){.installing-screen{min-height:520px}.installing-screen__icon-wrap{width:142px;height:142px;margin-top:16px}.installing-screen__percentage{margin-top:17px}.installing-screen__steps{margin-top:12px}.installing-screen__steps-list{gap:7px}}@media(prefers-reduced-motion:reduce){.installing-screen__spinner{animation:none}.installing-screen__step,.installing-screen__step-indicator,.installing-screen__step-label{transition:none}}:root[data-motion=reduced] .installing-screen__spinner{animation:none}:root[data-motion=reduced] .installing-screen__step,:root[data-motion=reduced] .installing-screen__step-indicator,:root[data-motion=reduced] .installing-screen__step-label{transition:none}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}.site-footer{margin-top:58px;border-top:1px solid var(--border);background:radial-gradient(38rem 16rem at 11% -12%,rgba(255,178,63,.055),transparent 66%),var(--bg-soft)}.site-footer__inner{width:min(1190px,calc(100% - 48px));margin:0 auto;padding:38px 0 18px}.site-footer__main{display:grid;grid-template-columns:minmax(260px,1.45fr) repeat(2,minmax(130px,.7fr));gap:clamp(28px,6vw,82px);align-items:start;padding-bottom:32px;border-bottom:1px solid var(--border)}.site-footer__brand{max-width:390px}.site-footer__logo .brand{display:inline-flex;align-items:center;gap:9px;min-height:36px;padding:0;border:0;background:transparent;color:var(--text)}.site-footer__logo .brand-mark{width:34px;height:34px}.site-footer__logo .brand-name{font-size:19px}.site-footer__description{max-width:39ch;margin:13px 0 22px;color:var(--text-muted);font-size:12px;line-height:1.75}.site-footer__eyebrow,.site-footer__column h2{margin:0;color:var(--text-faint);font-size:9px;font-weight:700;letter-spacing:.13em;line-height:1.4;text-transform:uppercase}.site-footer__social-block{display:grid;gap:10px}.site-footer__socials{display:flex;flex-wrap:wrap;gap:8px}.site-footer__social{display:inline-grid;width:36px;height:36px;place-items:center;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface) 86%,transparent);color:var(--text-muted);transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.site-footer__social--placeholder{cursor:default;opacity:.78}.site-footer__social:not(.site-footer__social--placeholder):hover{transform:translateY(-2px);border-color:#ffb23f70;background:var(--surface-2);color:var(--accent)}.site-footer__column{display:grid;gap:13px}.site-footer__column h2{margin-bottom:2px}.site-footer__column ul{display:grid;gap:11px;margin:0;padding:0;list-style:none}.site-footer__link,.site-footer__legal a,.site-footer__legal span{width:fit-content;padding:0;border:0;background:transparent;color:var(--text-muted);font:inherit;font-size:12px;line-height:1.5;text-align:left;text-decoration:none;transition:color .16s ease}.site-footer__link:hover,.site-footer__legal a:hover{color:var(--accent)}.site-footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;padding-top:16px;color:var(--text-faint);font-size:10px}.site-footer__bottom small{font-size:inherit}.site-footer__legal{display:flex;flex-wrap:wrap;gap:8px 20px}.site-footer__legal span{cursor:default;opacity:.76}@media(max-width:760px){.site-footer__inner{width:calc(100% - 30px)}.site-footer__main{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 26px}.site-footer__brand{grid-column:1 / -1;max-width:520px}}@media(max-width:520px){.site-footer{margin-top:42px}.site-footer__inner{width:calc(100% - 32px);padding-top:30px}.site-footer__main{gap:24px 16px;padding-bottom:24px}.site-footer__description{margin-bottom:18px;font-size:12px}.site-footer__column{gap:11px}.site-footer__column ul{gap:10px}.site-footer__bottom{align-items:flex-start;flex-direction:column;gap:11px}}@media(prefers-reduced-motion:reduce){.site-footer__social{transition:none}}

/* Install progress motion refinement: preserve the existing visual system and content. */
.installing-screen__icon-wrap{animation:install-icon-enter .68s cubic-bezier(.2,.75,.25,1.15) both}
.installing-screen__status{opacity:0;animation:install-fade-up .42s ease-out .12s both}
.installing-screen__title{opacity:0;animation:install-fade-up .48s ease-out .2s both}
.installing-screen__percentage{opacity:0;animation:install-fade-up .42s ease-out .28s both}
.installing-screen__percentage-number{display:inline-block;min-width:3ch;text-align:right;will-change:transform;transition:transform 120ms cubic-bezier(.2,.8,.3,1.25)}
.installing-screen__details{opacity:0;animation:install-fade-up .4s ease-out .34s both}
.installing-screen__steps{opacity:0;animation:install-fade-up .42s ease-out .4s both}
.installing-screen__step{animation:install-fade-up .34s ease-out both}
.installing-screen__step:nth-child(1){animation-delay:.42s}
.installing-screen__step:nth-child(2){animation-delay:.48s}
.installing-screen__step:nth-child(3){animation-delay:.54s}
.installing-screen__step:nth-child(4){animation-delay:.60s}
.installing-screen__step:nth-child(5){animation-delay:.66s}
@keyframes install-fade-up{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes install-icon-enter{0%{opacity:0;transform:translateY(9px) scale(.86);box-shadow:0 14px 38px #1163e214,0 0 0 1px #ffffff09}68%{opacity:1;transform:translateY(-1px) scale(1.025);box-shadow:0 22px 84px #1163e244,0 0 0 1px #ffffff09}100%{opacity:1;transform:translateY(0) scale(1);box-shadow:0 22px 74px #1163e22e,0 0 0 1px #ffffff09}}

/* install screen spacing and in-icon progress fill */
body:has(.installing-screen) .site-header{display:none!important}
.installing-screen__content{transform:none}
.installing-screen__status{margin:14px 0 12px!important;line-height:1.2}
.installing-screen__title{margin:0!important;line-height:1.08;text-wrap:balance}
.installing-screen__percentage{margin-top:26px!important}
.installing-screen__details{margin-top:10px!important;line-height:1.4}
.installing-screen__steps{margin-top:24px!important}
.installing-screen__steps-list{width:min(100%,420px);gap:10px;transform:none!important}
.installing-screen__step{min-height:26px;gap:12px}
.installing-screen__icon-window{position:relative;isolation:isolate}
.installing-screen__app-icon{filter:grayscale(.66) saturate(.5) brightness(.84);transition:filter .24s ease}
.installing-screen__color-fill{position:absolute;inset:0;overflow:hidden;pointer-events:none;clip-path:inset(calc(100% - var(--download-fill)) 0 0 0);transition:clip-path .24s cubic-bezier(.22,.7,.2,1);will-change:clip-path}
.installing-screen__color-fill img{display:block;width:100%;height:100%;object-fit:cover}
@media(prefers-reduced-motion:reduce){.installing-screen__color-fill{transition:none}.installing-screen__app-icon{transition:none}}

/* Reference-inspired compact horizontal rows for app and game lists. */
:is(.home-page,.detail-page)>.shelf-section{width:min(1450px,calc(100% - 40px));margin-top:34px}
:is(.home-page,.detail-page)>.shelf-section .section-heading{margin-bottom:14px}
:is(.home-page,.detail-page)>.shelf-section .section-title-wrap h2{font-size:26px;font-weight:700;letter-spacing:-.6px}
:is(.home-page,.detail-page)>.shelf-section .section-icon{display:none}
:is(.home-page,.detail-page)>.shelf-section .shelf-wrap{position:relative}
:is(.home-page,.detail-page)>.shelf-section .rail-arrow{display:none}
:is(.home-page,.detail-page)>.shelf-section .item-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 30px;overflow:visible;padding:0}
:is(.home-page,.detail-page)>.shelf-section .item-card-compact{display:flex;align-items:center;gap:16px;min-width:0;width:auto;flex:none;overflow:visible;padding:10px 0;border:0;border-bottom:1px solid rgba(177,198,232,.14);border-radius:0;background:transparent;box-shadow:none;scroll-snap-align:none}
:is(.home-page,.detail-page)>.shelf-section .item-card-compact:hover{transform:none;border-color:rgba(177,198,232,.24);box-shadow:none}
:is(.home-page,.detail-page)>.shelf-section .card-art-button{flex:0 0 68px;width:68px;height:68px}
:is(.home-page,.detail-page)>.shelf-section .card-art{width:68px;height:68px;padding:0;border-radius:13px;background:transparent}
:is(.home-page,.detail-page)>.shelf-section .card-art img{width:100%;height:100%;object-fit:cover;border-radius:13px}
:is(.home-page,.detail-page)>.shelf-section .source-badge{position:static;display:inline-flex;vertical-align:middle;margin-left:5px;padding:2px 5px;border:1px solid rgba(255,178,63,.65);border-radius:4px;background:rgba(255,178,63,.08);color:#ffb23f;font-size:10px;line-height:1.2}
:is(.home-page,.detail-page)>.shelf-section .card-content{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;align-items:center;gap:3px 8px;flex:1;min-width:0;padding:0}
:is(.home-page,.detail-page)>.shelf-section .card-title-row{grid-column:1;grid-row:1;min-width:0;align-items:center}
:is(.home-page,.detail-page)>.shelf-section .card-title{min-height:0;font:700 17px/1.2 Archivo,system-ui,sans-serif;white-space:nowrap;-webkit-line-clamp:1}
:is(.home-page,.detail-page)>.shelf-section .save-button{display:none}
:is(.home-page,.detail-page)>.shelf-section .card-meta{grid-column:1;grid-row:2;margin:0;font-size:13px;color:#aeb9d1}
:is(.home-page,.detail-page)>.shelf-section .card-stats{grid-column:1;grid-row:3;justify-content:flex-start;margin:0;font-size:12px;color:#aeb9d1}
:is(.home-page,.detail-page)>.shelf-section .get-button-small{grid-column:2;grid-row:1 / 4;width:84px;min-height:36px;margin:0;justify-content:center;padding:0 12px;border:0;border-radius:999px;background:#20245e;color:#ffb23f;font-size:16px;font-weight:700;box-shadow:none}
:is(.home-page,.detail-page)>.shelf-section .get-button-small:hover{background:#2b3075;color:#ffc05d;transform:none;box-shadow:none}
.library-page .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 30px}
.library-page .catalog-grid .item-card{display:flex;align-items:center;gap:16px;min-width:0;overflow:visible;padding:10px 0;border:0;border-bottom:1px solid rgba(177,198,232,.14);border-radius:0;background:transparent;box-shadow:none}
.library-page .catalog-grid .item-card:hover{transform:none;border-color:rgba(177,198,232,.24);box-shadow:none}
.library-page .catalog-grid .card-art-button{flex:0 0 68px;width:68px;height:68px}
.library-page .catalog-grid .card-art{width:68px;height:68px;padding:0;border-radius:13px;background:transparent}
.library-page .catalog-grid .card-art img{width:100%;height:100%;object-fit:cover;border-radius:13px}
.library-page .catalog-grid .source-badge{position:static;display:inline-flex;vertical-align:middle;margin-left:5px;padding:2px 5px;border:1px solid rgba(255,178,63,.65);border-radius:4px;background:rgba(255,178,63,.08);color:#ffb23f;font-size:10px;line-height:1.2}
.library-page .catalog-grid .card-content{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;align-items:center;gap:3px 8px;flex:1;min-width:0;padding:0}
.library-page .catalog-grid .card-title-row{grid-column:1;grid-row:1;min-width:0;align-items:center}
.library-page .catalog-grid .card-title{min-height:0;font:700 17px/1.2 Archivo,system-ui,sans-serif;white-space:nowrap;-webkit-line-clamp:1}
.library-page .catalog-grid .save-button{display:none}
.library-page .catalog-grid .card-meta{grid-column:1;grid-row:2;margin:0;font-size:13px;color:#aeb9d1}
.library-page .catalog-grid .card-stats{grid-column:1;grid-row:3;justify-content:flex-start;margin:0;font-size:12px;color:#aeb9d1}
.library-page .catalog-grid .get-button-small{grid-column:2;grid-row:1 / 4;width:84px;min-height:36px;margin:0;justify-content:center;padding:0 12px;border:0;border-radius:999px;background:#20245e;color:#ffb23f;font-size:16px;font-weight:700;box-shadow:none}
.library-page .catalog-grid .get-button-small:hover{background:#2b3075;color:#ffc05d;transform:none;box-shadow:none}
@media(max-width:900px){:is(.home-page,.detail-page)>.shelf-section .item-rail,.library-page .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}}
@media(max-width:560px){:is(.home-page,.detail-page)>.shelf-section{width:calc(100% - 28px)}:is(.home-page,.detail-page)>.shelf-section .item-rail,.library-page .catalog-grid{grid-template-columns:minmax(0,1fr);gap:0}:is(.home-page,.detail-page)>.shelf-section .section-title-wrap h2{font-size:23px}:is(.home-page,.detail-page)>.shelf-section .item-card-compact,.library-page .catalog-grid .item-card{gap:12px}:is(.home-page,.detail-page)>.shelf-section .card-art-button,:is(.home-page,.detail-page)>.shelf-section .card-art,.library-page .catalog-grid .card-art-button,.library-page .catalog-grid .card-art{width:60px;height:60px;flex-basis:60px}:is(.home-page,.detail-page)>.shelf-section .card-title,.library-page .catalog-grid .card-title{font-size:15px}:is(.home-page,.detail-page)>.shelf-section .get-button-small,.library-page .catalog-grid .get-button-small{width:68px;min-height:34px;font-size:14px}}

/* Symmetric alignment refinements for the download progress screen. */
.installing-screen__content{width:100%;max-width:640px;margin-inline:auto;align-items:center;text-align:center}
.installing-screen__icon-wrap{align-self:center;margin-top:0}
.installing-screen__status{align-self:center;width:100%;margin:14px 0 10px!important;text-align:center}
.installing-screen__title{align-self:center;width:100%;margin:0!important;text-align:center}
.installing-screen__percentage{display:flex;align-self:center;width:max-content;max-width:100%;align-items:center;justify-content:center;gap:0;margin:18px auto 0!important;line-height:1}
.installing-screen__percentage-number{min-width:0;text-align:center;letter-spacing:-.09em;line-height:1}
.installing-screen__percentage-sign{align-self:center;margin:0 0 0 7px;line-height:1}
.installing-screen__details{align-self:center;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;width:100%;margin:8px auto 0!important;text-align:center}
.installing-screen__steps{align-self:center;width:100%;max-width:640px;margin:20px auto 0!important;text-align:center}
.installing-screen__steps-list{display:flex;flex-direction:column;align-items:stretch;width:max-content;max-width:100%;gap:9px;margin:0 auto;padding:0;transform:none!important}
.installing-screen__step{width:max-content;max-width:100%;min-height:26px;align-items:center;justify-content:flex-start;gap:12px}
.installing-screen__step-label{max-width:calc(100vw - 100px);text-align:left}

/* Platform selection is intentionally skipped in the direct-download flow. */
.detail-page .detail-side-column{display:none!important}
.detail-page .detail-columns{grid-template-columns:minmax(0,1fr)!important}


/* Completion transition: slide up, flash white, hold, then redirect. */
.installing-screen[data-exit="true"] .installing-screen__content{animation:install-cinematic-slide-up .6s cubic-bezier(.42,0,.58,1) both}
.installing-screen__flash{position:fixed;z-index:10001;inset:0;width:100vw;height:100vh;pointer-events:none;background:#fff;opacity:0}
.installing-screen[data-exit="true"] .installing-screen__flash{animation:install-solid-white-flash .6s linear both}
.installing-screen[data-exit="true"] .installing-screen__ambient{animation:install-cinematic-background .6s ease-in-out both}
@keyframes install-cinematic-slide-up{0%{transform:translateY(0);opacity:1}100%{transform:translateY(-100px);opacity:.18}}
@keyframes install-solid-white-flash{0%{opacity:0}50%{opacity:1}100%{opacity:1}}
@keyframes install-cinematic-background{0%{opacity:1;filter:blur(0)}42%{opacity:.25;filter:blur(8px)}100%{opacity:0;filter:blur(12px)}}
@media(prefers-reduced-motion:reduce){.installing-screen[data-exit="true"] .installing-screen__content,.installing-screen[data-exit="true"] .installing-screen__flash,.installing-screen[data-exit="true"] .installing-screen__ambient{animation-duration:.01ms}}

/* Dynamic store-style featured carousel. */
.home-page>.hero-panel{position:relative;isolation:isolate;min-height:590px;overflow:hidden;display:flex;align-items:center;padding:56px 48px 142px;background:#080a1e;border:0;border-radius:0;box-shadow:none}
.home-page>.hero-panel:before{z-index:0;opacity:.08}
.home-page>.hero-panel:after{display:none}
.hero-background{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%;filter:none;animation:hero-image-in .55s ease both}
.hero-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(8,10,30,.97) 0%,rgba(8,10,30,.88) 30%,rgba(8,10,30,.48) 63%,rgba(8,10,30,.18) 100%),linear-gradient(0deg,rgba(8,10,30,.78),transparent 36%)}
.home-page>.hero-panel .hero-copy{width:min(610px,58%);animation:hero-copy-in .45s ease both}
.home-page>.hero-panel .hero-copy h1{font-size:clamp(42px,5.6vw,72px);letter-spacing:-2.5px}
.home-page>.hero-panel .hero-copy>p{max-width:480px;color:#d2d7e8;font-size:15px}
.home-page>.hero-panel .hero-tags>span:not(.rating){border-radius:999px;background:#080a1e7a;color:#eef1ff}
.hero-thumbnails{position:absolute;z-index:4;right:clamp(22px,5vw,76px);bottom:30px;display:flex;align-items:flex-end;gap:11px}
.hero-thumb{position:relative;width:67px;height:67px;flex:0 0 67px;padding:3px;border:1px solid rgba(205,215,237,.24);border-radius:9px;background:rgba(8,10,28,.78);opacity:.63;cursor:pointer;transition:opacity .2s ease,border-color .2s ease,transform .2s ease,filter .2s ease;filter:saturate(.75)}
.hero-thumb:hover{opacity:.9;transform:translateY(-3px)}
.hero-thumb.is-active{border:2px solid #fff;opacity:1;filter:none;transform:translateY(-3px)}
.hero-thumb img{display:block;width:100%;height:100%;object-fit:cover;border-radius:5px}
.hero-thumb-track{position:absolute;left:0;right:0;bottom:-7px;height:2px;overflow:hidden;border-radius:2px;background:rgba(225,231,243,.35)}
.hero-thumb-progress{display:block;width:0;height:100%;background:#c7ccd7}
.hero-thumb.is-active .hero-thumb-track{background:rgba(255,255,255,.26)}
.hero-thumb.is-active .hero-thumb-progress{background:#fff;animation:hero-thumb-timer 7.2s linear both}
@keyframes hero-image-in{from{opacity:.35}to{opacity:1}}
@keyframes hero-copy-in{from{opacity:.3;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-thumb-timer{from{width:0}to{width:100%}}
@media(max-width:760px){.home-page>.hero-panel{min-height:650px;padding:54px 22px 145px;align-items:flex-start}.home-page>.hero-panel .hero-copy{width:min(100%,560px)}.home-page>.hero-panel .hero-copy h1{max-width:520px;font-size:clamp(38px,9vw,58px)}.home-page>.hero-panel .hero-copy>p{max-width:420px;font-size:13px}.hero-shade{background:linear-gradient(90deg,rgba(8,10,30,.92),rgba(8,10,30,.56) 76%,rgba(8,10,30,.35)),linear-gradient(0deg,rgba(8,10,30,.94),transparent 48%)}.hero-thumbnails{right:18px;left:18px;bottom:29px;justify-content:flex-end;gap:8px}.hero-thumb{width:52px;height:52px;flex-basis:52px}}
@media(max-width:430px){.home-page>.hero-panel{min-height:680px;padding:44px 18px 132px}.hero-thumbnails{right:14px;left:14px;gap:6px}.hero-thumb{width:46px;height:46px;flex-basis:46px;padding:2px}.home-page>.hero-panel .hero-copy h1{font-size:38px}.home-page>.hero-panel .hero-copy>p{max-width:100%}}
@media(prefers-reduced-motion:reduce){.hero-background,.home-page>.hero-panel .hero-copy,.hero-thumb.is-active .hero-thumb-progress{animation:none}}

/* Mobile hero refinements: responsive art framing, readable copy, and scrollable thumbs. */
@media(max-width:768px){
  .home-page>.hero-panel{min-height:700px;padding:42px 20px 150px;align-items:flex-start}
  .hero-background{object-fit:cover;object-position:65% top;filter:none;transform:none;image-rendering:auto}
  .hero-shade{background:linear-gradient(90deg,rgba(5,7,20,.97) 0%,rgba(5,7,20,.91) 48%,rgba(5,7,20,.72) 100%),linear-gradient(0deg,rgba(5,7,20,.97) 0%,rgba(5,7,20,.42) 68%,rgba(5,7,20,.3) 100%)}
  .home-page>.hero-panel .hero-copy{width:100%;max-width:600px}
  .home-page>.hero-panel .hero-copy h1{max-width:100%;margin:16px 0 10px;font-size:clamp(32px,7vw,48px);line-height:1.08;letter-spacing:-1.5px;overflow-wrap:anywhere}
  .home-page>.hero-panel .hero-copy>p{max-width:100%;margin:13px 0 18px;font-size:14px;line-height:1.55}
  .hero-actions{width:min(100%,340px);align-items:stretch;flex-direction:column;gap:9px}
  .hero-actions>button{min-height:42px;justify-content:center}
  .hero-thumbnails{right:0;left:0;bottom:26px;width:100%;max-width:100%;justify-content:flex-start;gap:9px;overflow-x:auto;overflow-y:hidden;padding:6px 20px 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  .hero-thumbnails::-webkit-scrollbar{display:none}
  .hero-thumb{width:52px;height:52px;flex:0 0 52px;padding:2px;filter:none;backface-visibility:hidden}
  .hero-thumb img{display:block;width:100%;height:100%;object-fit:cover;image-rendering:auto;backface-visibility:hidden}
}
@media(max-width:430px){
  .home-page>.hero-panel{min-height:720px;padding:36px 20px 140px}
  .home-page>.hero-panel .hero-copy h1{font-size:34px}
  .hero-thumbnails{bottom:22px;gap:8px;padding-right:20px;padding-left:20px}
  .hero-thumb{width:46px;height:46px;flex-basis:46px}
}

/* Dedicated mobile storefront hero layout (desktop carousel remains unchanged). */
.hero-mobile-layout{display:none}
@media(max-width:768px){
  body,.app-shell,.home-page{background:var(--bg)!important}
  .home-page>.hero-panel{display:block!important;min-height:0!important;height:auto;padding:0!important;margin:0!important;overflow:hidden;background:var(--bg)!important;border:0!important;border-radius:0!important}
  .home-page>.hero-panel>.hero-background,.home-page>.hero-panel>.hero-shade,.home-page>.hero-panel>.hero-copy,.home-page>.hero-panel>.hero-thumbnails{display:none!important}
  .hero-mobile-layout{display:block;background:var(--bg)}
  .hero-mobile-image{position:relative;width:100%;height:48svh;min-height:300px;max-height:480px;overflow:hidden;background:var(--bg)}
  .hero-mobile-image>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:none;animation:hero-image-in .45s ease both}
  .hero-mobile-image-shade{position:absolute;inset:0;background:linear-gradient(to top,#070a18 0%,rgba(7,10,24,.86) 15%,rgba(7,10,24,.16) 62%,rgba(7,10,24,.08) 100%)}
  .hero-mobile-image h1{position:absolute;left:20px;right:20px;bottom:17px;margin:0;color:#fff;font:800 clamp(27px,8vw,39px)/1.08 Archivo,system-ui,sans-serif;letter-spacing:-.8px;text-shadow:0 2px 15px rgba(0,0,0,.42);animation:hero-copy-in .4s ease both}
  .hero-mobile-details{display:flex;align-items:center;gap:12px;padding:14px 18px 13px;background:var(--bg)}
  .hero-mobile-icon{display:block;width:54px;height:54px;flex:0 0 54px;border-radius:13px;object-fit:cover;background:#14182c}
  .hero-mobile-meta{display:flex;flex:1;min-width:0;flex-direction:column;justify-content:center;gap:6px}
  .hero-mobile-tags{display:flex;align-items:center;gap:7px;min-width:0}
  .hero-mobile-tags>span{color:#f3f4fa;font-size:13px;font-weight:650;line-height:1.1}
  .hero-mobile-tags>span+span{padding:3px 6px;border:1px solid rgba(255,184,67,.72);border-radius:4px;color:#ffb843;font-size:10px;font-weight:700}
  .hero-mobile-rating{display:flex;align-items:center;min-height:15px;color:#ffbd46;font-size:12px}
  .hero-mobile-get{flex:0 0 auto;min-width:88px;min-height:39px;padding:0 18px;border:0;border-radius:999px;background:#ffb843;color:#151321;font-size:14px;font-weight:800;box-shadow:0 4px 15px rgba(255,184,67,.2)}
  .hero-mobile-get:active{transform:scale(.97)}
  .hero-mobile-dashes{display:flex;align-items:center;gap:5px;width:100%;padding:2px 18px 15px;background:var(--bg)}
  .hero-mobile-dash{position:relative;display:block;flex:1;min-width:0;height:4px;padding:0;overflow:hidden;border:0;border-radius:99px;background:#414354;cursor:pointer}
  .hero-mobile-dash.is-active{background:#fff}
  .hero-mobile-dash:focus-visible{outline:2px solid #ffb843;outline-offset:3px}
  .trending-section,.shelf-section,.catalog-note,.site-footer{background-color:var(--bg)}
}
@media(prefers-reduced-motion:reduce){.hero-mobile-image>img,.hero-mobile-image h1{animation:none}}

/* Native-style mobile navigation and final mobile sizing; preserve dark/gold theme. */
.mobile-bottom-nav{display:none}
@media(max-width:768px){
  .mobile-bottom-nav{position:fixed;z-index:80;right:0;bottom:0;left:0;display:flex;justify-content:space-around;align-items:center;min-height:calc(66px + env(safe-area-inset-bottom));padding:7px 14px calc(7px + env(safe-area-inset-bottom));border-top:1px solid rgba(194,205,230,.12);background:rgba(8,11,24,.86);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%)}
  .mobile-bottom-nav__item{display:flex;min-width:82px;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:4px 8px;border:0;background:transparent;color:#8993aa;font:500 10px/1.1 Archivo,system-ui,sans-serif;cursor:pointer;transition:color .2s ease,transform .2s ease}
  .mobile-bottom-nav__item svg{width:21px;height:21px;display:block}
  .mobile-bottom-nav__item.is-current{color:var(--accent)}
  .mobile-bottom-nav__item:active{transform:scale(.96)}
  body,.app-shell{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .site-footer{margin-bottom:0;padding-bottom:calc(12px + env(safe-area-inset-bottom))}
  .home-page>.hero-panel{padding-bottom:0!important}
  .hero-mobile-image{object-fit:cover;object-position:center 40%}
  .hero-mobile-image>img{object-fit:cover;object-position:center 40%;filter:none}
  .hero-mobile-image h1{font-size:clamp(28px,7vw,34px);line-height:1.08;letter-spacing:-.6px}
  .hero-mobile-details{padding:13px 18px 12px}
  .hero-mobile-get{min-width:92px;min-height:42px;font-size:14px}
  .hero-mobile-dashes{gap:6px;padding-bottom:14px}
  .hero-mobile-dash{height:3px;background:rgba(201,208,224,.28);transition:background-color .28s ease,transform .28s ease,box-shadow .28s ease}
  .hero-mobile-dash.is-active{background:var(--accent);box-shadow:0 0 8px color-mix(in srgb,var(--accent) 38%,transparent);transform:scaleY(1.15)}
  .home-page{padding-bottom:calc(86px + env(safe-area-inset-bottom))}
  .home-page>.hero-panel{margin-bottom:0!important}
}


/* Mobile header: replace hamburger with a compact theme toggle. */
@media(max-width:768px){
  .mobile-menu-toggle,.mobile-menu-layer{display:none!important}
  .mobile-theme-toggle{display:inline-grid;place-items:center;flex:0 0 38px;width:38px;height:38px;margin-left:auto;border:1px solid var(--border-strong);border-radius:12px;background:color-mix(in srgb,var(--surface) 78%,transparent);color:var(--text);box-shadow:0 4px 14px rgba(0,0,0,.14)}
  .mobile-theme-toggle:hover{border-color:var(--accent);color:var(--accent)}
  .header-inner{gap:10px}
  .home-page,.hero-mobile-layout,.hero-mobile-details,.hero-mobile-dashes,.trending-section,.shelf-section,.catalog-note,.site-footer{background-color:var(--bg)}
  .hero-mobile-tags>span{color:var(--text)}
}

/* Rounded hero artwork and theme-matched app icon finish. */
@media(min-width:769px){
  .home-page>.hero-panel{width:min(1450px,calc(100% - 48px));margin:24px auto 0;border:1px solid var(--border);border-radius:20px}
  .home-page>.hero-panel .hero-shade{background:linear-gradient(90deg,rgba(7,10,24,.96) 0%,rgba(7,10,24,.86) 31%,rgba(7,10,24,.5) 66%,rgba(7,10,24,.18) 100%),radial-gradient(ellipse at 77% 24%,rgba(86,113,255,.2),transparent 46%),radial-gradient(ellipse at 64% 78%,rgba(177,70,149,.12),transparent 53%)}
}
@media(max-width:768px){
  .hero-mobile-image{width:calc(100% - 32px);height:48svh;min-height:300px;max-height:480px;margin:14px auto 0;border:1px solid var(--border);border-radius:20px;overflow:hidden;box-shadow:0 12px 32px rgba(0,0,0,.22)}
  .hero-mobile-image>img{border-radius:inherit;object-fit:cover;object-position:center 40%;filter:none}
  .hero-mobile-image-shade{background:linear-gradient(to top,rgba(7,10,24,.97) 0%,rgba(7,10,24,.82) 20%,rgba(7,10,24,.25) 64%,rgba(7,10,24,.08) 100%),radial-gradient(ellipse at 76% 23%,rgba(79,111,255,.22),transparent 48%),radial-gradient(ellipse at 38% 58%,rgba(199,72,145,.14),transparent 58%),linear-gradient(130deg,rgba(20,45,108,.18),transparent 55%)}
  .hero-mobile-icon{box-sizing:border-box;border:5px solid var(--bg);border-radius:24px;box-shadow:inset 0 1px 4px rgba(255,255,255,.12),0 6px 16px rgba(0,0,0,.28)}
}


/* GameTron AppRocket proportion polish: layout-only, theme-preserving overrides. */
.site-header .header-inner{width:min(1440px,calc(100% - 32px));height:54px;min-height:54px;align-items:center;gap:16px}
.home-page{width:min(100%,1500px);max-width:1500px;margin-inline:auto;overflow-x:clip}
.home-page .section-title-wrap h2{font-size:22px;line-height:1.2;font-weight:700}
.home-page .section-heading{margin-bottom:14px;gap:12px}
.home-page .section-title-wrap p{margin:4px 0 0;line-height:1.35}
.home-page>.trending-section,.home-page>.shelf-section,.home-page>.catalog-note{width:min(1450px,calc(100% - 40px));margin-left:auto;margin-right:auto}
.home-page>.trending-section{margin-top:30px}
.home-page>.shelf-section{margin-top:30px}
.home-page>.shelf-section .item-rail{display:flex;grid-template-columns:none;gap:16px;overflow-x:auto;overflow-y:hidden;padding:2px 1px 14px;scroll-snap-type:x mandatory;scrollbar-width:none}
.home-page>.shelf-section .item-rail::-webkit-scrollbar{display:none}
.home-page>.shelf-section .item-card-compact{flex:0 0 calc((100% - 60px)/3);scroll-snap-align:start}
.home-page>.shelf-section .card-content,.detail-page>.shelf-section .card-content,.library-page .catalog-grid .card-content{grid-template-rows:auto auto}
.home-page>.shelf-section .get-button-small,.detail-page>.shelf-section .get-button-small,.library-page .catalog-grid .get-button-small{grid-row:1/3}
.item-card .source-badge,.item-card .card-stats{display:none!important}
@media(min-width:769px){
  .site-header .mobile-theme-toggle{display:none!important}
  .home-page>.hero-panel{width:min(1450px,calc(100% - 40px))}
}
@media(min-width:769px) and (max-width:1060px){
  .home-page>.shelf-section .item-card-compact{flex-basis:calc((100% - 16px)/2)}
}
@media(max-width:768px){
  .site-header .header-inner{width:calc(100% - 32px);height:54px;min-height:54px;gap:10px}
  .home-page{width:100%;max-width:none;margin:0 auto;padding-bottom:calc(60px + env(safe-area-inset-bottom))}
  .home-page>.trending-section,.home-page>.shelf-section,.home-page>.catalog-note{width:calc(100% - 32px)}
  .home-page>.trending-section{margin-top:26px}
  .home-page>.shelf-section{margin-top:28px}
  .hero-mobile-layout{display:flex!important;flex-direction:column;width:100%}
  .hero-mobile-image{order:1;width:calc(100% - 32px);height:auto!important;aspect-ratio:1.6/1;min-height:0;max-height:none;margin:12px auto 0;border-radius:20px}
  .hero-mobile-image>img{width:100%;height:100%;object-fit:cover;object-position:center 40%;border-radius:inherit}
  .hero-mobile-image h1{left:16px;right:16px;bottom:16px}
  .hero-mobile-dashes{order:2;width:100%;gap:6px;padding:10px 16px 12px;box-sizing:border-box}
  .hero-mobile-details{order:3;gap:12px;padding:12px 16px}
  .home-page>.shelf-section .item-rail{display:flex;grid-template-columns:none;gap:14px;overflow-x:auto;overflow-y:hidden;padding:2px 1px 12px;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain}
  .home-page>.shelf-section .item-rail::-webkit-scrollbar{display:none}
  .home-page>.shelf-section .item-card-compact{flex:0 0 100%;scroll-snap-align:start}
  .home-page .trend-number{-webkit-text-stroke-color:rgba(210,218,255,.2)}
  .mobile-bottom-nav{height:calc(54px + env(safe-area-inset-bottom));min-height:0;padding:4px 14px calc(4px + env(safe-area-inset-bottom));box-sizing:border-box}
  .mobile-bottom-nav__item{min-width:0;gap:3px;padding:3px 6px;white-space:nowrap}
  body,.app-shell{padding-bottom:calc(60px + env(safe-area-inset-bottom))}
}


/* Final responsive corrections from visual review. */
@media(min-width:761px) and (max-width:768px){.site-header .mobile-theme-toggle{display:none!important}}
@media(max-width:768px){.hero-mobile-image{height:calc((100vw - 32px)/1.6)!important;aspect-ratio:1.6/1}}
@media(min-width:769px){.home-page .trend-number{-webkit-text-stroke-color:rgba(210,218,255,.12)}}

@media(max-width:768px){.hero-mobile-image{height:calc(62.5vw - 20px)!important}}

/* Mobile Discover: keep every New games/New apps row in the visible page list. */
@media(max-width:768px){
.home-page>.shelf-section .item-rail{display:grid;grid-template-columns:minmax(0,1fr);gap:0;overflow:visible;padding:0 1px 12px;scroll-snap-type:none}
.home-page>.shelf-section .item-card-compact{flex:none;width:100%;scroll-snap-align:none}
}

/* Get buttons: one-second pending spinner overlay; preserve existing button geometry. */
.get-button-content{display:contents}
.get-button.is-loading,.get-button-small.is-loading,.hero-mobile-get.is-loading{position:relative}
.get-button.is-loading .get-button-content,.get-button-small.is-loading .get-button-content,.hero-mobile-get.is-loading .get-button-content{visibility:hidden}
.get-button-spinner{position:absolute;top:50%;left:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;box-sizing:border-box;animation:get-button-spin .75s linear infinite;pointer-events:none}
@keyframes get-button-spin{to{transform:rotate(360deg)}}


/* App details page: image-derived CTA and light-mode polish. */
:root[data-theme=light]{--bg:#FFFFFF;--text:#111111;background-color:#FFFFFF;color:#111111}
:root[data-theme=light] body{background-color:#FFFFFF;color:#111111}
:root[data-theme=light] .detail-page{box-sizing:border-box;padding-inline:12px;background-color:#FFFFFF;color:#111111}
:root[data-theme=light] .detail-banner{border-radius:24px;overflow:hidden}
:root[data-theme=light] .detail-icon{position:relative;z-index:3;padding:0;border:6px solid #FFFFFF;border-radius:20px;background:#FFFFFF;box-shadow:0 10px 24px rgba(17,17,17,.16);transform:translateY(-28px)}
:root[data-theme=light] .detail-icon img{border-radius:12px}


/* Mobile light-mode floating layout: keep the current slide data and interactions. */
@media (max-width: 768px) {
  .home-page { padding-top: 55px !important; padding-bottom: calc(100px + env(safe-area-inset-bottom)); }
  .hero-mobile-layout {
    display: flex !important;
    flex-direction: column;
    width: calc(100% - 24px);
    margin: 14px auto 0;
    position: relative;
    z-index: 1;
    overflow: hidden;
    border-radius: 24px;
  }
  .hero-mobile-eyebrow {
    order: 0;
    padding: 12px 16px 7px;
    font: 700 10px/1.2 Archivo, system-ui, sans-serif;
    letter-spacing: .15em;
    text-transform: uppercase;
  }
  .hero-mobile-image {
    order: 1;
    width: 100%;
    height: calc(62.5vw - 15px) !important;
    aspect-ratio: 1.6 / 1;
    min-height: 0;
    max-height: none;
    margin: 0;
    border-radius: 24px 24px 0 0;
    overflow: hidden;
  }
  .hero-mobile-image > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 40%;
    border-radius: inherit;
  }
  .hero-mobile-image h1 { left: 16px; right: 16px; bottom: 16px; z-index: 2; }
  .hero-mobile-details {
    order: 2;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
  }
  .hero-mobile-meta { min-width: 0; flex: 1; }
  .hero-mobile-tags { min-width: 0; flex-wrap: nowrap; }
  .hero-mobile-tags span:first-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .hero-mobile-dashes { order: 3; width: 100%; gap: 6px; padding: 9px 14px 13px; box-sizing: border-box; }
  .home-page > .trending-section { margin-top: 32px !important; }
  .home-page > .shelf-section { margin-top: 30px !important; }
  .mobile-bottom-nav {
    left: 50%; right: auto;
    bottom: calc(10px + env(safe-area-inset-bottom));
    width: calc(100% - 24px); max-width: 420px;
    height: 62px; min-height: 62px;
    padding: 5px 12px;
    box-sizing: border-box;
    transform: translateX(-50%);
    border-radius: 50px;
  }
  .mobile-bottom-nav__item { min-width: 0; flex: 1; }
  body, .app-shell { padding-bottom: calc(100px + env(safe-area-inset-bottom)); }
  body.mobile-search-open .site-header .header-actions {
    display: flex !important;
    position: fixed;
    z-index: 120;
    top: 63px; left: 12px; right: 12px;
    margin: 0; gap: 0;
  }
  body.mobile-search-open .site-header .header-actions > .icon-button { display: none !important; }
  body.mobile-search-open .site-header .search-box {
    display: flex !important;
    width: 100% !important; max-width: none !important; height: 44px;
    flex: 1; border-radius: 14px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .14);
  }
  body.mobile-search-open .site-header .search-box input {
    display: block !important; width: auto !important; min-width: 0;
    flex: 1; padding: 0 !important; opacity: 1 !important;
  }
}

:root[data-theme="light"] body,
:root[data-theme="light"] .app-shell,
:root[data-theme="light"] .home-page {
  background-color: #FFFFFF !important;
  color: #111111;
}
:root[data-theme="light"] .site-header {
  background: rgba(255, 255, 255, .96);
  color: #111111;
  border-bottom: 1px solid rgba(17, 17, 17, .08);
  box-shadow: 0 3px 14px rgba(17, 17, 17, .05);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
:root[data-theme="light"] .hero-mobile-layout {
  background: #FFFFFF;
  border: 1px solid rgba(17, 17, 17, .08);
  box-shadow: 0 12px 32px rgba(17, 17, 17, .08);
}
:root[data-theme="light"] .hero-mobile-eyebrow { color: rgba(17, 17, 17, .56); }
:root[data-theme="light"] .hero-mobile-details { background: #FFFFFF; color: #111111; }
:root[data-theme="light"] .hero-mobile-icon {
  border: 3px solid #FFFFFF;
  border-radius: 16px;
  box-shadow: 0 3px 12px rgba(17, 17, 17, .1);
}
:root[data-theme="light"] .mobile-bottom-nav {
  background: rgba(255, 255, 255, .8);
  border: 1px solid rgba(17, 17, 17, .08);
  border-radius: 50px;
  box-shadow: 0 8px 28px rgba(17, 17, 17, .14);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
:root[data-theme="light"] .mobile-bottom-nav__item { color: rgba(17, 17, 17, .68); }
:root[data-theme="light"] .mobile-bottom-nav__item.is-current { color: var(--accent); }
:root[data-theme="light"] .home-page .trending-rail > .trending-item:nth-child(-n+3) > .trend-number {
  left: 2px;
  bottom: -18px;
  z-index: 0;
  color: transparent;
  opacity: .9;
  font-size: 82px;
  line-height: 1;
  -webkit-text-stroke: 1px rgba(17, 17, 17, .16);
}
:root[data-theme="light"] .home-page .trending-rail > .trending-item:nth-child(-n+3) > img,
:root[data-theme="light"] .home-page .trending-rail > .trending-item:nth-child(-n+3) > .trending-copy,
:root[data-theme="light"] .home-page .trending-rail > .trending-item:nth-child(-n+3) > .trend-arrow {
  position: relative;
  z-index: 1;
}
@media (max-width: 768px) {
  :root[data-theme="light"] .mobile-bottom-nav__item { gap: 4px; padding: 4px 5px; }
  :root[data-theme="light"] body.mobile-search-open .site-header .search-box {
    background: #FFFFFF; color: #111111; border-color: rgba(17, 17, 17, .14);
  }
  :root[data-theme="light"] body.mobile-search-open .site-header .search-box input { color: #111111; }
  :root[data-theme="light"] .home-page > .trending-section { margin-top: 34px !important; }
}


/* Keep the expanded mobile Search field below the fixed header. */
@media (max-width: 768px) {
  body.mobile-search-open .site-header .header-actions .search-box {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    flex: 1 1 auto;
  }
  :root[data-theme="light"],
  :root[data-theme="light"] body,
  :root[data-theme="light"] .app-shell,
  :root[data-theme="light"] .home-page {
    background-color: #FFFFFF !important;
  }
}


/* Mobile-only full-screen Search overlay; no underlying page styles are changed. */
.mobile-search-overlay{display:none}
@media(max-width:768px){
  .mobile-search-overlay{position:fixed;inset:0;z-index:2000;display:flex;flex-direction:column;align-items:stretch;gap:22px;box-sizing:border-box;overflow:hidden;padding:calc(18px + env(safe-area-inset-top)) 16px calc(18px + env(safe-area-inset-bottom));background:#0B0F19;color:#FFFFFF}
  .mobile-search-overlay__bar{position:relative;display:flex;flex:0 0 auto;align-items:center;gap:12px;width:100%;min-height:60px;box-sizing:border-box;padding:0 14px 0 18px;border:2px solid var(--accent,#F2B42D);border-radius:30px;background:#171D2A;box-shadow:0 0 0 3px rgba(242,180,45,.12)}
  .mobile-search-overlay__bar>svg{flex:0 0 auto;color:var(--accent,#F2B42D)}
  .mobile-search-overlay__bar input{flex:1;min-width:0;height:48px;padding:0;border:0;outline:0;background:transparent;color:#FFFFFF;font-family:inherit;font-size:16px;font-weight:500;line-height:1.2}
  .mobile-search-overlay__bar input::placeholder{color:#9AA3B5;opacity:1}
  .mobile-search-overlay__bar input::-webkit-search-cancel-button{-webkit-appearance:none}
  .mobile-search-overlay__close{display:grid;flex:0 0 34px;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:50%;background:transparent;color:#FFFFFF;cursor:pointer}
  .mobile-search-overlay__close svg{display:block}
  .mobile-search-overlay__submit{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .mobile-search-overlay__popular{flex:0 1 auto;min-height:0}
  .mobile-search-overlay__popular h2{margin:0 0 10px;color:#929BAD;font-family:inherit;font-size:14px;font-weight:600;line-height:1.3;letter-spacing:.01em}
  .mobile-search-overlay__list{max-height:calc(100vh - 230px);max-height:calc(100dvh - 230px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}
  .mobile-search-overlay__list::-webkit-scrollbar{display:none}
  .mobile-search-result{display:flex;align-items:center;gap:11px;min-height:80px;box-sizing:border-box;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.08)}
  .mobile-search-result__icon{display:block;flex:0 0 54px;width:54px;height:54px;object-fit:cover;border-radius:15px;background:#171D2A}
  .mobile-search-result__copy{flex:1;min-width:0;align-self:center}
  .mobile-search-result__title{display:block;overflow:hidden;color:#FFFFFF;font-family:inherit;font-size:14px;font-weight:700;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
  .mobile-search-result__tags{display:flex;align-items:center;gap:6px;margin-top:4px}
  .mobile-search-result__tags span{display:inline-flex;align-items:center;min-height:17px;padding:1px 6px;border:1px solid rgba(255,255,255,.10);border-radius:999px;color:#AEB6C6;font-family:inherit;font-size:9px;font-weight:500;line-height:1.2}
  .mobile-search-result__rating{margin-top:4px;color:var(--accent,#F2B42D);font-size:11px;line-height:1}
  .mobile-search-result__get{display:grid;flex:0 0 64px;place-items:center;width:64px;height:36px;padding:0 12px;border:0;border-radius:999px;background:var(--accent,#F2B42D);color:#0B0F19;font-family:inherit;font-size:12px;font-weight:700;line-height:1;cursor:pointer}
  .mobile-search-result__get:disabled{opacity:.72;cursor:wait}
  .mobile-search-result__spinner{width:16px;height:16px;box-sizing:border-box;border:2px solid rgba(11,15,25,.25);border-top-color:#0B0F19;border-radius:50%;animation:mobile-search-spin .7s linear infinite}
  .mobile-search-overlay__empty{margin:8px 0;color:#AEB6C6;font-size:14px}
}
@keyframes mobile-search-spin{to{transform:rotate(360deg)}}


/* Mobile Discover shelves: two-column cards with a separate swipeable art rail. */
.mobile-shelf-carousel,.mobile-card-tags{display:none}
@media(max-width:768px){
  .home-page>.shelf-section .shelf-wrap{display:grid;grid-template-columns:minmax(0,1fr) clamp(76px,24vw,92px);column-gap:10px;align-items:start;width:100%;overflow:visible}
  .home-page>.shelf-section .rail-arrow{display:none!important}
  .home-page>.shelf-section .item-rail{grid-column:1;grid-row:1;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;min-width:0;overflow:visible;padding:0;scroll-snap-type:none}
  .home-page>.shelf-section .item-card-compact{display:flex;flex:0 0 auto;flex-direction:column;gap:7px;width:auto!important;min-width:0;min-height:112px;padding:8px;scroll-snap-align:none}
  .home-page>.shelf-section .item-card-compact .card-art-button{display:block;flex:0 0 40px;width:40px;height:40px;overflow:hidden;border-radius:11px}
  .home-page>.shelf-section .item-card-compact .card-art{display:grid;width:40px;height:40px;padding:0;overflow:hidden;border-radius:11px;background:var(--surface-2)}
  .home-page>.shelf-section .item-card-compact .card-art img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
  .home-page>.shelf-section .item-card-compact .source-badge{display:none}
  .home-page>.shelf-section .item-card-compact .card-content{display:grid;grid-template-columns:minmax(0,1fr) 44px;grid-template-areas:"title title" "tags tags" "rating get";align-items:center;gap:4px;min-width:0;padding:0}
  .home-page>.shelf-section .item-card-compact .card-title-row{grid-area:title;display:flex;align-items:flex-start;justify-content:space-between;gap:3px;min-width:0}
  .home-page>.shelf-section .item-card-compact .card-title{min-width:0;min-height:0;font-size:11px;line-height:1.2;-webkit-line-clamp:2;overflow-wrap:anywhere}
  .home-page>.shelf-section .item-card-compact .save-button{flex:0 0 18px;width:18px;height:18px;padding:1px}
  .home-page>.shelf-section .mobile-card-tags{grid-area:tags;display:flex;flex-wrap:wrap;gap:3px;max-height:24px;min-width:0;overflow:hidden}
  .home-page>.shelf-section .mobile-card-tags span{display:inline-flex;align-items:center;min-height:15px;padding:2px 5px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text-muted);font-size:8px;line-height:1;white-space:nowrap}
  .home-page>.shelf-section .item-card-compact .card-rating{grid-area:rating;display:flex;align-items:center;min-width:0;margin:0}
  .home-page>.shelf-section .item-card-compact .card-stats{display:none!important}
  .home-page>.shelf-section .item-card-compact .get-button-small{grid-area:get;justify-self:end;width:44px;min-height:25px;height:25px;margin:0;padding:0 5px;border-radius:999px;font-size:9px;line-height:1;box-shadow:none}
  .home-page>.shelf-section .item-card-compact .get-button-small .get-button-content>svg{display:none}
  .home-page>.shelf-section .mobile-shelf-carousel{grid-column:2;grid-row:1;display:flex;gap:8px;width:100%;height:152px;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none}
  .home-page>.shelf-section .mobile-shelf-carousel::-webkit-scrollbar{display:none}
  .home-page>.shelf-section .mobile-shelf-banner{position:relative;display:block;flex:0 0 110px;width:110px;height:144px;overflow:hidden;padding:0;border:1px solid var(--border);border-radius:15px;background:var(--surface-2);color:var(--text);text-align:left;scroll-snap-align:start}
  .home-page>.shelf-section .mobile-shelf-banner img{display:block;width:100%;height:100%;object-fit:cover}
  .home-page>.shelf-section .mobile-shelf-banner:after{position:absolute;inset:35% 0 0;content:"";background:linear-gradient(180deg,transparent,rgba(0,0,0,.78))}
  .home-page>.shelf-section .mobile-shelf-banner span{position:absolute;z-index:1;right:6px;bottom:7px;left:6px;display:-webkit-box;overflow:hidden;color:#fff;font-size:9px;font-weight:700;line-height:1.15;text-shadow:0 1px 4px rgba(0,0,0,.75);-webkit-box-orient:vertical;-webkit-line-clamp:2}
}


/* Full-height Search overlay follows the active global theme. */
@media(max-width:768px){
  .mobile-search-overlay{height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;background:var(--bg);color:var(--text)}
  .mobile-search-overlay__bar{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--border-strong)}
  .mobile-search-overlay__bar>svg{color:var(--accent)}
  .mobile-search-overlay__bar input{color:var(--text)}
  .mobile-search-overlay__bar input::placeholder{color:var(--text-muted)}
  .mobile-search-overlay__close{color:var(--text)}
  .mobile-search-overlay__popular{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}
  .mobile-search-overlay__popular h2{color:var(--text-muted)}
  .mobile-search-overlay__list{flex:1 1 auto;min-height:0;max-height:none}
  .mobile-search-result{border-bottom-color:var(--border)}
  .mobile-search-result__icon{background:var(--surface-2)}
  .mobile-search-result__title{color:var(--text)}
  .mobile-search-result__tags span{border-color:var(--border);color:var(--text-muted)}
  .mobile-search-result__rating{color:var(--accent)}
  .mobile-search-result__get{background:var(--accent);color:var(--bg)}
  .mobile-search-result__spinner{border-color:var(--border-strong);border-top-color:var(--bg)}
  .mobile-search-overlay__empty{color:var(--text-muted)}
}


/* App details hero refinement: theme-aware icons and text with a slim app-icon cutout. */
body:has(.detail-page) .site-header button[aria-label*="Search" i],
body:has(.detail-page) .site-header button[aria-label*="Share" i],
body:has(.detail-page) .site-header button[aria-label*="mode" i],
body:has(.detail-page) .site-header .search-button,
body:has(.detail-page) .site-header .share-button,
body:has(.detail-page) .site-header .theme-toggle,
.detail-page button[aria-label*="Search" i],
.detail-page button[aria-label*="Share" i],
.detail-page button[aria-label*="mode" i],
.detail-page .search-button,
.detail-page .share-button,
.detail-page .theme-toggle{
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  color:var(--text)!important;
}
.detail-page .detail-icon{
  border:2px solid var(--border-strong)!important;
  background:var(--surface)!important;
  box-shadow:0 7px 18px rgba(0,0,0,.18);
}
:root[data-theme=light] .detail-page .detail-icon{
  border:2px solid var(--border-strong)!important;
  background:var(--surface)!important;
  box-shadow:0 7px 18px rgba(23,34,53,.12);
}
.detail-page .detail-title h1,
.detail-page .detail-tags span{color:var(--text)!important}
.detail-page .detail-actions .get-button{
  flex:1 1 auto;
  width:100%;
  min-width:98px;
  box-sizing:border-box;
  padding-inline:18px;
}
@media(max-width:768px){
  .detail-page .detail-actions .get-button{min-width:0}
}


/* App detail icon color correction: explicit dark/light contrast for header controls. */
:root:not([data-theme=light]) body:has(.detail-page) .site-header button[aria-label*="Search" i],
:root:not([data-theme=light]) body:has(.detail-page) .site-header button[aria-label*="Share" i],
:root:not([data-theme=light]) body:has(.detail-page) .site-header button[aria-label*="mode" i],
:root:not([data-theme=light]) body:has(.detail-page) .site-header .search-box svg,
:root:not([data-theme=light]) body:has(.detail-page) .site-header .search-button,
:root:not([data-theme=light]) body:has(.detail-page) .site-header .share-button,
:root:not([data-theme=light]) body:has(.detail-page) .site-header .theme-toggle,
:root:not([data-theme=light]) .detail-page button[aria-label*="Search" i],
:root:not([data-theme=light]) .detail-page button[aria-label*="Share" i],
:root:not([data-theme=light]) .detail-page button[aria-label*="mode" i],
:root:not([data-theme=light]) .detail-page .search-button,
:root:not([data-theme=light]) .detail-page .share-button,
:root:not([data-theme=light]) .detail-page .theme-toggle{color:#FFFFFF!important}
:root[data-theme=light] body:has(.detail-page) .site-header button[aria-label*="Search" i],
:root[data-theme=light] body:has(.detail-page) .site-header button[aria-label*="Share" i],
:root[data-theme=light] body:has(.detail-page) .site-header button[aria-label*="mode" i],
:root[data-theme=light] body:has(.detail-page) .site-header .search-box svg,
:root[data-theme=light] body:has(.detail-page) .site-header .search-button,
:root[data-theme=light] body:has(.detail-page) .site-header .share-button,
:root[data-theme=light] body:has(.detail-page) .site-header .theme-toggle,
:root[data-theme=light] .detail-page button[aria-label*="Search" i],
:root[data-theme=light] .detail-page button[aria-label*="Share" i],
:root[data-theme=light] .detail-page button[aria-label*="mode" i],
:root[data-theme=light] .detail-page .search-button,
:root[data-theme=light] .detail-page .share-button,
:root[data-theme=light] .detail-page .theme-toggle{color:#111111!important}


/* Search overlay coverage and theme states: keep the entire mobile viewport themed. */
@media(max-width:768px){
  .mobile-search-overlay{
    width:100vw;
    height:100vh;
    min-height:100vh;
    height:100dvh;
    min-height:100dvh;
    background:#0B0F19;
    color:#FFFFFF;
  }
  .mobile-search-overlay__popular{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}
  .mobile-search-overlay__list{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto}
  :root[data-theme="light"] .mobile-search-overlay{background:#FFFFFF;color:#111111}
  :root[data-theme="light"] .mobile-search-overlay__bar{background:#F3F4F6;border-color:var(--accent,#D99B22);box-shadow:0 0 0 3px rgba(17,24,39,.08)}
  :root[data-theme="light"] .mobile-search-overlay__bar input{color:#111111}
  :root[data-theme="light"] .mobile-search-overlay__bar input::placeholder{color:#6B7280}
  :root[data-theme="light"] .mobile-search-overlay__close{color:#111111}
  :root[data-theme="light"] .mobile-search-overlay__popular h2{color:#6B7280}
  :root[data-theme="light"] .mobile-search-result{border-bottom-color:rgba(17,24,39,.10)}
  :root[data-theme="light"] .mobile-search-result__icon{background:#F3F4F6}
  :root[data-theme="light"] .mobile-search-result__title{color:#111111}
  :root[data-theme="light"] .mobile-search-result__tags span{border-color:rgba(17,24,39,.14);color:#5B6472}
  :root[data-theme="light"] .mobile-search-overlay__empty{color:#5B6472}
}


/* Top icon contrast: match the active theme without adding button chrome. */
:root:not([data-theme="light"]) .site-header button[aria-label*="Search" i],
:root:not([data-theme="light"]) .site-header button[aria-label*="Share" i],
:root:not([data-theme="light"]) .site-header button[aria-label*="mode" i],
:root:not([data-theme="light"]) .site-header .search-button,
:root:not([data-theme="light"]) .site-header .share-button,
:root:not([data-theme="light"]) .site-header .theme-toggle,
:root:not([data-theme="light"]) .detail-page button[aria-label*="Search" i],
:root:not([data-theme="light"]) .detail-page button[aria-label*="Share" i],
:root:not([data-theme="light"]) .detail-page button[aria-label*="mode" i],
:root:not([data-theme="light"]) .detail-page .search-button,
:root:not([data-theme="light"]) .detail-page .share-button,
:root:not([data-theme="light"]) .detail-page .theme-toggle{background:transparent!important;border-color:transparent!important;box-shadow:none!important;border-radius:0!important;color:#FFFFFF!important}
:root:not([data-theme="light"]) .site-header .search-box svg{color:#FFFFFF!important}
:root[data-theme="light"] .site-header button[aria-label*="Search" i],
:root[data-theme="light"] .site-header button[aria-label*="Share" i],
:root[data-theme="light"] .site-header button[aria-label*="mode" i],
:root[data-theme="light"] .site-header .search-button,
:root[data-theme="light"] .site-header .share-button,
:root[data-theme="light"] .site-header .theme-toggle,
:root[data-theme="light"] .detail-page button[aria-label*="Search" i],
:root[data-theme="light"] .detail-page button[aria-label*="Share" i],
:root[data-theme="light"] .detail-page button[aria-label*="mode" i],
:root[data-theme="light"] .detail-page .search-button,
:root[data-theme="light"] .detail-page .share-button,
:root[data-theme="light"] .detail-page .theme-toggle{background:transparent!important;border-color:transparent!important;box-shadow:none!important;border-radius:0!important;color:#111111!important}
:root[data-theme="light"] .site-header .search-box svg{color:#111111!important}


/* Theme toggle icon: plain surface with explicit light and dark colors. */
.site-header button[aria-label="Switch to light mode"],
.site-header button[aria-label="Switch to dark mode"]{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  color:#FFFFFF!important;
}
:root[data-theme="light"] .site-header button[aria-label="Switch to light mode"],
:root[data-theme="light"] .site-header button[aria-label="Switch to dark mode"]{color:#111111!important}
.site-header button[aria-label="Search"],
.site-header button[aria-label="Share"],
.detail-page button[aria-label="Search"],
.detail-page button[aria-label="Share"]{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  color:#FFFFFF!important;
}
:root[data-theme="light"] .site-header button[aria-label="Search"],
:root[data-theme="light"] .site-header button[aria-label="Share"],
:root[data-theme="light"] .detail-page button[aria-label="Search"],
:root[data-theme="light"] .detail-page button[aria-label="Share"]{color:#111111!important}


/* High-specificity light icon fallback for the global header theme toggle. */
:root[data-theme="light"] #root .site-header button.icon-button[aria-label="Switch to light mode"],
:root[data-theme="light"] #root .site-header button.icon-button[aria-label="Switch to dark mode"]{color:#111111!important;-webkit-text-fill-color:#111111!important}
:root[data-theme="light"] #root .site-header button.icon-button[aria-label="Switch to light mode"] svg,
:root[data-theme="light"] #root .site-header button.icon-button[aria-label="Switch to dark mode"] svg{filter:brightness(0) saturate(100%)!important;stroke:#111111!important}

/* GameTron mobile app/game detail refresh: isolated to item pages at mobile widths. */
.detail-page .detail-category { display: none; }
@media (max-width: 768px) {
  .detail-page {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    padding: 72px 0 42px;
    overflow-x: clip;
  }

  .detail-page > .back-link {
    position: absolute;
    z-index: 5;
    top: 84px;
    left: 14px;
    display: inline-flex;
    width: 42px;
    height: 42px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 50%;
    background: rgba(15,20,30,.42);
    color: #fff;
    font-size: 0;
    line-height: 1;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 3px 12px rgba(0,0,0,.16);
  }

  .detail-page > .back-link svg {
    flex: none;
    width: 18px;
    height: 18px;
  }

  .detail-page .detail-banner {
    position: relative;
    width: 100%;
    height: clamp(205px, 58vw, 260px);
    margin: 0;
    overflow: hidden;
    border: 0;
    border-radius: 0 0 24px 24px;
    background: var(--surface-2);
    box-shadow: 0 10px 28px rgba(0,0,0,.14);
  }

  .detail-page .detail-banner > img {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center;
    filter: saturate(1.04);
  }

  .detail-page .detail-banner-glow { display: none; }

  .detail-page .detail-banner::after {
    position: absolute;
    z-index: 1;
    inset: 0;
    content: "";
    pointer-events: none;
    background: linear-gradient(180deg, rgba(0,0,0,.14) 0%, rgba(0,0,0,.04) 42%, rgba(0,0,0,.34) 100%);
  }

  .detail-page .banner-caption {
    position: absolute;
    z-index: 2;
    right: 14px;
    bottom: 13px;
    left: auto;
    display: flex;
    gap: 7px;
    align-items: center;
    max-width: calc(100% - 28px);
    padding: 7px 10px;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 999px;
    background: rgba(12,16,24,.36);
    color: #fff;
    font-size: 8px;
    line-height: 1.2;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }

  .detail-page .detail-heading {
    position: static;
    z-index: auto;
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    align-items: end;
    gap: 0 14px;
    margin: -42px 16px 0;
    padding: 0;
  }

  .detail-page .detail-icon {
    position: relative;
    z-index: 3;
    grid-column: 1;
    grid-row: 1;
    width: 82px;
    height: 82px;
    box-sizing: border-box;
    padding: 0;
    overflow: hidden;
    border: 3px solid var(--bg) !important;
    border-radius: 21px;
    background: var(--surface) !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.22);
    transform: none !important;
  }

  .detail-page .detail-icon img {
    width: 100%;
    height: 100%;
    border-radius: 17px;
    object-fit: cover;
  }

  .detail-page .detail-title {
    display: flex;
    margin-top: 42px;
    min-width: 0;
    flex-direction: column;
    align-self: end;
    gap: 0;
    padding: 0 0 2px;
  }

  .detail-page .detail-title h1 {
    order: 1;
    margin: 0 0 5px;
    color: var(--text) !important;
    font-family: "Space Grotesk", system-ui, sans-serif;
    font-size: clamp(22px, 6vw, 29px);
    font-weight: 800;
    line-height: 1.06;
    letter-spacing: -.85px;
    overflow-wrap: anywhere;
  }

  .detail-page .detail-category {
    display: block;
    order: 2;
    margin: 0 0 6px;
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 600;
    line-height: 1.35;
  }

  .detail-page .detail-tags {
    order: 3;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    align-items: center;
  }

  .detail-page .detail-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 19px;
    box-sizing: border-box;
    padding: 3px 7px;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: var(--surface-2);
    color: var(--text-muted) !important;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .45px;
    line-height: 1;
  }

  .detail-page .detail-subline {
    order: 4;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 5px;
    color: var(--text-faint);
    font-size: 9px;
    line-height: 1.3;
  }

  .detail-page .detail-actions {
    position: static;
    display: block;
    grid-column: 1 / -1;
    width: auto;
    margin: 18px 0 0;
  }

  .detail-page .detail-actions .get-button {
    display: flex;
    width: 100%;
    min-width: 0;
    min-height: 52px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 0 20px;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .1px;
    box-shadow: 0 8px 18px rgba(0,0,0,.16);
  }

  .detail-page .detail-save {
    position: absolute;
    z-index: 5;
    top: 84px;
    right: 14px;
    display: inline-flex;
    width: 42px;
    min-width: 42px;
    height: 42px;
    min-height: 42px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 50%;
    background: rgba(15,20,30,.42);
    color: #fff;
    font-size: 0;
    line-height: 1;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 3px 12px rgba(0,0,0,.16);
  }

  .detail-page .detail-save svg {
    flex: none;
    width: 18px;
    height: 18px;
  }

  .detail-page .stat-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    margin: 20px 16px 0;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
    box-shadow: 0 5px 16px rgba(0,0,0,.06);
  }

  .detail-page .stat-strip > div {
    min-width: 0;
    min-height: 70px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 11px 4px;
    border-right: 1px solid var(--border);
    text-align: center;
  }

  .detail-page .stat-strip > div:last-child { border-right: 0; }

  .detail-page .stat-strip span {
    color: var(--text-faint);
    font-size: clamp(7px, 1.9vw, 8px);
    font-weight: 700;
    letter-spacing: .25px;
    line-height: 1.2;
    text-align: center;
  }

  .detail-page .stat-strip strong {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 3px;
    color: var(--text);
    font-size: clamp(10px, 2.8vw, 13px);
    font-weight: 800;
    line-height: 1.15;
    text-align: center;
    overflow-wrap: anywhere;
  }

  .detail-page .stat-strip strong small {
    font-size: .72em;
    font-weight: 600;
  }

  .detail-page .detail-columns {
    display: block;
    margin: 22px 16px 0;
  }

  .detail-page .detail-main-column { min-width: 0; }

  .detail-page .detail-section {
    margin: 0 0 17px;
    padding: 20px 18px;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
  }

  .detail-page .detail-section:first-child h2 {
    margin: 0 0 10px;
    color: var(--text);
    font-family: "Space Grotesk", system-ui, sans-serif;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -.35px;
  }

  .detail-page .detail-section:first-child > .eyebrow { display: block; margin: 0 0 6px; }

  .detail-page .detail-section:first-child p {
    margin: 0;
    color: var(--text-muted);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;
    overflow-wrap: anywhere;
  }

  .detail-page .detail-section:first-child p + p { margin-top: 10px; }
  .detail-page .detail-section:first-child .verified-meta { margin-top: 12px; }

  :root[data-theme="light"] .detail-page {
    padding-left: 0;
    padding-right: 0;
  }

  :root[data-theme="light"] .detail-page .detail-save,
  :root[data-theme="light"] .detail-page > .back-link {
    border-color: rgba(255,255,255,.55);
    background: rgba(25,30,40,.4);
    color: #fff;
  }
}
/* Keep mobile ranking numerals fully visible without changing card geometry. */
@media (max-width: 768px) {
  #root .home-page .trending-rail > .trending-item > .trend-number {
    top: 0;
    bottom: auto;
    left: 2px;
    z-index: 2;
  }
}
/* Keep mobile search detail navigation separate from its Get action. */
.mobile-search-result__open{display:flex;flex:1 1 auto;align-items:center;gap:11px;min-width:0;min-height:54px;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;appearance:none}
/* Scroll-responsive mobile app/game detail chrome. */
.detail-sticky-header,.detail-sticky-action{display:none}
@media(max-width:768px){
  .detail-page.is-sticky-get-visible{padding-bottom:calc(112px + env(safe-area-inset-bottom))}
  .detail-sticky-header{position:fixed;z-index:70;top:calc(54px + env(safe-area-inset-top));right:0;left:0;box-sizing:border-box;display:flex;align-items:center;gap:12px;height:50px;padding:0 14px;border-bottom:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:0 6px 18px rgba(0,0,0,.12);backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%);opacity:0;visibility:hidden;transform:translateY(-8px);pointer-events:none;transition:opacity .2s ease,transform .22s ease,visibility .22s ease}
  .detail-sticky-header.is-visible{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
  .detail-sticky-header__back,.detail-sticky-header__save{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--surface-2);color:var(--text);cursor:pointer}
  .detail-sticky-header__title{flex:1;min-width:0;overflow:hidden;color:var(--text);font:700 14px/1.2 "Space Grotesk",system-ui,sans-serif;text-align:center;text-overflow:ellipsis;white-space:nowrap}
  .detail-sticky-header__save.is-saved{color:var(--accent)}
  .detail-sticky-action{position:fixed;z-index:79;right:12px;bottom:calc(82px + env(safe-area-inset-bottom));left:12px;box-sizing:border-box;display:flex;align-items:center;gap:11px;min-height:66px;max-width:430px;margin:0 auto;padding:9px 11px;border:1px solid var(--border);border-radius:18px;background:var(--surface);color:var(--text);box-shadow:0 10px 30px rgba(0,0,0,.22);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);opacity:0;visibility:hidden;transform:translateY(12px);pointer-events:none;transition:opacity .2s ease,transform .24s cubic-bezier(.2,.7,.2,1),visibility .24s ease}
  .detail-sticky-action.is-visible{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
  .detail-sticky-action__icon{display:block;flex:0 0 44px;width:44px;height:44px;box-sizing:border-box;border:1px solid var(--border);border-radius:12px;object-fit:cover;background:var(--surface-2)}
  .detail-sticky-action__copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}
  .detail-sticky-action__title{overflow:hidden;color:var(--text);font:700 12px/1.2 "Space Grotesk",system-ui,sans-serif;text-overflow:ellipsis;white-space:nowrap}
  .detail-sticky-action__rating{display:flex;align-items:center;gap:4px;color:#f4c96a;font:600 11px/1 Archivo,system-ui,sans-serif}
  .detail-sticky-action__rating b{color:var(--text-muted);font-weight:700}
  .detail-sticky-action__get{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:5px;width:auto;min-width:76px;min-height:40px;margin:0;padding:0 13px;border:0;border-radius:999px;font-size:13px;font-weight:800;line-height:1;white-space:nowrap;box-shadow:0 4px 13px rgba(0,0,0,.12)}
}
@media(prefers-reduced-motion:reduce){.detail-sticky-header,.detail-sticky-action{transition:none}}


/* Mobile detail refinement: balanced art, less header chrome, consistent spacing. */
.detail-page .detail-banner > .detail-banner-backdrop { display: none; }
@media (max-width: 768px) {
  .detail-page .detail-banner {
    height: clamp(280px, 74vw, 300px);
    display: grid;
    place-items: center;
    border-radius: 0 0 22px 22px;
  }
  .detail-page .detail-banner > .detail-banner-backdrop {
    position: absolute;
    z-index: 0;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    object-fit: cover;
    object-position: center;
    filter: blur(18px) brightness(.5) saturate(1.15);
    opacity: .72;
    transform: scale(1.1);
  }
  .detail-page .detail-banner > .detail-banner-art {
    position: relative;
    z-index: 2;
    inset: auto;
    display: block;
    width: 100%;
    height: calc(100% - 56px);
    max-width: 100%;
    max-height: calc(100% - 56px);
    margin: 0 auto;
    object-fit: contain;
    object-position: center;
    filter: drop-shadow(0 12px 28px rgba(0,0,0,.24));
  }
  .detail-page .detail-banner::after {
    z-index: 1;
    background: linear-gradient(180deg, rgba(0,0,0,.16) 0%, rgba(0,0,0,.04) 32%, rgba(0,0,0,0) 50%, var(--bg) 100%);
  }
  .detail-page .banner-caption { display: none; }
  .detail-page .detail-heading {
    grid-template-columns: 116px minmax(0, 1fr);
    align-items: center;
    gap: 0 16px;
    margin: -58px 25px 0;
    padding: 0;
  }
  .detail-page .detail-icon {
    width: 116px;
    height: 116px;
    border-radius: 24px;
    border: 3px solid var(--bg) !important;
    background: var(--surface) !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.2);
  }
  .detail-page .detail-icon img { border-radius: 19px; }
  .detail-page .detail-title {
    min-width: 0;
    min-height: 116px;
    justify-content: center;
    align-self: center;
    margin: 0;
    padding: 0;
  }
  .detail-page .detail-title .detail-tags { display: none; }
  .detail-page .detail-title h1 {
    order: 0;
    margin: 0 0 5px;
    font-size: clamp(28px, 8vw, 34px);
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -.9px;
    overflow-wrap: anywhere;
  }
  .detail-page .detail-category {
    order: 1;
    margin: 0 0 7px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
  }
  .detail-page .detail-subline {
    order: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin: 0;
    font-size: 11px;
    line-height: 1.35;
  }
  .detail-page .detail-actions { margin: 18px 0 0; }
  .detail-page .detail-actions .get-button {
    min-height: 54px;
    border-radius: 999px;
    font-size: 15px;
    font-weight: 800;
  }
  .detail-page .stat-strip {
    margin: 18px 25px 0;
    border: 0;
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  .detail-page .stat-strip > div {
    min-height: 72px;
    padding: 13px 4px;
    border-right: 1px solid var(--border);
    text-align: center;
  }
  .detail-page .stat-strip > div:last-child { border-right: 0; }
  .detail-page .detail-columns {
    display: block;
    margin: 22px 25px 0;
  }
  .detail-page .detail-section {
    margin: 0 0 24px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  .detail-page .detail-section:first-child {
    padding-top: 18px;
    border-top: 1px solid var(--border);
  }
  .detail-page .detail-section + .detail-section {
    padding-top: 20px;
    border-top: 1px solid var(--border);
  }
  .detail-page .detail-section:first-child > .eyebrow { display: none; }
  .detail-page .detail-section:first-child h2 {
    margin: 0 0 10px;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.2;
  }
  .detail-page .detail-section:first-child p {
    margin: 0;
    font-size: 15px;
    line-height: 1.65;
  }
  .detail-page .detail-section:first-child p + p { margin-top: 10px; }
}
@media (max-width: 380px) {
  .detail-page .detail-heading {
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 0 12px;
    margin-right: 24px;
    margin-left: 24px;
  }
  .detail-page .detail-icon {
    width: 110px;
    height: 110px;
  }
  .detail-page .detail-title { min-height: 110px; }
  .detail-page .detail-title h1 { font-size: 28px; }
  .detail-page .stat-strip { margin-right: 24px; margin-left: 24px; }
  .detail-page .detail-columns { margin-right: 24px; margin-left: 24px; }
}


/* Correct hero stacking and keep the existing save control on the cover. */
@media (max-width: 768px) {
  .detail-page { --mobile-detail-cover-height: clamp(280px, 74vw, 300px); }
  .detail-page .detail-banner {
    height: var(--mobile-detail-cover-height);
    grid-template-columns: minmax(0, 1fr);
    z-index: 0;
  }
  .detail-page .detail-heading {
    position: relative;
    z-index: 2;
  }
  .detail-page .detail-heading .detail-save {
    top: calc(70px - var(--mobile-detail-cover-height));
    right: -14px;
  }
}

/* Mobile collection rows and three-item swipe pages. */
@media (max-width: 768px) {

















  .detail-page > .shelf-section {
    width: calc(100% - 50px);
    margin: 30px 25px 0;
  }
  .detail-page > .shelf-section .shelf-wrap {
    display: block;
    width: 100%;
    overflow: visible;
  }
  .detail-page > .shelf-section .rail-arrow,
  .detail-page > .shelf-section .mobile-shelf-carousel { display: none !important; }
  .detail-page > .shelf-section .item-rail {
    display: flex !important;
    flex-flow: column wrap;
    align-content: flex-start;
    align-items: stretch;
    gap: 0;
    width: 100%;
    height: 288px;
    max-height: 288px;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0 0 5px;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    scrollbar-color: var(--text-faint) transparent;
  }
  .detail-page > .shelf-section .item-rail::-webkit-scrollbar { height: 4px; }
  .detail-page > .shelf-section .item-rail::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: var(--text-faint);
  }
  .detail-page > .shelf-section .item-card-compact {
    display: flex;
    flex: 0 0 96px;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    min-height: 96px;
    height: 96px;
    padding: 10px 0;
    overflow: visible;
    border: 0;
    border-bottom: 1px solid var(--border);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    scroll-snap-align: start;
  }
  .detail-page > .shelf-section .item-card-compact .card-art-button,
  .detail-page > .shelf-section .item-card-compact .card-art {
    display: block;
    flex: 0 0 75px;
    width: 75px;
    height: 75px;
    padding: 0;
    overflow: hidden;
    border-radius: 14px;
  }
  .detail-page > .shelf-section .item-card-compact .card-art img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
  }
  .detail-page > .shelf-section .item-card-compact .card-content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 66px;
    grid-template-rows: auto auto auto;
    align-items: center;
    gap: 3px 8px;
    flex: 1;
    min-width: 0;
    padding: 0;
  }
  .detail-page > .shelf-section .item-card-compact .card-title-row {
    grid-column: 1;
    grid-row: 1;
    display: flex;
    align-items: center;
    min-width: 0;
  }
  .detail-page > .shelf-section .item-card-compact .card-title {
    display: -webkit-box;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    font-size: 15px;
    font-weight: 750;
    line-height: 1.22;
    white-space: normal;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .detail-page > .shelf-section .item-card-compact .save-button { display: none; }
  .detail-page > .shelf-section .item-card-compact .mobile-card-tags {
    grid-column: 1;
    grid-row: 2;
    display: flex;
    align-items: center;
    gap: 4px;
    max-height: 16px;
    min-width: 0;
    overflow: hidden;
  }
  .detail-page > .shelf-section .item-card-compact .mobile-card-tags span {
    min-height: 14px;
    padding: 2px 5px;
    font-size: 9px;
    line-height: 1;
  }
  .detail-page > .shelf-section .item-card-compact .card-rating {
    grid-column: 1;
    grid-row: 3;
    display: flex;
    align-items: center;
    min-width: 0;
    margin: 0;
    font-size: 11px;
  }
  .detail-page > .shelf-section .item-card-compact .card-stats { display: none !important; }
  .detail-page > .shelf-section .item-card-compact .get-button-small {
    grid-column: 2;
    grid-row: 1 / 4;
    justify-self: end;
    align-self: center;
    width: 66px;
    min-height: 34px;
    height: 34px;
    margin: 0;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 12px;
    line-height: 1;
    box-shadow: none;
  }
}


/* Mobile cover/title separation and three-row recommendation pages. */
@media (max-width: 768px) {
  .detail-page .detail-banner > .detail-banner-art {
    height: calc(100% - 116px);
    max-height: calc(100% - 116px);
  }
  .detail-page .detail-title h1 {
    display: block;
    overflow: visible;
    white-space: normal;
    text-overflow: clip;
    -webkit-line-clamp: unset;
    -webkit-box-orient: initial;
  }
  .detail-page > .shelf-section .item-rail {
    height: 300px;
    max-height: 300px;
    padding-bottom: 6px;
  }
}


/* Final mobile cover art scale and exact three-row capacity. */
@media (max-width: 768px) {
  .detail-page .detail-banner > .detail-banner-art {
    position: absolute;
    z-index: 2;
    top: 20px;
    right: 0;
    bottom: auto;
    left: 0;
    width: 100%;
    height: calc(var(--mobile-detail-cover-height) - 100px);
    max-height: calc(var(--mobile-detail-cover-height) - 100px);
    margin: auto;
    object-fit: contain;
    object-position: center;
  }
  .detail-page > .shelf-section .item-card-compact {
    flex-basis: 94px;
    min-height: 94px;
    height: 94px;
    padding: 8px 0;
  }
}


/* Keep detail titles within the requested mobile type scale at narrow widths. */
@media (max-width: 768px) {
  .detail-page .detail-title h1 {
    font-size: clamp(30px, 8vw, 34px);
    line-height: 1.08;
  }
}


/* Short-screen clearance for mobile detail content and persistent controls. */
@media (max-width: 768px) {
  .detail-page {
    padding-top: 54px;
    padding-bottom: 24px;
  }
  .detail-page .detail-heading { margin-top: -70px; }
  .detail-page .detail-actions { margin-top: 12px; }
  .detail-page .stat-strip { margin-top: 12px; }
  .detail-page .detail-columns { margin-top: 14px; }
}


/* Keep final detail content scrollable above both mobile controls. */
@media (max-width: 768px) {
  .detail-page.is-sticky-get-visible {
    padding-bottom: calc(160px + env(safe-area-inset-bottom));
  }
}


/* Mobile Games and Apps collection rows: scoped to the two library routes only. */
.library-card-meta{display:none}
@media(max-width:768px){
  .library-page:not(.search-page) .catalog-grid{display:flex;flex-direction:column;gap:0;padding-bottom:calc(120px + env(safe-area-inset-bottom))}
  .library-page:not(.search-page) .catalog-grid>.item-card{display:grid;grid-template-columns:75px minmax(0,1fr);align-items:center;gap:12px;min-width:0;min-height:102px;padding:12px 0;overflow:visible;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none;box-sizing:border-box}
  .library-page:not(.search-page) .catalog-grid>.item-card:hover{transform:none;border-color:var(--border);box-shadow:none}
  .library-page:not(.search-page) .catalog-grid>.item-card>.card-art-button{grid-column:1;grid-row:1;display:block;width:75px;height:75px;min-width:75px;padding:0;overflow:hidden;border:0;border-radius:13px;background:var(--surface-2)}
  .library-page:not(.search-page) .catalog-grid>.item-card .card-art{display:grid;width:75px;height:75px;padding:0;overflow:hidden;border-radius:13px}
  .library-page:not(.search-page) .catalog-grid>.item-card .card-art img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
  .library-page:not(.search-page) .catalog-grid>.item-card .source-badge{display:none}
  .library-page:not(.search-page) .catalog-grid>.item-card .card-content{grid-column:2;grid-row:1;display:grid;grid-template-columns:minmax(0,1fr) 66px;grid-template-rows:auto auto auto;grid-template-areas:"title get" "meta get" "rating get";align-items:center;gap:3px 8px;min-width:0;padding:0;overflow:hidden}
  .library-page:not(.search-page) .catalog-grid>.item-card .card-title-row{grid-area:title;display:flex;align-items:center;gap:4px;min-width:0}
  .library-page:not(.search-page) .catalog-grid>.item-card .card-title{display:-webkit-box;flex:1 1 auto;min-width:0;min-height:0;overflow:hidden;padding:0;color:var(--text);font-size:15px;font-weight:700;line-height:1.2;text-align:left;text-overflow:ellipsis;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}
  .library-page:not(.search-page) .catalog-grid>.item-card .save-button{flex:0 0 auto}
  .library-page:not(.search-page) .catalog-grid>.item-card .library-card-meta{grid-area:meta;display:flex;align-items:center;gap:6px;min-width:0;max-width:100%;overflow:hidden;color:var(--text-muted);font-size:11px;line-height:1.2}
  .library-page:not(.search-page) .catalog-grid>.item-card .library-card-category{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .library-page:not(.search-page) .catalog-grid>.item-card .library-card-badge{flex:0 0 auto;max-width:64px;min-width:0;overflow:hidden;padding:2px 6px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text-muted);font-size:9px;font-weight:700;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
  .library-page:not(.search-page) .catalog-grid>.item-card .card-rating{grid-area:rating;display:flex;align-items:center;min-width:0;margin:0;color:var(--text-muted);font-size:11px}
  .library-page:not(.search-page) .catalog-grid>.item-card .card-stats{display:none!important}
  .library-page:not(.search-page) .catalog-grid>.item-card .get-button-small{grid-area:get;justify-self:end;align-self:center;width:66px;min-width:66px;min-height:34px;height:34px;margin:0;padding:0 8px;border-radius:999px;font-size:11px;line-height:1;box-shadow:none}
}


/* Mobile app/game detail header alignment and data-driven category/tag badges. */
.detail-page .detail-mobile-badges { display: none; }
@media (max-width: 768px) {
  .detail-page .detail-heading {
    align-items: flex-start;
    margin-top: -24px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--border);
  }
  .detail-page .detail-title { align-self: flex-start; margin-top: 32px; }
  .detail-page .detail-tags,
  .detail-page .detail-category { display: none !important; }
  .detail-page .detail-mobile-badges {
    order: 2;
    display: flex;
    min-width: 0;
    max-width: 100%;
    align-items: center;
    gap: 6px;
    margin: 0 0 5px;
    line-height: 1.2;
  }
  .detail-page .detail-mobile-badges span {
    display: inline-flex;
    min-height: 21px;
    box-sizing: border-box;
    align-items: center;
    padding: 4px 8px;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: var(--surface-2);
    color: var(--text-muted);
    font-size: 9px;
    font-weight: 650;
    line-height: 1;
    white-space: nowrap;
  }
  .detail-page .detail-mobile-category {
    min-width: 0;
    flex: 0 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .detail-page .detail-mobile-tag { flex: 0 0 auto; }
  .detail-page .detail-title h1 { order: 1; margin-bottom: 7px; }
  .detail-page .detail-subline {
    order: 3;
    min-width: 0;
    flex-wrap: nowrap;
    align-items: center;
    gap: 5px;
    margin-top: 0;
    line-height: 1.3;
  }
  .detail-page .detail-actions { margin-top: 16px; }
}


/* Site-wide invisible scrollbars and mobile footer clearance. */
html, body, * {
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}
html::-webkit-scrollbar,
body::-webkit-scrollbar,
*::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}
@media (max-width: 768px) {
  body { padding-bottom: 0 !important; }
  .app-shell { padding-bottom: calc(72px + env(safe-area-inset-bottom)) !important; }
}


/* Mobile save/like control fit and heart alignment. */
@media (max-width: 768px) {
  .detail-page .detail-save {
    display: inline-flex;
    width: 42px;
    min-width: 42px;
    height: 42px;
    min-height: 42px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    padding: 0;
    border-radius: 50%;
    line-height: 0;
    -webkit-tap-highlight-color: transparent;
  }
  .detail-page .detail-save svg {
    display: block;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    margin: 0;
    stroke-width: 2;
  }
  .detail-page .detail-save.is-saved {
    border-color: transparent;
    background: var(--accent);
    color: #fff;
    box-shadow: 0 4px 14px rgba(0,0,0,.22);
  }
}


/* Discover mobile New Games/New Apps use the recommendation row layout. */
@media (max-width: 768px) {
  .home-page > .shelf-section .shelf-wrap {
    display: block;
    width: 100%;
    overflow: visible;
  }
  .home-page > .shelf-section .rail-arrow,
  .home-page > .shelf-section .mobile-shelf-carousel { display: none !important; }
  .home-page > .shelf-section .item-rail {
    display: flex !important;
    flex-flow: column nowrap !important;
    align-items: stretch;
    gap: 0 !important;
    width: 100%;
    min-width: 0;
    height: auto !important;
    max-height: none !important;
    margin: 0;
    overflow: visible !important;
    padding: 0 !important;
    scroll-snap-type: none !important;
  }
  .home-page > .shelf-section .item-card-compact {
    display: flex !important;
    flex: 0 0 96px !important;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    width: 100% !important;
    min-width: 0;
    max-width: 100%;
    min-height: 96px;
    height: 96px;
    padding: 10px 0;
    overflow: visible;
    border: 0;
    border-bottom: 1px solid var(--border);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    scroll-snap-align: none;
  }
  .home-page > .shelf-section .item-card-compact .card-art-button,
  .home-page > .shelf-section .item-card-compact .card-art {
    display: block;
    flex: 0 0 75px;
    width: 75px;
    height: 75px;
    padding: 0;
    overflow: hidden;
    border-radius: 14px;
  }
  .home-page > .shelf-section .item-card-compact .card-art img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
  }
  .home-page > .shelf-section .item-card-compact .card-content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 66px;
    grid-template-rows: auto auto auto;
    align-items: center;
    gap: 3px 8px;
    flex: 1;
    min-width: 0;
    padding: 0;
  }
  .home-page > .shelf-section .item-card-compact .card-title-row {
    grid-column: 1;
    grid-row: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
  }
  .home-page > .shelf-section .item-card-compact .card-title {
    display: -webkit-box;
    flex: 1;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    font-size: 15px;
    font-weight: 750;
    line-height: 1.22;
    white-space: normal;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .home-page > .shelf-section .item-card-compact .save-button {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    padding: 1px;
  }
  .home-page > .shelf-section .item-card-compact .mobile-card-tags {
    grid-column: 1;
    grid-row: 2;
    display: flex;
    align-items: center;
    gap: 4px;
    max-height: 16px;
    min-width: 0;
    overflow: hidden;
  }
  .home-page > .shelf-section .item-card-compact .mobile-card-tags span {
    min-height: 14px;
    padding: 2px 5px;
    font-size: 9px;
    line-height: 1;
  }
  .home-page > .shelf-section .item-card-compact .card-rating {
    grid-column: 1;
    grid-row: 3;
    display: flex;
    align-items: center;
    min-width: 0;
    margin: 0;
    font-size: 11px;
  }
  .home-page > .shelf-section .item-card-compact .card-stats { display: none !important; }
  .home-page > .shelf-section .item-card-compact .get-button-small {
    grid-column: 2;
    grid-row: 1 / 4;
    justify-self: end;
    align-self: center;
    width: 66px;
    min-height: 34px;
    height: 34px;
    margin: 0;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 12px;
    line-height: 1;
    box-shadow: none;
  }
}


/* Light-mode compact Get buttons for app/game listing cards only. */
:root[data-theme="light"] .home-page .item-card-compact .get-button-small,
:root[data-theme="light"] .detail-page > .shelf-section .item-card-compact .get-button-small,
:root[data-theme="light"] .library-page .get-button-small {
  width: 66px;
  min-width: 66px;
  height: 34px;
  min-height: 34px;
  padding: 0 8px;
  border: 0 !important;
  border-color: transparent !important;
  border-radius: 999px !important;
  background: #FFF0D9 !important;
  background-image: none !important;
  color: #98631F !important;
  font-size: 12px;
  font-weight: 800 !important;
  line-height: 1;
}


/* Mobile category text and dynamic tag badge hierarchy. */
@media (max-width: 768px) {
  .detail-page .detail-mobile-badges { gap: 7px; }
  .detail-page .detail-mobile-badges span {
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--text-muted);
    font-size: 12px;
    font-weight: 600;
  }
  .detail-page .detail-mobile-category {
    min-width: 0;
    flex: 0 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .detail-page .detail-mobile-tag {
    min-height: 22px !important;
    flex: 0 0 auto;
    padding: 4px 7px !important;
    border: 1px solid #FFB84D !important;
    border-radius: 5px !important;
    background: transparent !important;
    color: #98631F !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1 !important;
    white-space: nowrap;
  }
}

/* Mobile Games/Apps listing tags: keep the category and relevant tag together. */
@media (max-width: 768px) {
  .library-page:not(.search-page) .catalog-grid > .item-card .library-card-meta {
    justify-content: flex-start;
    gap: 7px;
    overflow: hidden;
  }
  .library-page:not(.search-page) .catalog-grid > .item-card .library-card-category {
    flex: 0 1 auto;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .library-page:not(.search-page) .catalog-grid > .item-card .library-card-badge {
    flex: 0 0 auto;
    min-width: 0;
    max-width: 84px;
    overflow: hidden;
    padding: 3px 7px;
    border: 1px solid #FFB84D;
    border-radius: 5px;
    background: rgba(255, 184, 77, 0.08);
    color: #FFB84D;
    font-size: 10px;
    font-weight: 650;
    line-height: 1;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  :root[data-theme="light"] .library-page:not(.search-page) .catalog-grid > .item-card .library-card-badge {
    background: transparent;
    color: #98631F;
  }
}

/* Discover New Games/New Apps: use the same three-row horizontal rail as detail recommendations. */
@media (max-width: 768px) {
  .home-page > .shelf-section .item-rail {
    display: flex !important;
    flex-flow: column wrap !important;
    align-content: flex-start;
    align-items: stretch;
    gap: 0 !important;
    width: 100%;
    min-width: 0;
    height: 288px !important;
    max-height: 288px !important;
    margin: 0;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 0 0 5px !important;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: thin;
    scrollbar-color: var(--text-faint) transparent;
  }
  .home-page > .shelf-section .item-card-compact {
    flex: 0 0 94px !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100%;
    min-height: 94px !important;
    height: 94px !important;
    padding: 8px 0 !important;
    scroll-snap-align: start;
  }
  .home-page > .shelf-section .item-rail::-webkit-scrollbar {
    height: 4px;
  }
  .home-page > .shelf-section .item-rail::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: var(--text-faint);
  }
}


/* Compact, theme-aware category and Mod tags. */
.category-tag,
.badge-tag,
.source-badge,
.library-card-category,
.library-card-badge,
.detail-mobile-badges .detail-mobile-category,
.detail-mobile-badges .detail-mobile-tag {
  display: inline-flex;
  align-items: center;
  min-height: 17px;
  box-sizing: border-box;
  padding: 2px 5px;
  border: 1px solid color-mix(in srgb, var(--text-muted) 48%, transparent);
  border-radius: 4px;
  background: color-mix(in srgb, var(--surface-2) 34%, transparent);
  color: var(--text-muted);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .35px;
  line-height: 1.15;
  white-space: nowrap;
}
.category-tag.game-tag,
.library-card-category.game-tag,
.detail-mobile-category.game-tag {
  border-color: color-mix(in srgb, var(--blue) 58%, transparent);
  color: var(--blue);
}
.category-tag.app-tag,
.library-card-category.app-tag,
.detail-mobile-category.app-tag {
  border-color: color-mix(in srgb, var(--accent) 58%, transparent);
  color: var(--accent);
}
.badge-tag.tag-mod,
.source-badge.tag-mod,
.library-card-badge.tag-mod,
.detail-mobile-tag.tag-mod {
  border-color: rgba(255, 184, 67, .72);
  background: rgba(255, 184, 67, .07);
  color: #ffb843;
}
.hero-tags { gap: 6px; }
.hero-tags > span:not(.rating) {
  padding: 2px 5px;
  border-radius: 4px;
  background: color-mix(in srgb, var(--surface-2) 34%, transparent);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .35px;
  line-height: 1.15;
}
.hero-tags > .category-tag.game-tag { border-color: color-mix(in srgb, var(--blue) 58%, transparent); color: var(--blue); }
.hero-tags > .category-tag.app-tag { border-color: color-mix(in srgb, var(--accent) 58%, transparent); color: var(--accent); }
.hero-tags > .badge-tag.tag-mod { border-color: rgba(255, 184, 67, .72); background: rgba(255, 184, 67, .07); color: #ffb843; }
.hero-mobile-tags { gap: 6px; }
.hero-mobile-tags > .badge-tag { min-height: 17px; padding: 2px 5px; border-radius: 4px; font-size: 9px; font-weight: 600; }
.hero-mobile-tags > .badge-tag.tag-mod { border-color: rgba(255, 184, 67, .72); background: rgba(255, 184, 67, .07); color: #ffb843; }
.mobile-card-tags { align-items: center; gap: 4px; }
.mobile-card-tags span { border-radius: 4px; }
.library-card-meta { align-items: center; gap: 4px; }
.detail-tags { align-items: center; gap: 5px; }
.detail-tags > span { min-height: 17px; padding: 2px 5px; border: 1px solid color-mix(in srgb, var(--text-muted) 48%, transparent); border-radius: 4px; background: color-mix(in srgb, var(--surface-2) 34%, transparent); color: var(--text-muted); font-size: 9px; font-weight: 600; letter-spacing: .35px; line-height: 1.15; }
.detail-tags > .game-tag { border-color: color-mix(in srgb, var(--blue) 58%, transparent); color: var(--blue); }
.detail-tags > .app-tag { border-color: color-mix(in srgb, var(--accent) 58%, transparent); color: var(--accent); }
.detail-tags > .tag-mod { border-color: rgba(255, 184, 67, .72); background: rgba(255, 184, 67, .07); color: #ffb843; }
@media (max-width: 768px) {
  .detail-page .detail-heading { border-bottom: 0; }
  .detail-page .detail-mobile-badges { gap: 4px; }
  .detail-page .detail-mobile-badges span { min-height: 17px; padding: 2px 5px; border-radius: 4px; font-size: 9px; font-weight: 600; letter-spacing: .35px; }
}

/* Keep the Games and Apps collection ending tight to its final item. */
.library-page:not(.search-page) {
  min-height: 0;
  padding-bottom: 0;
}
.library-page:not(.search-page) + .site-footer {
  margin-top: 0;
}
@media (max-width: 768px) {
  .library-page:not(.search-page) .catalog-grid {
    padding-bottom: 0;
  }
}

/* Full-bleed supplied cover art on detail pages; the catalog icon remains separate. */
.detail-page .detail-banner {
  display: block;
  isolation: isolate;
}
.detail-page .detail-banner > .detail-banner-glow,
.detail-page .detail-banner > .detail-banner-backdrop {
  display: none;
}
.detail-page .detail-banner > .detail-banner-art {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  margin: 0;
  object-fit: cover;
  object-position: center;
  filter: none;
}
.detail-page .detail-banner::after {
  z-index: 1;
  background: linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.03) 45%, color-mix(in srgb, var(--bg) 76%, transparent) 100%);
}
.detail-page .detail-banner .banner-caption {
  z-index: 2;
}

/* Stable polish for the restored Discover hero composition. */
@media (max-width: 768px) {
  .hero-mobile-layout {
    contain: layout paint;
  }
  .hero-mobile-image {
    contain: paint;
  }
  .hero-mobile-image > img {
    backface-visibility: hidden;
    transform: translateZ(0);
  }
  .hero-mobile-dash {
    transition: background-color .22s ease, box-shadow .22s ease;
  }
}

/* Discover top section polish only: header, featured hero, and its info row. */
body:has(.home-page) .site-header {
  position: relative;
  z-index: 20;
  background: color-mix(in srgb, var(--bg) 94%, transparent);
  border-bottom-color: color-mix(in srgb, var(--border) 72%, transparent);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
}
body:has(.home-page) .site-header .header-inner {
  width: min(1240px, calc(100% - 40px));
  height: 68px;
  gap: 22px;
}
body:has(.home-page) .site-header .brand {
  gap: 10px;
}
body:has(.home-page) .site-header .brand-mark {
  width: 36px;
  height: 36px;
  box-shadow: 0 5px 16px color-mix(in srgb, var(--accent) 18%, transparent);
}
body:has(.home-page) .site-header .brand-name {
  letter-spacing: -.45px;
}
body:has(.home-page) .site-header .header-actions {
  align-items: center;
  gap: 10px;
}
body:has(.home-page) .site-header .theme-toggle,
body:has(.home-page) .site-header .mobile-theme-toggle {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
}

@media (min-width: 769px) {
  body:has(.home-page) .home-page > .hero-panel {
    width: min(1240px, calc(100% - 48px));
    height: clamp(430px, 42vw, 520px);
    min-height: 0;
    margin: 20px auto 0;
    padding: 42px 48px;
    border-radius: 24px;
    border-color: color-mix(in srgb, var(--border-strong) 70%, transparent);
    box-shadow: 0 24px 65px rgba(0, 0, 0, .18);
  }
  body:has(.home-page) .home-page > .hero-panel .hero-background {
    object-position: 58% center;
    transform: scale(1.015);
  }
  body:has(.home-page) .home-page > .hero-panel .hero-shade {
    background:
      linear-gradient(90deg, rgba(7, 10, 24, .82) 0%, rgba(7, 10, 24, .52) 42%, rgba(7, 10, 24, .10) 78%),
      linear-gradient(0deg, rgba(7, 10, 24, .78) 0%, rgba(7, 10, 24, .16) 42%, transparent 72%);
  }
  body:has(.home-page) .home-page > .hero-panel .hero-copy {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: min(610px, 60%);
    padding-bottom: 58px;
  }
  body:has(.home-page) .home-page > .hero-panel .hero-copy h1 {
    max-width: 590px;
    margin: 13px 0 12px;
    font-size: clamp(42px, 5vw, 66px);
    line-height: 1.02;
    letter-spacing: -2.8px;
  }
  body:has(.home-page) .home-page > .hero-panel .hero-copy > p {
    max-width: 455px;
    margin: 14px 0 20px;
  }
  body:has(.home-page) .home-page > .hero-panel .hero-tags > span:not(.rating) {
    background: rgba(7, 10, 24, .42);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }
  body:has(.home-page) .home-page > .hero-panel .hero-kicker {
    opacity: .92;
  }
  body:has(.home-page) .home-page > .hero-panel .hero-thumbnails {
    right: 36px;
    bottom: 28px;
    gap: 9px;
  }
  body:has(.home-page) .home-page > .hero-panel .hero-thumb {
    width: 62px;
    height: 62px;
    flex-basis: 62px;
    border-radius: 11px;
  }
}

@media (max-width: 768px) {
  body:has(.home-page) .site-header .header-inner {
    width: calc(100% - 30px);
    height: 60px;
    gap: 12px;
  }
  body:has(.home-page) .site-header .brand-mark {
    width: 33px;
    height: 33px;
  }
  body:has(.home-page) .site-header .brand-name {
    font-size: 17px;
  }
  body:has(.home-page) .site-header .mobile-theme-toggle {
    width: 36px;
    height: 36px;
    border-radius: 11px;
  }
  body:has(.home-page) .hero-mobile-layout {
    overflow: visible;
    contain: layout paint;
  }
  body:has(.home-page) .hero-mobile-image {
    width: calc(100% - 30px);
    aspect-ratio: 16 / 10;
    margin: 12px auto 0;
    border: 1px solid color-mix(in srgb, var(--border-strong) 68%, transparent);
    border-radius: 22px;
    box-shadow: 0 16px 36px rgba(0, 0, 0, .18);
  }
  body:has(.home-page) .hero-mobile-image > img {
    object-position: center 40%;
    transform: translateZ(0) scale(1.01);
    backface-visibility: hidden;
  }
  body:has(.home-page) .hero-mobile-image-shade {
    background: linear-gradient(to top, rgba(7, 10, 24, .92) 0%, rgba(7, 10, 24, .46) 28%, rgba(7, 10, 24, .06) 72%, transparent 100%);
  }
  body:has(.home-page) .hero-mobile-image h1 {
    left: 17px;
    right: 17px;
    bottom: 16px;
    font-size: clamp(29px, 8vw, 38px);
    letter-spacing: -.9px;
  }
  body:has(.home-page) .hero-mobile-details {
    gap: 11px;
    padding: 13px 18px 12px;
  }
  body:has(.home-page) .hero-mobile-icon {
    width: 58px;
    height: 58px;
    flex-basis: 58px;
    border-radius: 15px;
    box-shadow: 0 6px 16px rgba(0, 0, 0, .16);
  }
  body:has(.home-page) .hero-mobile-meta {
    gap: 5px;
  }
  body:has(.home-page) .hero-mobile-get {
    min-width: 94px;
    min-height: 44px;
    padding-inline: 19px;
    box-shadow: 0 8px 20px color-mix(in srgb, var(--accent) 22%, transparent);
  }
  body:has(.home-page) .hero-mobile-dashes {
    padding: 9px 18px 12px;
  }
}

@media (min-width: 769px) {
  :root[data-theme="light"] body:has(.home-page) .site-header {
    box-shadow: 0 8px 24px rgba(17, 17, 17, .06);
  }
  :root[data-theme="light"] body:has(.home-page) .home-page > .hero-panel {
    box-shadow: 0 24px 65px rgba(17, 17, 17, .12);
  }
}

/* Keep the Discover header and featured banner grouped on narrow screens. */
@media (max-width: 768px) {
  body:has(.home-page) .home-page {
    padding-top: 0 !important;
  }
}

/* Restore the original Discover header mark treatment and remove the hero kicker. */
body:has(.home-page) .site-header .header-inner {
  width: min(1440px, calc(100% - 32px));
  height: 54px;
  gap: 16px;
}
body:has(.home-page) .site-header .brand {
  gap: 8px;
}
body:has(.home-page) .site-header .brand-mark {
  width: 34px;
  height: 34px;
  box-shadow: none;
}
body:has(.home-page) .site-header .brand-name {
  letter-spacing: normal;
}
body:has(.home-page) .hero-kicker,
body:has(.home-page) .hero-mobile-eyebrow {
  display: none;
}
@media (min-width: 769px) {
  body:has(.home-page) .home-page > .hero-panel .hero-copy h1 {
    margin-top: 0;
  }
}

/* Preparing Download background only: lightweight layered space starfield. */
.installing-screen {
  overflow: hidden;
  background: #070c1b;
}
.installing-screen:before {
  z-index: -2;
  background-color: #070c1b;
  background-image:
    radial-gradient(circle at 7% 18%, rgba(255,255,255,.78) 0 1px, transparent 1.6px),
    radial-gradient(circle at 17% 72%, rgba(147,202,255,.62) 0 1px, transparent 1.7px),
    radial-gradient(circle at 29% 38%, rgba(255,255,255,.52) 0 .8px, transparent 1.5px),
    radial-gradient(circle at 42% 84%, rgba(150,207,255,.55) 0 1.2px, transparent 1.8px),
    radial-gradient(circle at 56% 22%, rgba(255,255,255,.65) 0 .9px, transparent 1.6px),
    radial-gradient(circle at 68% 66%, rgba(175,218,255,.58) 0 1px, transparent 1.7px),
    radial-gradient(circle at 79% 31%, rgba(255,255,255,.74) 0 .8px, transparent 1.5px),
    radial-gradient(circle at 91% 78%, rgba(125,188,255,.58) 0 1.1px, transparent 1.8px),
    radial-gradient(circle at 88% 10%, rgba(255,255,255,.46) 0 .7px, transparent 1.4px),
    radial-gradient(circle at 3% 93%, rgba(125,188,255,.48) 0 1px, transparent 1.7px);
  background-size: 100% 100%;
  animation: installing-stars-drift-a 26s ease-in-out infinite alternate;
}
.installing-screen:after {
  z-index: -1;
  content: "";
  pointer-events: none;
  position: absolute;
  inset: -8%;
  opacity: .7;
  background-image:
    radial-gradient(circle at 12% 48%, rgba(255,255,255,.34) 0 .7px, transparent 1.5px),
    radial-gradient(circle at 24% 12%, rgba(118,184,255,.48) 0 1.2px, transparent 1.9px),
    radial-gradient(circle at 36% 63%, rgba(255,255,255,.38) 0 .6px, transparent 1.4px),
    radial-gradient(circle at 51% 47%, rgba(122,193,255,.42) 0 .9px, transparent 1.6px),
    radial-gradient(circle at 63% 91%, rgba(255,255,255,.4) 0 .8px, transparent 1.5px),
    radial-gradient(circle at 73% 16%, rgba(130,199,255,.45) 0 1px, transparent 1.7px),
    radial-gradient(circle at 84% 56%, rgba(255,255,255,.35) 0 .7px, transparent 1.4px),
    radial-gradient(circle at 96% 38%, rgba(124,190,255,.44) 0 1px, transparent 1.7px);
  background-size: 100% 100%;
  animation: installing-stars-drift-b 34s ease-in-out infinite alternate, installing-stars-twinkle 7s ease-in-out infinite;
}
.installing-screen__ambient {
  opacity: .88;
  background: radial-gradient(ellipse at 50% 38%, rgba(28,113,236,.22), rgba(13,55,119,.12) 32%, transparent 68%);
}
@keyframes installing-stars-drift-a {
  0% { transform: translate3d(-1.2%, -1%, 0) scale(1.02); }
  50% { transform: translate3d(.8%, 1.2%, 0) scale(1.04); }
  100% { transform: translate3d(1.4%, -.6%, 0) scale(1.02); }
}
@keyframes installing-stars-drift-b {
  0% { transform: translate3d(1.2%, .8%, 0) scale(1.04); }
  50% { transform: translate3d(-.8%, -1.1%, 0) scale(1.01); }
  100% { transform: translate3d(-1.4%, .5%, 0) scale(1.04); }
}
@keyframes installing-stars-twinkle {
  0%, 100% { opacity: .42; }
  48% { opacity: .78; }
  62% { opacity: .5; }
}
@media (prefers-reduced-motion: reduce) {
  .installing-screen:before,
  .installing-screen:after {
    animation: none;
  }
}
:root[data-motion="reduced"] .installing-screen:before,
:root[data-motion="reduced"] .installing-screen:after {
  animation: none;
}

/* Remove only trailing space after Discover content and final recommendations. */
.home-page {
  padding-bottom: 0;
}
.home-page + .site-footer {
  margin-top: 0;
}
.detail-page {
  padding-bottom: 0;
}
.detail-page > .shelf-section:last-of-type {
  margin-bottom: 0;
  padding-bottom: 0;
}
.detail-page > .shelf-section:last-of-type .item-rail {
  padding-bottom: 0;
}
@media (max-width: 768px) {
  .home-page {
    padding-bottom: 0 !important;
  }
  .home-page + .site-footer {
    margin-top: 0;
  }
  .detail-page {
    padding-bottom: 0 !important;
  }
  .detail-page > .shelf-section:last-of-type {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  .detail-page > .shelf-section:last-of-type .item-rail {
    padding-bottom: 0;
  }
}

.detail-page + .site-footer {
  margin-top: 0;
}
@media (max-width: 768px) {
  .detail-page + .site-footer {
    margin-top: 0;
  }
}

/* Remove the optional Discover catalog note without affecting other page sections. */
.home-page > .catalog-note {
  display: none !important;
}

/* Detail pages: reduce top chrome without removing meaningful content boundaries. */
body:has(.detail-page) .site-header {
  border-bottom-color: transparent;
  box-shadow: none;
}
.detail-page .detail-banner {
  border: 0;
}

/* Remove only the separator directly above the first About section. */
.detail-page .detail-section:first-child {
  border-top: 0;
}


/* Keep one clean separator at the end of Games and Apps collections. */
.library-page:not(.search-page) .catalog-grid > .item-card:last-child {
  border-bottom: 0;
}

/* Keep the footer's single separator; remove only final visual-row borders. */
@media (min-width: 769px) {
  .home-page > .shelf-section:not(:has(~ .shelf-section)) .item-card-compact {
    border-bottom: 0;
  }
}
@media (min-width: 901px) {
  .detail-page > .shelf-section:not(:has(~ .shelf-section)) .item-card-compact:nth-child(4),
  .detail-page > .shelf-section:not(:has(~ .shelf-section)) .item-card-compact:nth-child(5) {
    border-bottom: 0;
  }
}
@media (min-width: 561px) and (max-width: 900px) {
  .detail-page > .shelf-section:not(:has(~ .shelf-section)) .item-card-compact:last-child {
    border-bottom: 0;
  }
  .home-page > .shelf-section:not(:has(~ .shelf-section)) .item-card-compact:nth-last-child(-n+2) {
    border-bottom: 0;
  }
}
@media (max-width: 560px) {
  .home-page > .shelf-section:not(:has(~ .shelf-section)) .item-card-compact:last-child,
  .detail-page > .shelf-section:not(:has(~ .shelf-section)) .item-card-compact:last-child {
    border-bottom: 0;
  }
}


/* Preparing Download mobile polish: remove the inner status header and fit the dismiss control. */
.installing-screen__status {
  display: none !important;
}
.installing-screen__title {
  margin-top: 0 !important;
}
body:has(.installing-screen) .site-header,
body:has(.installing-screen) .mobile-bottom-nav {
  display: none !important;
}
@media (max-width: 560px) {
  .installing-screen {
    min-height: 100dvh;
    padding: calc(16px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom)) !important;
  }
  .installing-screen__close {
    top: max(12px, env(safe-area-inset-top));
    right: 14px;
    width: 36px;
    height: 36px;
    padding: 0;
    border-radius: 10px;
  }
  .installing-screen__close svg {
    width: 16px;
    height: 16px;
  }
  .installing-screen__content {
    padding: 16px 0 12px !important;
  }
  .installing-screen__app-name {
    max-width: calc(100vw - 48px);
    font-size: clamp(26px, 8vw, 34px);
  }
  .installing-screen__steps-list {
    gap: 8px;
  }
}


/* Discover slideshow: edge-to-edge outer presentation only. */
@media (min-width: 769px) {
  body:has(.home-page) .home-page > .hero-panel {
    width: 100%;
    max-width: none;
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
}
@media (max-width: 768px) {
  body:has(.home-page) .hero-mobile-layout {
    width: 100%;
    margin: 0;
  }
  body:has(.home-page) .hero-mobile-image {
    width: 100%;
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
}


/* Theme-only Explorer panel: keep the existing switch behavior in a compact container. */
.theme-only-panel {
  bottom: auto;
  width: min(260px, calc(100% - 24px));
  padding: 16px;
}
.theme-only-panel .panel-heading {
  justify-content: flex-end;
}
.theme-only-control {
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 4px;
  padding: 11px 12px;
  border: 1px solid var(--border);
  border-radius: 11px;
  background: var(--surface-2);
}
.theme-only-label {
  flex: 1;
  color: var(--text);
  font-size: 11px;
  font-weight: 650;
}
.theme-only-panel .switch {
  flex: 0 0 auto;
}
@media (max-width: 520px) {
  .theme-only-panel {
    right: 12px;
    width: min(260px, calc(100% - 24px));
  }
}


/* Remove the remaining mobile slideshow wrapper chrome. */
@media (max-width: 768px) {
  body:has(.home-page) .hero-mobile-layout {
    overflow: visible;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
  }
}
