:root{color-scheme:dark;--background:#080f1c;--panel:#172235;--panel-soft:#101b2c;--border:#2b3e57;--cyan:#31c6f4;--cyan-soft:#78d9f7;--text:#edf4ff;--muted:#9badc4;--gold:#f0bd4f;--focus:#6de0ff;--radius:15px;font-family:"Segoe UI","Microsoft JhengHei","PingFang TC",system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}body{margin:0;min-width:280px;min-height:100vh;background:radial-gradient(ellipse 70% 55% at -8% 26%,#46314570 0,transparent 77%),radial-gradient(ellipse 70% 45% at 105% 60%,#07375f50,transparent 75%),var(--background);color:var(--text);font-size:14px;line-height:1.5}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;background-image:radial-gradient(1px 1px at 9% 19%,#fff 90%,transparent),radial-gradient(1px 1px at 24% 57%,#fff 90%,transparent),radial-gradient(1px 1px at 42% 8%,#fff 90%,transparent),radial-gradient(1.5px 1.5px at 79% 38%,#8dcdf9 90%,transparent),radial-gradient(1px 1px at 95% 75%,#fff 90%,transparent);background-size:347px 331px;z-index:-1}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button,select,input{color:var(--text)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--focus);outline-offset:4px}button:disabled{cursor:default;opacity:.5}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-70px;left:16px;z-index:20;background:var(--cyan);color:#052035;padding:12px 18px;border-radius:8px}.skip-link:focus{top:10px}.masthead{background:#101a2bf2;border-bottom:1px solid #26364d}.masthead-inner{max-width:1536px;margin:0 auto;padding:23px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:17px;text-decoration:none;min-width:0}.brand img{border-radius:16px;flex:none}.brand strong{font-size:23px;letter-spacing:1px;font-weight:700;display:block;line-height:1.45}.brand-en{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:600;letter-spacing:2.7px;color:#6e8bab;margin-top:5px}.brand-en i{width:31px;height:2px;background:var(--cyan)}.masthead-label{display:flex;align-items:center;gap:9px;color:#91abc8;font-size:13px;white-space:nowrap}.masthead-label svg{width:19px}.page{max-width:1536px;margin:0 auto;padding:37px 40px 65px;min-height:calc(100vh - 189px)}.collection-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:2px 0 31px}.owner-block{display:flex;align-items:center;gap:18px;min-width:0}.owner-block>div{min-width:0}.owner-avatar{width:64px;height:64px;flex:none;border-radius:20px;display:grid;place-items:center;background:linear-gradient(145deg,#1e405b,#182d46);border:1px solid #36516b;color:#93e3fb;font-size:25px;font-weight:600;box-shadow:inset 0 1px #ffffff0b}.eyebrow{font-size:11px;letter-spacing:2px;color:#86acc9;margin:0 0 3px}h1{margin:0;font-size:clamp(23px,2.1vw,31px);line-height:1.3;font-weight:650;letter-spacing:.7px;overflow-wrap:anywhere}.owner-subtitle{color:var(--muted);font-size:12px;margin:6px 0 0}.collection-meta{text-align:right;flex:none}.readonly-chip{display:inline-flex;align-items:center;gap:7px;color:#a6bdd4;font-size:11px;background:#142135;border:1px solid #2e4158;padding:5px 11px;border-radius:99px}.readonly-chip svg{width:13px;height:13px}.collection-meta p{font-size:11px;color:#879cb7;margin:9px 0 0;font-variant-numeric:tabular-nums}.demo-notice,.status-notice{padding:11px 15px;border:1px solid #6c5734;background:#382e1e66;color:#ebd4a0;border-radius:10px;margin:0 0 19px;font-size:12px}.status-notice{border-color:#365775;background:#14334c66;color:#bfd6ee}.collection-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-bottom:22px;border-bottom:1px solid #29384e}.collection-tab{display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid #2b3c55;background:#172237;color:#a9bdd7;min-height:49px;padding:11px 14px;border-radius:11px;white-space:nowrap;font-weight:600;font-size:14px;transition:background-color .15s,border-color .15s}.collection-tab:hover{background:#203249;border-color:#48647d}.collection-tab.selected{background:#133d55;border-color:#37bee9;color:#e8f9ff;box-shadow:inset 0 0 0 1px #6fe5ff0d}.tab-count{display:inline-flex;min-width:24px;padding:0 7px;border-radius:6px;background:#0c17277d;color:#a6bcd6;font-size:12px;font-variant-numeric:tabular-nums}.selected .tab-count{background:#0d2b3e;color:#7bddfb}.ranking-tab svg{width:17px;height:17px;color:#b5a88b}.ranking-tab.selected svg{color:#ffcf68}.toolbar{display:grid;grid-template-columns:226px minmax(180px,1fr) auto auto;gap:12px;align-items:center;padding:22px 0 21px}.sort-field{display:flex;align-items:center;gap:9px;position:relative;min-width:0;height:43px;background:#1e2b41;border:1px solid #35465f;border-radius:10px;padding-left:12px}.sort-field>svg:first-child{width:17px;height:17px;color:#8fa7c3}.sort-field select{width:100%;height:100%;border:0;background:transparent;font-size:12px;font-weight:600;appearance:none;min-width:0;padding:0 27px 0 0;cursor:pointer;outline-offset:2px}.sort-field option{background:#172238;color:#edf4ff}.chevron{position:absolute;right:8px;width:15px;height:15px;pointer-events:none;color:#91abc8}.search-field{display:flex;align-items:center;gap:10px;min-width:0;height:43px;background:#0b1524;border:1px solid #2e405a;border-radius:10px;padding:0 13px}.search-field>svg{color:#6983a0;width:17px;height:17px}.search-field:focus-within{border-color:#3fb8dd;box-shadow:0 0 0 2px #38b6e014}.search-field input{min-width:0;width:100%;padding:8px 0;background:transparent;border:0;font-size:13px;outline:none}.search-field input::placeholder{color:#7188a5}.search-field input::-webkit-search-cancel-button{display:none}.search-field button{border:0;background:none;color:#97acc6;font-size:22px;padding:0 3px;line-height:1}.recommended-filter{display:flex;align-items:center;gap:7px;cursor:pointer;min-height:43px;white-space:nowrap;color:#b1bfd0;font-size:12px;padding:0 5px}.recommended-filter input{accent-color:var(--cyan);width:15px;height:15px;margin:0}.recommended-filter svg{width:15px;height:15px;color:#e9be64}.size-control{display:flex;align-items:center;gap:5px;padding-left:12px;border-left:1px solid #2d3c50;white-space:nowrap}.size-control>span{font-size:11px;color:#8ea4be;margin-right:4px}.size-control button{width:32px;height:32px;border:1px solid #2b3d55;background:#172336;color:#b8c8dd;border-radius:8px;font-size:12px}.size-control button.selected{border-color:#36bce8;background:#143f59;color:#c3f0ff}.results-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:1px 0 18px}.results-heading h2{font-size:17px;letter-spacing:.5px;font-weight:600;margin:0}.results-heading p{font-size:11px;color:#8097b3;margin:0;text-align:right}.ranking-hint{color:#8fa6c0;font-size:12px;margin:-5px 0 20px}.games-grid{--card-width:240px;display:grid;grid-template-columns:repeat(auto-fill,minmax(0,var(--card-width)));gap:24px 22px;justify-content:center;align-items:start}.games-grid[data-size=Large]{--card-width:300px}.games-grid[data-size=Small]{--card-width:180px;gap:21px 18px}.game-card{min-width:0;background:#172235;border:1px solid #2a3b53;border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 24px #00000014;position:relative;contain:layout style}.cover-box{position:relative;aspect-ratio:240/338;background:#09111d;overflow:hidden;display:flex;align-items:center;justify-content:center}.cover-box img{display:block;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .18s}.cover-box img.loaded{opacity:1}.cover-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#6d829b;background:radial-gradient(ellipse at 50% 42%,#1b29403d,transparent 70%),#0c1625;font-size:11px;text-align:center}.cover-placeholder svg{width:45px;height:45px;stroke:#839bb4;stroke-width:1.2}.cover-box.has-cover .cover-placeholder{display:none}.evaluation{position:absolute;top:11px;left:11px;z-index:1;padding:4px 9px;border:1px solid #ad872f;border-radius:7px;background:#392c0fe8;color:#ffcf5c;font-size:11px;font-weight:650;display:flex;align-items:center;gap:5px;max-width:calc(100% - 22px);box-shadow:0 3px 12px #0003;white-space:nowrap}.evaluation[data-evaluation="2"]{background:#17332ff0;border-color:#508e7c;color:#a8e0c9}.evaluation[data-evaluation="3"]{background:#26334af0;border-color:#697c94;color:#d3dfef}.evaluation[data-evaluation="4"]{background:#382627f0;border-color:#a36167;color:#f1b7bc}.release-year{position:absolute;right:10px;bottom:10px;padding:1px 8px;border:1px solid #365a70;background:#143048e8;color:#84d9f6;border-radius:99px;font-size:10px;font-variant-numeric:tabular-nums}.card-content{padding:14px 14px 13px}.game-title{padding:1px 0 1px 11px;position:relative;margin:0 0 12px;min-height:42px;display:flex;flex-direction:column;justify-content:center;font-size:14px;font-weight:600;line-height:1.45;color:#f1f6ff;overflow-wrap:anywhere}.game-title:before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:3px;background:#39c2f2;border-radius:3px}.secondary-name{font-size:11px;color:#a0b4cc;font-weight:400;margin-top:4px}.card-divider{height:1px;background:#314159;margin-bottom:11px}.time-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}.metric-label{display:block;font-size:10px;color:#93a9c2;margin-bottom:3px;letter-spacing:.2px}.playtime-value{font-size:19px;font-weight:650;line-height:1.3;letter-spacing:.4px;color:#35c7f4;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.progress-group{text-align:right}.progress-pill{display:inline-block;border-radius:99px;padding:2px 8px;color:#cee6ff;background:#22405f;font-size:10px;font-weight:600;white-space:nowrap}.progress-pill.completed{color:#c4ecdf;background:#254b43}.runtime-label{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:12px;padding:5px 8px;background:#101c2d;border-radius:7px;font-size:10px;color:#859cb7}.runtime-value{color:#91a6bf;text-align:right;overflow-wrap:anywhere}.runtime-value.active{color:#78cfb6}.runtime-value.active:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:#66c8a2;margin-right:5px;vertical-align:middle}.date-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding-top:11px}.date-grid>div:last-child{text-align:right}.date-value{font-size:11px;color:#d4dfed;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.store-link{display:flex;align-items:center;justify-content:center;gap:7px;min-height:34px;margin-top:13px;text-decoration:none;background:#202f45;border:1px solid #354963;border-radius:8px;color:#d9e8f9;font-weight:600;font-size:11px}.store-link:hover{background:#29425a;border-color:#5589a6}.store-link svg{width:13px;height:13px}.games-grid[data-size=Small] .card-content{padding:11px}.games-grid[data-size=Small] .game-title{font-size:12px;min-height:38px;margin-bottom:10px}.games-grid[data-size=Small] .secondary-name{font-size:10px}.games-grid[data-size=Small] .playtime-value{font-size:16px}.games-grid[data-size=Small] .metric-label{font-size:9px}.games-grid[data-size=Small] .progress-pill{font-size:9px;padding:2px 6px}.games-grid[data-size=Small] .time-progress{gap:5px}.games-grid[data-size=Small] .runtime-label{font-size:9px;padding:5px 6px}.games-grid[data-size=Small] .evaluation{top:8px;left:8px;font-size:10px;padding:3px 7px}.games-grid[data-size=Small] .date-value{font-size:10px}.games-grid[data-size=Large] .game-title{font-size:16px}.games-grid[data-size=Large] .playtime-value{font-size:23px}.games-grid[data-size=Large] .card-content{padding:17px}.games-grid[data-size=Large] .metric-label{font-size:11px}.games-grid[data-size=Large] .date-value{font-size:12px}.ranking-list{list-style:none;padding:0;margin:0 auto;display:grid;gap:14px;max-width:950px}.ranking-row{display:grid;grid-template-columns:47px 74px minmax(0,1fr) auto;align-items:center;gap:18px;min-height:124px;border:1px solid #30425d;border-left-width:3px;border-radius:13px;background:#172238;padding:11px 17px;overflow:hidden}.ranking-row:nth-child(1){border-color:#9d7b38;background:linear-gradient(115deg,#302a2050,transparent 50%),#172238}.ranking-row:nth-child(2){border-color:#72879d}.ranking-row:nth-child(3){border-color:#8f654a}.rank-badge{width:42px;height:42px;display:grid;place-items:center;color:#8ca1ba;border-radius:50%;font-size:24px;font-weight:600;font-variant-numeric:tabular-nums}.ranking-row:nth-child(1) .rank-badge{color:#f4c95e;border:1px solid #d5aa48;background:#54401324}.ranking-row:nth-child(2) .rank-badge{color:#d6e3f0;border:1px solid #8b9fb6;background:#bdc9db0b}.ranking-row:nth-child(3) .rank-badge{color:#dfac83;border:1px solid #a87550;background:#9f664b13}.ranking-row .cover-box{width:74px;border-radius:3px}.ranking-row .cover-placeholder span{display:none}.ranking-row .cover-placeholder svg{width:28px;height:28px}.ranking-copy{min-width:0}.ranking-copy h3{font-size:16px;font-weight:600;margin:0;overflow-wrap:anywhere}.ranking-copy .secondary-name{display:block;margin-top:5px}.ranking-copy .ranking-time{color:#8faac3;font-size:11px;margin-top:10px}.ranking-copy .ranking-time strong{color:#68d4f3;font-weight:600;margin-left:9px}.ranking-row .store-link{padding:0 14px;margin:0;min-height:36px;white-space:nowrap}.state-panel{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:630px;padding:55px 28px 61px;margin:55px auto 65px;background:linear-gradient(145deg,#172339a8,#101a2ad9);border:1px solid #2c405a;border-radius:20px;box-shadow:0 16px 55px #00000017}.state-orbit{display:grid;place-items:center;width:90px;height:90px;border-radius:27px;background:#14263e;border:1px solid #2d4864;margin-bottom:24px;box-shadow:0 0 40px #25b2e40a}.state-orbit svg{width:56px;height:56px;color:#7fb1d3;stroke-width:2}.state-panel h2{font-weight:600;font-size:21px;margin:0 0 9px}.state-panel p{max-width:440px;margin:0;color:#9fb2ca;font-size:13px;line-height:1.9}.primary-button{background:#087eaa;border:1px solid #39c9f5;border-radius:10px;color:#f4fcff;padding:10px 20px;margin-top:23px;font-weight:600}.primary-button:hover{background:#0a96c6}.footer{display:flex;justify-content:space-between;gap:16px;align-items:center;max-width:1536px;margin:0 auto;padding:22px 40px;border-top:1px solid #23334a;color:#748aa5;font-size:11px}.footer p{margin:0}.footer-divider{padding:0 11px;color:#38516e}.page:focus{outline:none}
@media(min-width:1600px){.page{padding-top:44px}.collection-heading{margin-bottom:37px}.masthead-inner{padding-top:26px;padding-bottom:26px}}
@media(max-width:1090px){.toolbar{grid-template-columns:226px minmax(200px,1fr) auto}.size-control{grid-column:1/-1;justify-self:end;border:0;padding:0;margin-top:1px}.toolbar{padding-bottom:16px;row-gap:12px}.collection-tabs{gap:9px}.collection-tab{font-size:13px;padding:11px 8px;gap:8px}.page,.masthead-inner,.footer{padding-left:28px;padding-right:28px}}
@media(max-width:680px){.masthead-inner{padding:17px 20px}.brand{gap:12px}.brand img{width:46px;height:46px;border-radius:13px}.brand strong{font-size:19px;letter-spacing:.5px}.brand-en{font-size:8px;letter-spacing:1.9px;gap:8px;margin-top:3px}.brand-en i{width:23px}.masthead-label{font-size:0;gap:0}.masthead-label svg{width:21px;height:21px;color:#7d9dbe}.page{padding:27px 20px 43px}.collection-heading{align-items:flex-start;margin-bottom:25px;gap:12px}.owner-block{gap:12px}.owner-avatar{width:48px;height:48px;border-radius:15px;font-size:20px}.eyebrow{font-size:9px;letter-spacing:1.5px}h1{font-size:22px}.owner-subtitle{font-size:10px}.collection-meta{max-width:114px}.readonly-chip{font-size:10px;padding:4px 8px;gap:5px}.collection-meta p{font-size:9px;max-width:110px;line-height:1.7}.collection-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-bottom:19px}.collection-tab{min-height:44px;font-size:13px}.toolbar{grid-template-columns:minmax(0,1fr) auto;gap:11px;padding-top:18px}.sort-field{grid-column:1/-1}.search-field{grid-column:1/-1}.recommended-filter{grid-column:1;justify-self:start;min-height:32px;padding:0;font-size:11px}.size-control{grid-column:2;grid-row:auto;margin:0}.size-control>span{font-size:10px;margin-right:2px}.size-control button{width:30px;height:30px}.results-heading{margin:3px 0 16px}.results-heading h2{font-size:16px}.results-heading p{font-size:10px}.games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 12px}.games-grid[data-size=Large]{grid-template-columns:minmax(0,300px);gap:20px}.games-grid[data-size=Small]{grid-template-columns:repeat(2,minmax(0,180px));gap:17px 12px}.game-card{border-radius:12px}.card-content{padding:11px 10px}.game-title{font-size:12px;min-height:38px;padding-left:9px;margin-bottom:10px}.secondary-name{font-size:10px}.playtime-value{font-size:16px}.metric-label{font-size:9px}.time-progress{grid-template-columns:minmax(0,1fr);gap:6px}.progress-group{display:flex;align-items:center;gap:7px;text-align:left}.progress-group .metric-label{margin:0}.progress-pill{font-size:9px;padding:1px 7px}.runtime-label{font-size:9px;padding:5px 6px;gap:3px;align-items:start;flex-direction:column;margin-top:9px}.runtime-value{text-align:left}.date-grid{gap:5px;padding-top:9px}.date-value{font-size:9px}.date-grid .metric-label{font-size:8px}.store-link{font-size:10px;min-height:32px;margin-top:11px}.evaluation{font-size:9px;left:8px;top:8px;padding:3px 7px;max-width:calc(100% - 16px)}.release-year{font-size:9px;padding:0 6px;right:7px;bottom:7px}.games-grid[data-size=Small] .card-content{padding:10px}.games-grid[data-size=Small] .time-progress{grid-template-columns:minmax(0,1fr)}.games-grid[data-size=Large] .time-progress{grid-template-columns:minmax(0,1fr) auto}.games-grid[data-size=Large] .progress-group{display:block;text-align:right}.games-grid[data-size=Large] .progress-group .metric-label{margin-bottom:4px}.games-grid[data-size=Large] .runtime-label{flex-direction:row;align-items:center;font-size:10px}.games-grid[data-size=Large] .date-grid{gap:10px;padding-top:11px}.games-grid[data-size=Large] .date-grid .metric-label{font-size:10px}.games-grid[data-size=Large] .date-value{font-size:11px}.cover-placeholder svg{width:34px;height:34px}.cover-placeholder{font-size:9px}.ranking-row{grid-template-columns:31px 57px minmax(0,1fr);gap:10px;padding:10px;min-height:104px;border-radius:11px}.rank-badge{width:29px;height:29px;font-size:18px}.ranking-row .cover-box{width:57px}.ranking-copy h3{font-size:12px}.ranking-copy .secondary-name{font-size:10px;margin-top:3px}.ranking-copy .ranking-time{font-size:10px;margin-top:6px}.ranking-copy .ranking-time strong{margin-left:4px}.ranking-row .store-link{grid-column:3;justify-self:start;padding:0 10px;min-height:29px;font-size:9px;margin-top:-5px}.ranking-row:has(.store-link) .cover-box{grid-row:1/span 2}.ranking-row:has(.store-link) .rank-badge{grid-row:1/span 2}.ranking-row:has(.store-link){row-gap:2px}.ranking-hint{font-size:10px}.state-panel{margin:25px auto 38px;padding:40px 20px 45px;border-radius:16px}.state-panel h2{font-size:19px}.state-panel p{font-size:12px}.state-orbit{width:76px;height:76px;border-radius:24px;margin-bottom:20px}.footer{padding:19px 20px;font-size:9px;flex-direction:column;align-items:flex-start;gap:6px}.footer-divider{padding:0 8px}}
@media(max-width:370px){.page{padding-left:14px;padding-right:14px}.masthead-inner{padding-left:16px;padding-right:16px}.brand strong{font-size:17px}.owner-avatar{display:none}.collection-meta{max-width:96px}.collection-meta p{max-width:96px}.size-control>span{display:none}.game-title{font-size:11px}.games-grid{gap:15px 10px}.progress-pill{font-size:8px}.date-value{font-size:8px}.metric-label{letter-spacing:0}.brand-en{letter-spacing:1.5px}}
body[data-skin=CosmicHorizon]{background:linear-gradient(#050912b0,#050912b0),url('/assets/skin-cosmic.jpg') center/cover fixed,var(--background)}
body[data-skin=NeonGamingRoom]{background:linear-gradient(#050912bc,#050912bc),url('/assets/skin-neon.jpg') center/cover fixed,var(--background)}
@media(max-width:680px){.games-grid:not([data-size=Large]):not([data-size=Small]){grid-template-columns:repeat(2,minmax(0,240px))}.ranking-row:has(.store-link:not([hidden])) .cover-box,.ranking-row:has(.store-link:not([hidden])) .rank-badge{grid-row:1/span 2}.ranking-row:has(.store-link[hidden]) .cover-box,.ranking-row:has(.store-link[hidden]) .rank-badge{grid-row:auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
.games-grid[data-size=Large] .cover-box{aspect-ratio:300/423}.games-grid[data-size=Small] .cover-box{aspect-ratio:180/254}
