.detail-main{max-width:none;padding-bottom:34px}.game-detail-heading{padding:3px 0 17px}.game-detail-heading .section-kicker{margin:0 0 6px;color:var(--accent)}.game-detail-heading h1{margin:0;font-size:clamp(28px,4vw,38px);font-weight:900;letter-spacing:-.07em}.game-detail-lead{margin:6px 0 10px;color:var(--text-muted);font-size:14px}.detail-meta{display:flex;flex-wrap:wrap;gap:7px}.detail-meta span{min-height:30px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;background:var(--surface-soft);color:#5f4b47;font-size:11px;font-weight:750}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.detail-primary{min-width:0}.game-poster{position:relative;display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:14px;min-height:150px;padding:16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.game-poster[hidden]{display:none}.poster-art{position:relative;height:112px;display:grid;place-items:center;overflow:hidden;border-radius:var(--radius-md);background:var(--surface-soft)}.poster-art:before,.poster-art:after{position:absolute;width:96px;height:96px;border:1px solid #C94B4526;border-radius:50%;content:""}.poster-art:after{width:64px;height:64px}.poster-character{z-index:1;width:54px;height:54px;display:grid;place-items:center;border-radius:15px;background:var(--accent);color:#fff;font-size:31px;font-weight:900;transform:rotate(-5deg)}.poster-tile{position:absolute;z-index:2;width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:#fff;color:var(--text);font-weight:850;box-shadow:0 2px 8px #17213a16}.tile-one{left:9px;bottom:10px;transform:rotate(-11deg)}.tile-two{right:8px;top:8px;transform:rotate(9deg)}.poster-copy .section-kicker{margin-bottom:5px;color:var(--accent);font-size:9px}.poster-copy h2{margin:0 0 5px;font-size:18px;font-weight:900;letter-spacing:-.05em}.poster-copy p:last-child{margin:0;color:var(--text-muted);font-size:11px;line-height:1.5}.play-cta{grid-column:1 / -1;width:100%;min-height:50px;display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:var(--radius-md);background:var(--accent);color:#fff;font-size:15px;font-weight:900}.play-cta:hover{background:#a93e3a}.play-cta:disabled{opacity:.7;cursor:wait}.load-status{grid-column:1 / -1;margin:-5px 0 0;color:var(--text-muted);font-size:11px;text-align:center}#app[hidden]{display:none}.detail-howto,.detail-about{margin-top:14px}.detail-howto h2,.detail-about h2{margin:0 0 8px;font-size:17px}.detail-howto ol{padding-left:21px;margin:7px 0 0}.detail-howto li,.detail-about p{color:#4f596a;font-size:13px;line-height:1.8}.ranking-panel{min-width:0;padding:16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.ranking-panel .section-heading{margin-bottom:7px}.ranking-panel .section-heading h2{font-size:18px}.ranking-game-tag{padding:5px 8px;border-radius:999px;background:var(--surface-soft);color:#604a45;font-size:9px;font-weight:800;white-space:nowrap}.ranking-panel .ranking-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:9px 0}.ranking-panel .ranking-tab{min-height:44px;padding:0 5px;border:1px solid var(--border);border-radius:9px;background:#fff;color:#545d6c;font-size:11px;font-weight:800}.ranking-panel .ranking-tab[aria-selected=true]{border-color:var(--accent);background:#fce9e2;color:#783432}.ranking-period{margin:0 0 7px;color:var(--text-muted);font-size:11px}.personal-rank{margin:8px 0;padding:10px;border-radius:10px;background:var(--surface-soft);color:#523c39;font-size:12px;font-weight:800}.national-list{margin:0;padding:0;list-style:none}.ranking-row{min-height:42px;display:flex;align-items:center;gap:8px;border-top:1px solid #F1E9E2;color:var(--text);font-size:12px}.ranking-row.is-current-player{background:#fff3ea}.rank-number{width:34px;flex:0 0 auto;text-align:center;font-weight:900}.rank-title{flex:1;min-width:0;font-size:12px;font-weight:750;overflow-wrap:anywhere}.ranking-row strong{flex:0 0 auto;font-size:13px;font-weight:900}.ranking-row strong small{margin-left:3px;color:var(--text-muted);font-size:10px}.rank-1 .rank-number{color:#89600d}.rank-2 .rank-number{color:#566477}.rank-3 .rank-number{color:#905634}.rank-social{display:block;margin-top:2px;color:var(--text-muted);font-size:10px;font-weight:600}.ranking-status{margin:9px 0;color:var(--text-muted);font-size:11px;text-align:center}.ranking-more{width:100%;min-height:44px;margin-top:8px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:12px;font-weight:800}.ranking-more[hidden],.around-me[hidden]{display:none}.ranking-disclaimer{margin:12px 0 0;color:var(--text-muted);font-size:10px;line-height:1.5}.around-me{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.around-me h3{margin:0 0 5px;font-size:13px}.rank-gap{margin:8px 0 0;color:#7b3734;font-size:12px;font-weight:850}.detail-update{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:24px 0 0;padding:16px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.detail-update h2{margin:0;font-size:16px}.detail-update .section-kicker{margin-bottom:4px}.detail-update>p{margin:0;color:#4f596a;font-size:12px;line-height:1.8}.bug-report-link{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:12px 0 0;font-size:11px}.bug-report-link a{color:var(--accent);font-weight:850;text-decoration:none}.bug-report-link span{color:var(--text-muted)}@media(min-width:980px){.detail-grid{grid-template-columns:minmax(0,1fr) minmax(310px,360px);gap:20px}.ranking-panel{position:sticky;top:16px}.game-poster{grid-template-columns:150px minmax(0,1fr);min-height:175px;padding:18px}.poster-art{height:132px}}@media(max-width:520px){.detail-main{padding-bottom:25px}.game-poster{grid-template-columns:92px minmax(0,1fr);gap:10px;padding:12px;border-radius:16px}.poster-art{height:88px}.poster-art:before{width:75px;height:75px}.poster-art:after{width:48px;height:48px}.poster-character{width:44px;height:44px;font-size:25px}.poster-copy h2{font-size:15px}.poster-copy p:last-child{font-size:10px}.detail-update{align-items:flex-start;flex-direction:column;gap:8px}}
