/* GameHiHi v2 experience layer */
.gamejoy-personal-section{margin:0 0 30px}.gamejoy-personal-section[hidden]{display:none!important}.gamejoy-personal-empty{padding:18px 20px;border:1px dashed var(--line);border-radius:16px;background:#fff;color:var(--muted);font-weight:800;text-align:center}

.gamejoy-filter-removed{display:grid;grid-template-columns:minmax(240px,1.7fr) repeat(3,minmax(150px,1fr)) auto auto;gap:10px;align-items:end;margin:0 0 24px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.gamejoy-filter-removed label{display:flex;flex-direction:column;gap:5px;min-width:0}.gamejoy-filter-removed label>span{font-size:11px;line-height:1.2;text-transform:uppercase;letter-spacing:.65px;color:var(--muted);font-weight:900}.gamejoy-filter-removed input,.gamejoy-filter-removed select{width:100%;height:42px;border:1px solid var(--line);border-radius:12px;background:var(--bg);padding:0 12px;color:var(--ink);font:700 14px 'Nunito',sans-serif;outline:none}.gamejoy-filter-removed input:focus,.gamejoy-filter-removed select:focus{border-color:var(--joy);background:#fff}.gamejoy-filter-removed .btn-primary{white-space:nowrap}.gamejoy-filter-removed-reset{height:42px;padding:0 14px;border-radius:12px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--muted);font-weight:900}

.gamejoy-player-root{position:relative}.gamejoy-player-root .player{overflow:visible}.gamejoy-player-root .screen{aspect-ratio:var(--game-aspect,16/9);height:auto;min-height:320px;position:relative;overflow:hidden}.gamejoy-player-root .screen.game-aspect-auto{aspect-ratio:auto;min-height:clamp(360px,58vw,760px)}
.gamejoy-loading-layer,.gamejoy-load-error{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;background:rgba(7,18,31,.78);backdrop-filter:blur(3px);color:#fff;padding:24px;text-align:center}.gamejoy-loading-layer[hidden],.gamejoy-load-error[hidden]{display:none!important}.gamejoy-loading-card,.gamejoy-error-card{width:min(420px,92%);padding:22px;border-radius:20px;background:rgba(var(--theme-footer-rgb),.94);box-shadow:0 18px 50px rgba(0,0,0,.35)}.gamejoy-spinner{width:48px;height:48px;margin:0 auto 14px;border:5px solid rgba(255,255,255,.22);border-top-color:#fff;border-radius:50%;animation:gamejoy-spin .8s linear infinite}@keyframes gamejoy-spin{to{transform:rotate(360deg)}}.gamejoy-loading-card strong,.gamejoy-error-card strong{display:block;font:800 19px 'Fredoka',sans-serif}.gamejoy-loading-card p,.gamejoy-error-card p{margin-top:7px;color:var(--theme-background-alt);font-weight:700}.gamejoy-error-card .btn-primary{margin-top:14px}

.gamejoy-player-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.gamejoy-sync-status{margin-right:auto;display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:900;color:var(--muted)}.gamejoy-sync-status::before{content:"";width:8px;height:8px;border-radius:50%;background:#86A892}.gamejoy-sync-status[data-state=saved]::before{background:var(--green)}.gamejoy-sync-status[data-state=saving]::before{background:var(--sun);animation:gamejoy-pulse 1s ease-in-out infinite}.gamejoy-sync-status[data-state=offline]::before{background:var(--muted)}.gamejoy-sync-status[data-state=error]::before{background:var(--red)}@keyframes gamejoy-pulse{50%{opacity:.3}}
.gamejoy-tool-button{min-width:42px;height:42px;padding:0 12px;border-radius:12px;background:var(--bg);display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--navy);font-weight:900;transition:.18s}.gamejoy-tool-button:hover{background:var(--bg-2);transform:translateY(-1px)}.gamejoy-tool-button svg{width:19px;height:19px;stroke:currentColor;stroke-width:2.2;fill:none}

.gamejoy-vote-box{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:18px 0;padding:13px;background:#fff;border:1px solid var(--line);border-radius:16px}.gamejoy-vote-box>strong{margin-right:auto;font-family:'Fredoka',sans-serif;color:var(--navy)}.gamejoy-vote-button{height:40px;padding:0 13px;border-radius:12px;background:var(--bg);display:inline-flex;align-items:center;gap:7px;font-weight:900;color:var(--ink);transition:.18s}.gamejoy-vote-button:hover,.gamejoy-vote-button.is-active{background:var(--theme-background-alt);color:var(--joy-deep)}.gamejoy-vote-button[data-vote-value="-1"].is-active{background:#fff0f0;color:var(--red)}.gamejoy-vote-summary{font-size:12px;color:var(--muted);font-weight:800}.gamejoy-vote-summary b{color:var(--navy)}

.gamejoy-controls-guide{margin:22px 0;padding:18px;background:#fff;border:1px solid var(--line);border-radius:18px}.gamejoy-controls-guide h3{margin:0 0 14px;color:var(--navy)}.gamejoy-control-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gamejoy-control-card{padding:14px;border-radius:14px;background:var(--bg);min-height:108px}.gamejoy-control-card .icon{font-size:24px;margin-bottom:7px}.gamejoy-control-card strong{display:block;color:var(--navy);font-family:'Fredoka',sans-serif}.gamejoy-control-card p{margin-top:5px;color:var(--muted);font-size:13px;font-weight:700;line-height:1.5}.gamejoy-device-mobile .gamejoy-control-card[data-control-device=desktop],.gamejoy-device-tablet .gamejoy-control-card[data-control-device=desktop]{display:none}.gamejoy-device-desktop .gamejoy-control-card[data-control-device=touch]{display:none}

.gamejoy-mobile-controls{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin:12px 0 18px;padding:14px;background:#111827;border-radius:18px;touch-action:none;user-select:none;-webkit-user-select:none}.gamejoy-mobile-controls[hidden]{display:none!important}.gamejoy-dpad{display:grid;grid-template-columns:repeat(3,54px);grid-template-rows:repeat(3,54px);justify-content:center}.gamejoy-control-key{width:50px;height:50px;border-radius:15px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:20px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 -3px 0 rgba(0,0,0,.22)}.gamejoy-control-key.is-pressed{transform:translateY(2px);background:var(--joy)}.gamejoy-control-key[data-gamejoy-control=ArrowUp]{grid-column:2;grid-row:1}.gamejoy-control-key[data-gamejoy-control=ArrowLeft]{grid-column:1;grid-row:2}.gamejoy-control-key[data-gamejoy-control=ArrowDown]{grid-column:2;grid-row:3}.gamejoy-control-key[data-gamejoy-control=ArrowRight]{grid-column:3;grid-row:2}.gamejoy-action-keys{display:flex;gap:12px}.gamejoy-action-keys .gamejoy-control-key{width:68px;height:68px;border-radius:50%;background:rgba(255,77,79,.8);font-size:14px}.gamejoy-action-keys .gamejoy-control-key:first-child{background:rgba(var(--theme-primary-rgb),.85)}

.gamejoy-report-modal{position:fixed;inset:0;z-index:1000000;background:rgba(8,18,31,.74);display:flex;align-items:center;justify-content:center;padding:18px}.gamejoy-report-modal[hidden]{display:none!important}.gamejoy-report-dialog{width:min(620px,100%);max-height:min(760px,92vh);overflow:auto;background:#fff;border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.35);padding:22px}.gamejoy-report-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.gamejoy-report-head h3{margin:0;color:var(--navy)}.gamejoy-report-close{width:38px;height:38px;border-radius:50%;background:var(--bg);font-size:24px;color:var(--navy)}.gamejoy-report-form label{display:block;margin:0 0 14px;font-weight:900;color:var(--navy)}.gamejoy-report-form textarea,.gamejoy-report-form input[type=file]{width:100%;margin-top:6px}.gamejoy-report-form textarea{min-height:130px;padding:12px;border:1px solid var(--line);border-radius:13px;resize:vertical;font:600 14px 'Nunito',sans-serif}.gamejoy-report-note{font-size:12px;color:var(--muted);line-height:1.5}.gamejoy-report-status{min-height:20px;margin:10px 0;color:var(--joy-deep);font-weight:900}.gamejoy-modal-open{overflow:hidden}

.game-fullscreen-header{display:none}.force_full_screen .game-fullscreen-header,.screen:fullscreen .game-fullscreen-header,.screen:-webkit-full-screen .game-fullscreen-header{display:flex!important;position:fixed;top:0;left:0;right:0;height:70px;background:#fff;z-index:999999;align-items:center;justify-content:space-between;padding:0 14px;border-top:6px solid var(--sun);box-shadow:0 2px 8px rgba(0,0,0,.15)}.gf-left{display:flex;align-items:center;gap:10px;min-width:0}.gf-left img{width:42px;height:42px;border-radius:10px;object-fit:cover;display:flex;align-items:center;justify-content:center;background:var(--theme-background-alt);font-size:24px;flex:0 0 auto}.gf-left strong{display:block;font-size:18px;color:var(--theme-text);line-height:1.1;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gf-minimize{border:0;background:var(--joy);color:#fff;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:1000000;flex:0 0 auto}.gf-minimize svg{width:20px;height:20px;fill:#fff}.force_full_screen,.screen:fullscreen,.screen:-webkit-full-screen{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:999998!important;border-radius:0!important;background:#111!important;aspect-ratio:auto!important}.force_full_screen .game-frame,.screen:fullscreen .game-frame,.screen:-webkit-full-screen .game-frame{position:absolute!important;top:70px!important;left:0!important;width:100%!important;height:calc(100vh - 70px)!important;border:0!important;z-index:999997!important}.force_full_screen .gamejoy-loading-layer,.force_full_screen .gamejoy-load-error,.screen:fullscreen .gamejoy-loading-layer,.screen:fullscreen .gamejoy-load-error{top:70px}.force_full_screen>h3,.force_full_screen>p,.force_full_screen>.big-play,.screen:fullscreen>h3,.screen:fullscreen>p,.screen:fullscreen>.big-play{display:none!important}

@media(max-width:1350px){.gamejoy-filter-removed{grid-template-columns:minmax(220px,1.5fr) repeat(2,minmax(150px,1fr)) auto}.gamejoy-filter-removed label:nth-of-type(n+4){grid-column:auto}}
@media(max-width:980px){.gamejoy-filter-removed{grid-template-columns:repeat(2,minmax(0,1fr))}.gamejoy-filter-removed-search{grid-column:1/-1}.gamejoy-filter-removed .btn-primary,.gamejoy-filter-removed-reset{width:100%}.gamejoy-control-cards{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.gamejoy-player-root .screen{min-height:260px}.gamejoy-control-cards{grid-template-columns:1fr}.gamejoy-mobile-controls{grid-template-columns:1fr;gap:8px}.gamejoy-action-keys{justify-content:center}.gamejoy-vote-box>strong{width:100%;margin-right:0}.gamejoy-filter-removed{grid-template-columns:1fr}.gamejoy-filter-removed-search{grid-column:auto}.force_full_screen .game-fullscreen-header,.screen:fullscreen .game-fullscreen-header,.screen:-webkit-full-screen .game-fullscreen-header{height:60px;padding:0 10px;border-top-width:4px}.force_full_screen .game-frame,.screen:fullscreen .game-frame,.screen:-webkit-full-screen .game-frame{top:60px!important;height:calc(100vh - 60px)!important}.force_full_screen .gamejoy-loading-layer,.force_full_screen .gamejoy-load-error,.screen:fullscreen .gamejoy-loading-layer,.screen:fullscreen .gamejoy-load-error{top:60px}.gf-left img{width:36px;height:36px}.gf-left strong{font-size:15px}.gf-minimize{width:38px;height:38px}}
@media(max-width:420px){.gamejoy-dpad{grid-template-columns:repeat(3,48px);grid-template-rows:repeat(3,48px)}.gamejoy-control-key{width:44px;height:44px}.gamejoy-action-keys .gamejoy-control-key{width:58px;height:58px}.gamejoy-report-dialog{padding:16px;border-radius:18px}}

/* v2.1 linked taxonomies + transparent recommendation explanation */
.gamejoy-taxonomy-panel{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.gamejoy-taxonomy-links{display:contents}
.gamejoy-taxonomy-link,.article-category-button,.gamejoy-inline-taxonomy-link{display:inline-flex;align-items:center;min-height:36px;padding:7px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);box-shadow:0 4px 12px rgba(var(--theme-text-rgb),.07);color:var(--navy);font-size:13px;font-weight:900;line-height:1.2;transition:.18s}
.gamejoy-taxonomy-link:hover,.article-category-button:hover,.gamejoy-inline-taxonomy-link:hover{transform:translateY(-1px);border-color:var(--joy);background:var(--theme-background);color:var(--joy-deep)}
.gamejoy-inline-taxonomy{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}
.gamejoy-inline-taxonomy-link{min-height:28px;padding:4px 8px;font-size:11px;box-shadow:none}
.gamejoy-stat-links{max-width:100%}
.article-category-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}
.article-category-button{background:var(--bg)}
@media(max-width:700px){.gamejoy-stat-links .gamejoy-inline-taxonomy{max-width:150px}.gamejoy-taxonomy-link,.article-category-button{font-size:12px;padding:7px 10px}}


/* v3.1.3 searchable selects, mobile player and report polish */
.gamejoy-filter-removed select.gamejoy-searchable-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.gamejoy-smart-select{position:relative;min-width:0}.gamejoy-smart-select-button{width:100%;height:42px;padding:0 38px 0 13px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--ink);font:800 14px 'Nunito',sans-serif;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}.gamejoy-smart-select-button::after{content:"";position:absolute;right:14px;top:50%;width:8px;height:8px;border-right:2px solid var(--navy);border-bottom:2px solid var(--navy);transform:translateY(-70%) rotate(45deg);transition:.18s}.gamejoy-smart-select-button[aria-expanded=true]{border-color:var(--joy);background:#fff;box-shadow:0 0 0 3px rgba(var(--theme-primary-rgb),.12)}.gamejoy-smart-select-button[aria-expanded=true]::after{transform:translateY(-25%) rotate(225deg)}
.gamejoy-smart-select-panel{position:absolute;z-index:1000;left:0;right:0;top:calc(100% + 7px);padding:9px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 45px rgba(var(--theme-text-rgb),.2)}.gamejoy-smart-select-search{height:40px!important;margin:0 0 7px!important;background:var(--theme-background)!important;border-radius:10px!important}.gamejoy-smart-select-list{max-height:230px;overflow:auto;display:flex;flex-direction:column;gap:3px}.gamejoy-smart-select-option{min-height:38px;padding:8px 10px;border-radius:9px;background:transparent;color:var(--ink);font:800 14px 'Nunito',sans-serif;text-align:left}.gamejoy-smart-select-option:hover,.gamejoy-smart-select-option.is-selected{background:var(--theme-background-alt);color:var(--joy-deep)}.gamejoy-smart-select-empty{padding:12px;color:var(--muted);font-weight:800;text-align:center}
.gamejoy-report-file-field>input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.gamejoy-file-picker{display:flex;align-items:center;gap:10px;margin-top:7px;padding:8px;border:1px dashed color-mix(in srgb,var(--theme-primary) 42%,var(--theme-surface));border-radius:14px;background:var(--theme-background);cursor:pointer}.gamejoy-file-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border-radius:10px;background:var(--navy);color:#fff;font-weight:900;white-space:nowrap}.gamejoy-file-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:13px;font-weight:800}.gamejoy-report-actions{display:flex;gap:10px;align-items:center;margin-top:8px}.gamejoy-report-actions .btn-primary,.gamejoy-report-actions .gamejoy-filter-removed-reset{min-width:130px;height:44px;border-radius:12px}.gamejoy-report-actions .btn-primary{box-shadow:0 9px 22px rgba(var(--theme-primary-rgb),.22)}
html.gamejoy-modal-open{overflow:hidden}.gamejoy-player-root .game-frame{width:100%;height:100%;border:0;display:block;background:#111}.gamejoy-player-root .screen.is-playing{background:#111!important}.gamejoy-player-root .screen.is-playing>.gamejoy-player-poster,.gamejoy-player-root .screen.is-playing>h3,.gamejoy-player-root .screen.is-playing>p,.gamejoy-player-root .screen.is-playing>.big-play{display:none!important}
html.gamejoy-ios-fullscreen{overflow:hidden!important;position:fixed!important;inset:0!important;width:100%!important;height:100%!important}html.gamejoy-ios-fullscreen .screen.force_full_screen{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;z-index:999999!important;background:#111!important;border-radius:0!important}
@media(max-width:700px){.gamejoy-player-root .screen{min-height:220px;aspect-ratio:16/9}.gamejoy-player-root .screen.game-aspect-auto{min-height:clamp(260px,72vw,520px)}.gamejoy-player-root .game-frame{min-height:220px}.gamejoy-player-toolbar .pname{max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gamejoy-report-modal{padding:10px;align-items:flex-end}.gamejoy-report-dialog{width:100%;max-height:90dvh;border-radius:20px 20px 0 0}.gamejoy-report-actions{display:grid;grid-template-columns:1fr 1fr}.gamejoy-report-actions .btn-primary,.gamejoy-report-actions .gamejoy-filter-removed-reset{width:100%;min-width:0}.gamejoy-file-picker{align-items:stretch;flex-direction:column}.gamejoy-file-button{width:100%}.gamejoy-file-name{text-align:center}.gamejoy-smart-select-panel{position:fixed;left:12px;right:12px;top:auto;bottom:12px;max-height:65dvh}.gamejoy-smart-select-list{max-height:44dvh}}

/* v3.1.4: prevent automatic focus zoom on iPhone and small touch devices.
   Keep pinch-to-zoom available; iOS does not auto-zoom form controls at 16px+. */
html {
  -webkit-text-size-adjust: 100%;
}

@media (max-width: 782px) {
  input:not([type="checkbox"]):not([type="radio"]),
  select,
  textarea,
  [contenteditable="true"] {
    font-size: 16px !important;
  }
}


.gamejoy-taxonomy-link, .article-category-button, .gamejoy-inline-taxonomy-link {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: 0 4px 12px rgba(20, 54, 92, .07);
    color: var(--navy);
    font-size: 13px;
    font-weight: 900;
    line-height: 1.2;
    transition: .18s;
    align-items: center;
    justify-content: center;
    gap: 5px;
}
/* v3.1.6: tap-to-start iframe and polished game article content */
.gamejoy-player-root .screen{overflow:hidden;isolation:isolate}
.gamejoy-player-root .screen:not(.is-playing) .gamejoy-player-poster{filter:brightness(.72);transform:scale(1.01)}
.gamejoy-player-root .screen:not(.is-playing)::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,18,35,.08),rgba(5,18,35,.48));pointer-events:none;z-index:1}
.gamejoy-player-root .screen:not(.is-playing)>.gamejoy-player-start-title,.gamejoy-player-root .screen:not(.is-playing)>p,.gamejoy-player-root .screen:not(.is-playing)>.big-play{position:relative;z-index:3}
.gamejoy-player-root .screen:not(.is-playing)>.gamejoy-player-start-title{max-width:min(86%,680px);margin:0 auto 7px;color:#fff;text-align:center;text-shadow:0 2px 12px rgba(0,0,0,.42)}
.gamejoy-player-root .screen:not(.is-playing)>p{max-width:min(86%,620px);margin:0 auto 16px;color:rgba(255,255,255,.92);text-align:center;font-weight:800;text-shadow:0 2px 10px rgba(0,0,0,.38)}
.gamejoy-player-root .big-play{width:76px;height:76px;border:5px solid rgba(255,255,255,.86);box-shadow:0 14px 34px rgba(0,0,0,.35),0 0 0 9px rgba(255,255,255,.14);transition:transform .18s ease,box-shadow .18s ease}
.gamejoy-player-root .big-play:hover{transform:scale(1.06);box-shadow:0 18px 42px rgba(0,0,0,.4),0 0 0 11px rgba(255,255,255,.17)}
.gamejoy-player-root .big-play:active{transform:scale(.96)}
.gamejoy-player-root .game-frame{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-width:100%;min-height:100%;border:0!important;background:#000;z-index:5;touch-action:auto}

.gamejoy-player-root .desc.entry-content{margin-top:24px;padding:clamp(18px,3vw,34px);background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 34px rgba(var(--theme-text-rgb),.08);color:#365B43;font-size:17px;line-height:1.78;overflow-wrap:anywhere}
.gamejoy-player-root .desc.entry-content>*:first-child{margin-top:0}
.gamejoy-player-root .desc.entry-content>*:last-child{margin-bottom:0}
.gamejoy-player-root .desc.entry-content h2,.gamejoy-player-root .desc.entry-content h3,.gamejoy-player-root .desc.entry-content h4{color:var(--navy);font-family:'Fredoka',sans-serif;line-height:1.22;letter-spacing:-.015em}
.gamejoy-player-root .desc.entry-content h2{margin:1.65em 0 .55em;padding-bottom:.38em;border-bottom:2px solid var(--theme-background-alt);font-size:clamp(25px,3vw,34px)}
.gamejoy-player-root .desc.entry-content h3{margin:1.35em 0 .45em;font-size:clamp(21px,2.5vw,28px)}
.gamejoy-player-root .desc.entry-content h4{margin:1.15em 0 .35em;font-size:19px}
.gamejoy-player-root .desc.entry-content p{margin:.65em 0 1em}
.gamejoy-player-root .desc.entry-content strong{color:var(--theme-text);font-weight:900}
.gamejoy-player-root .desc.entry-content a{color:var(--joy-deep);font-weight:900;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.gamejoy-player-root .desc.entry-content ul,.gamejoy-player-root .desc.entry-content ol{margin:.8em 0 1.2em;padding-left:1.35em}
.gamejoy-player-root .desc.entry-content li{margin:.38em 0;padding-left:.2em}
.gamejoy-player-root .desc.entry-content blockquote{margin:1.25em 0;padding:16px 18px;border-left:5px solid var(--joy);border-radius:0 14px 14px 0;background:var(--theme-background);color:#365B43;font-weight:700}
.gamejoy-player-root .desc.entry-content img{max-width:100%;height:auto;border-radius:16px;box-shadow:0 10px 26px rgba(18,46,78,.12)}
.gamejoy-player-root .desc.entry-content table{display:block;width:100%;overflow-x:auto;border-collapse:collapse}
.gamejoy-player-root .desc.entry-content th,.gamejoy-player-root .desc.entry-content td{padding:11px 13px;border:1px solid var(--line);text-align:left}
.gamejoy-player-root .desc.entry-content th{background:var(--theme-background);color:var(--navy)}

@media(max-width:700px){
  .gamejoy-player-root .screen.is-playing{height:min(72dvh,720px);min-height:320px;aspect-ratio:auto!important}
  .gamejoy-player-root .screen:not(.is-playing)>.gamejoy-player-start-title{font-size:20px;margin-bottom:4px}
  .gamejoy-player-root .screen:not(.is-playing)>p{font-size:14px;margin-bottom:13px}
  .gamejoy-player-root .big-play{width:66px;height:66px;border-width:4px}
  .gamejoy-player-root .desc.entry-content{margin-top:18px;padding:18px 16px;border-radius:17px;font-size:16px;line-height:1.72}
  .gamejoy-player-root .desc.entry-content h2{font-size:25px}
  .gamejoy-player-root .desc.entry-content h3{font-size:21px}
	.gamejoy-player-root .screen:not(.is-playing) .gamejoy-player-poster {
    filter: brightness(.72);
    transform: scale(0.5);
}
	.gamejoy-player-root .screen:not(.is-playing)>.big-play{
		    position: absolute;
	}
	.gamejoy-sync-status{
		    display: none;
	}
}
@media(max-width:420px){.gamejoy-player-root .screen.is-playing{height:68dvh;min-height:300px}}
.detail-stats .st .v {
    font-family: 'Fredoka';
    font-weight: 600;
    font-size: 20px;
    color: var(--navy);
    padding: 7px 12px;
}.detail-stats .st .v.gamejoy-stat-links {
    padding: 0;
}
@media (max-width: 700px) {
    .gamejoy-player-root .screen {
        min-height: 200px;
        aspect-ratio: 16 / 9;
    }
}
.force_full_screen>h3, .force_full_screen>p, .force_full_screen>.big-play, .screen:fullscreen>h3, .screen:fullscreen>p, .screen:fullscreen>.big-play {
    display: flex !important;
}

/* v3.2.0 — homepage portrait carousels, mixed mosaic grids and compact landscape player. */
.gamejoy-portrait-section{margin-bottom:34px}
.gamejoy-portrait-shell{position:relative;min-width:0}
.gamejoy-portrait-grid.grid,.gamejoy-portrait-grid.grid.big{
  display:grid;
  grid-template-columns:none!important;
  grid-auto-flow:column;
  grid-auto-columns:clamp(150px,16vw,218px);
  gap:14px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:4px 3px 12px;
  scroll-snap-type:x proximity;
  scroll-padding-inline:3px;
  overscroll-behavior-inline:contain;
  scrollbar-width:none;
}
.gamejoy-portrait-grid::-webkit-scrollbar{display:none}
.gamejoy-portrait-grid>.card,
.gamejoy-portrait-grid>.card.wide,
.gamejoy-portrait-grid>.card.gamejoy-tile-2x2{
  grid-column:auto!important;
  grid-row:auto!important;
  width:100%;
  height:auto!important;
  aspect-ratio:2/3!important;
  scroll-snap-align:start;
  border-radius:18px;
}
.gamejoy-portrait-grid>.card .overlay{opacity:1;padding:13px}
.gamejoy-portrait-grid>.card .meta .t{font-size:15px}
.gamejoy-portrait-grid>.card .meta .s{font-size:11px}
.gamejoy-portrait-arrow{position:absolute;top:50%;z-index:8;width:42px;height:42px;margin-top:-21px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(var(--theme-footer-rgb),.88);color:#fff;font:900 30px/1 'Fredoka',sans-serif;box-shadow:0 10px 28px rgba(var(--theme-footer-rgb),.28);transition:transform .18s ease,background .18s ease}
.gamejoy-portrait-arrow:hover{transform:scale(1.08);background:var(--joy-deep)}
.gamejoy-portrait-arrow.is-prev{left:-12px}
.gamejoy-portrait-arrow.is-next{right:-12px}

.gamejoy-mosaic-grid{grid-auto-flow:dense;grid-auto-rows:8px;align-items:start}
.gamejoy-mosaic-grid>.card{aspect-ratio:auto!important;min-width:0}
.gamejoy-mosaic-grid>.card.gamejoy-tile-2x2{grid-column:span 2}

.rail .gamejoy-mosaic-grid{display:grid;grid-auto-rows:auto}
.rail .gamejoy-mosaic-grid>.card,
.rail .gamejoy-mosaic-grid>.card.gamejoy-tile-2x2{grid-column:span 1!important;grid-row:auto!important;height:auto!important;aspect-ratio:1/1!important}

/* A started game must not leave the poster copy/play button over the iframe. */
.force_full_screen.is-playing>h3,
.force_full_screen.is-playing>p,
.force_full_screen.is-playing>.big-play,
.screen:fullscreen.is-playing>h3,
.screen:fullscreen.is-playing>p,
.screen:fullscreen.is-playing>.big-play,
.screen:-webkit-full-screen.is-playing>h3,
.screen:-webkit-full-screen.is-playing>p,
.screen:-webkit-full-screen.is-playing>.big-play{display:none!important}

@media(max-width:767px){
  .gamejoy-portrait-grid.grid,.gamejoy-portrait-grid.grid.big{grid-auto-columns:clamp(138px,42vw,190px);gap:11px;padding-bottom:8px}
  .gamejoy-portrait-arrow{display:none}
}

/* In landscape phone view the normal embedded player uses about half the viewport.
   Real fullscreen remains available, but its title bar is compact. */
@media (orientation:landscape) and (max-height:600px) and (pointer:coarse){
  .gamejoy-player-root .screen:not(.force_full_screen){
    height:min(calc(52dvh - 42px),260px)!important;
    min-height:140px!important;
    max-height:260px!important;
    aspect-ratio:auto!important;
    padding:8px!important;
  }
  .gamejoy-player-root .screen:not(.force_full_screen) .game-frame{min-height:0!important;height:100%!important}
  .gamejoy-player-root .screen:not(.force_full_screen)>p:not(.gamejoy-player-start-title){display:none}
  .gamejoy-player-root .screen:not(.force_full_screen)>.gamejoy-player-start-title{font-size:17px!important;margin-bottom:6px!important}
  .gamejoy-player-root .screen:not(.force_full_screen)>.big-play{width:54px;height:54px;border-width:3px}
  .gamejoy-player-root .player .bar{height:42px!important;min-height:42px!important;padding:4px 10px!important}
  .gamejoy-player-root .player .bar .pname{font-size:12px;max-width:45%}
  .gamejoy-player-root .player .bar .tools button{width:32px;height:32px}

  .force_full_screen .game-fullscreen-header,
  .screen:fullscreen .game-fullscreen-header,
  .screen:-webkit-full-screen .game-fullscreen-header{height:44px!important;padding:0 8px!important;border-top-width:3px!important}
  .force_full_screen .game-frame,
  .screen:fullscreen .game-frame,
  .screen:-webkit-full-screen .game-frame{top:44px!important;height:calc(100dvh - 44px)!important;min-height:0!important}
  .force_full_screen .gamejoy-loading-layer,
  .force_full_screen .gamejoy-load-error,
  .screen:fullscreen .gamejoy-loading-layer,
  .screen:fullscreen .gamejoy-load-error,
  .screen:-webkit-full-screen .gamejoy-loading-layer,
  .screen:-webkit-full-screen .gamejoy-load-error{top:44px!important}
  .gf-left img{width:30px!important;height:30px!important;border-radius:8px!important}
  .gf-left strong{font-size:13px!important}
  .gf-minimize{width:32px!important;height:32px!important}
}

@media(prefers-reduced-motion:reduce){
  .gamejoy-portrait-grid{scroll-behavior:auto}
  .gamejoy-portrait-arrow{transition:none}
}

/* v3.3.0 universal dense mosaic */
.gamejoy-mosaic-grid{grid-auto-flow:dense;grid-auto-rows:8px;align-items:start}.gamejoy-mosaic-grid>.card{aspect-ratio:auto!important;min-width:0}.gamejoy-mosaic-grid>.card.gamejoy-tile-1x2{grid-column:span 1}.gamejoy-mosaic-grid>.card.gamejoy-tile-2x1,.gamejoy-mosaic-grid>.card.gamejoy-tile-2x2{grid-column:span 2}.gamejoy-similar-section{margin:28px 0}.gf-actions{display:flex;align-items:center;gap:8px}.gf-collapse{border:0;background:var(--theme-background-alt);color:var(--theme-text);width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:1000000;flex:0 0 auto}.gf-collapse svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.5;transition:transform .2s}.gamejoy-fullscreen-header-hidden .gf-collapse svg{transform:rotate(180deg)}
@media (orientation:landscape) and (max-height:520px) and (pointer:coarse){.force_full_screen .game-fullscreen-header,.screen:fullscreen .game-fullscreen-header,.screen:-webkit-full-screen .game-fullscreen-header{height:44px;padding:0 6px;border-top-width:3px;justify-content:flex-end;transition:transform .22s ease}.force_full_screen .gf-left,.screen:fullscreen .gf-left,.screen:-webkit-full-screen .gf-left{display:none}.gf-collapse,.gf-minimize{width:34px;height:34px}.gf-collapse svg,.gf-minimize svg{width:17px;height:17px}.force_full_screen .game-frame,.screen:fullscreen .game-frame,.screen:-webkit-full-screen .game-frame{top:44px!important;height:calc(100dvh - 44px)!important}.force_full_screen .gamejoy-loading-layer,.force_full_screen .gamejoy-load-error,.screen:fullscreen .gamejoy-loading-layer,.screen:fullscreen .gamejoy-load-error{top:44px}.gamejoy-fullscreen-header-hidden .game-fullscreen-header{transform:translateY(calc(-100% + 12px))}.force_full_screen.gamejoy-fullscreen-header-hidden .game-frame,.screen.gamejoy-fullscreen-header-hidden:fullscreen .game-frame,.screen.gamejoy-fullscreen-header-hidden:-webkit-full-screen .game-frame{top:12px!important;height:calc(100dvh - 12px)!important}.force_full_screen.gamejoy-fullscreen-header-hidden .gamejoy-loading-layer,.force_full_screen.gamejoy-fullscreen-header-hidden .gamejoy-load-error,.screen.gamejoy-fullscreen-header-hidden:fullscreen .gamejoy-loading-layer,.screen.gamejoy-fullscreen-header-hidden:fullscreen .gamejoy-load-error{top:12px}}

/* v3.4 smart mosaic */
.gamejoy-home-six-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}.gamejoy-home-six-grid>.card.gamejoy-tile-2x1{grid-column:span 2}.gamejoy-mosaic-grid>.card.gamejoy-tile-1x2{grid-column:span 1!important}.gamejoy-mosaic-grid:not(.gamejoy-home-six-grid)>.card.gamejoy-tile-2x1{grid-column:span 1!important}
@media(max-width:1200px){.gamejoy-home-six-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}@media(max-width:700px){.gamejoy-home-six-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* v3.4.1 — vertical 2x1 personal cards and draggable landscape fullscreen dock. */
.gamejoy-personal-portrait-grid.grid,
.gamejoy-personal-portrait-grid.grid.big{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  grid-auto-flow:row dense;
  gap:14px;
  align-items:start;
}
.gamejoy-personal-portrait-grid>.card,
.gamejoy-personal-portrait-grid>.card.wide,
.gamejoy-personal-portrait-grid>.card.gamejoy-tile-2x1,
.gamejoy-personal-portrait-grid>.card.gamejoy-tile-2x2{
  grid-column:span 1!important;
  grid-row:auto!important;
  width:100%;
  height:auto!important;
  aspect-ratio:1/2!important;
  min-height:0;
  border-radius:18px;
}
.gamejoy-personal-portrait-grid>.card .overlay{opacity:1;padding:13px}
.gamejoy-personal-portrait-grid>.card .meta .t{font-size:15px}
.gamejoy-personal-portrait-grid>.card .meta .s{font-size:11px}
@media(max-width:1200px){
  .gamejoy-personal-portrait-grid.grid,
  .gamejoy-personal-portrait-grid.grid.big{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .gamejoy-personal-portrait-grid.grid,
  .gamejoy-personal-portrait-grid.grid.big{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px}
}

.gf-drag-handle{
  display:none;
  border:0;
  background:var(--theme-background-alt);
  color:var(--theme-text);
  width:46px;
  height:46px;
  border-radius:15px;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  touch-action:none;
  cursor:grab;
}
.gf-drag-handle:active,.game-fullscreen-header.is-dragging .gf-drag-handle{cursor:grabbing}
.gf-drag-handle svg{width:24px;height:24px;fill:currentColor}

@media (orientation:landscape) and (max-height:520px) and (pointer:coarse){
  .force_full_screen .game-fullscreen-header,
  .screen:fullscreen .game-fullscreen-header,
  .screen:-webkit-full-screen .game-fullscreen-header{
    display:flex!important;
    position:fixed!important;
    top:10px;
    right:10px;
    left:auto;
    bottom:auto;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    padding:7px!important;
    border:0!important;
    border-radius:18px!important;
    background:rgba(15,23,42,.86)!important;
    box-shadow:0 10px 30px rgba(0,0,0,.35)!important;
    backdrop-filter:blur(10px);
    transform:none!important;
    transition:none!important;
    z-index:1000001!important;
    touch-action:none;
    user-select:none;
    -webkit-user-select:none;
  }
  .force_full_screen .gf-left,
  .screen:fullscreen .gf-left,
  .screen:-webkit-full-screen .gf-left{display:none!important}
  .game-fullscreen-header .gf-actions{gap:8px}
  .game-fullscreen-header .gf-drag-handle,
  .game-fullscreen-header .gf-minimize{
    display:flex!important;
    width:48px!important;
    height:48px!important;
    border-radius:15px!important;
  }
  .game-fullscreen-header .gf-drag-handle svg,
  .game-fullscreen-header .gf-minimize svg{width:24px!important;height:24px!important}
  .game-fullscreen-header .gf-minimize{background:var(--theme-danger)!important;box-shadow:0 6px 16px rgba(239,68,68,.35)}
  .force_full_screen .game-frame,
  .screen:fullscreen .game-frame,
  .screen:-webkit-full-screen .game-frame{
    top:0!important;
    height:100dvh!important;
    min-height:0!important;
  }
  .force_full_screen .gamejoy-loading-layer,
  .force_full_screen .gamejoy-load-error,
  .screen:fullscreen .gamejoy-loading-layer,
  .screen:fullscreen .gamejoy-load-error,
  .screen:-webkit-full-screen .gamejoy-loading-layer,
  .screen:-webkit-full-screen .gamejoy-load-error{top:0!important}
}

/* v3.4.4 — stable homepage rail and aligned personal/mosaic grids. */
.gamejoy-home-top-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start;margin-bottom:24px}
.gamejoy-home-top-main{order:1;min-width:0}
.gamejoy-home-member-rail{order:2;min-width:0;display:flex;flex-direction:column;gap:16px}
.gamejoy-home-login-card,.gamejoy-home-rank-card{width:100%;box-sizing:border-box;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.gamejoy-home-login-card{padding:22px 16px;text-align:center}
.gamejoy-home-login-icon{width:64px;height:64px;border-radius:50%;margin:0 auto 10px;background:var(--theme-background-alt);display:flex;align-items:center;justify-content:center;font-size:29px}
.gamejoy-home-login-avatar{width:64px!important;height:64px!important;border-radius:50%;margin:0 auto 10px!important;display:block;object-fit:cover}
.gamejoy-home-login-card h2{font-size:17px;line-height:1.3;color:var(--navy);margin:0 0 9px}
.gamejoy-home-login-card p{font-size:12px;color:var(--muted);font-weight:700;margin:0 0 12px}
.gamejoy-home-login-primary,.gamejoy-home-login-secondary{width:100%;min-height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:900;margin-top:9px;box-sizing:border-box}
.gamejoy-home-login-primary{background:var(--theme-secondary);color:#fff}.gamejoy-home-login-secondary{background:var(--theme-background);color:var(--theme-secondary);border:1px solid var(--theme-border)}
.gamejoy-home-rank-card{padding:16px}.gamejoy-home-rank-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.gamejoy-home-rank-head h2{font-size:16px;color:var(--navy)}.gamejoy-home-rank-head a{font-size:11px;font-weight:900;color:var(--theme-secondary)}
.gamejoy-home-rank-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.gamejoy-home-rank-list li{display:grid;grid-template-columns:24px 32px minmax(0,1fr) auto;gap:7px;align-items:center;min-width:0}.gamejoy-home-rank-number{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f1f5f9;font-size:11px;font-weight:900}.gamejoy-home-rank-list li:nth-child(1) .gamejoy-home-rank-number{background:#fbbf24;color:#fff}.gamejoy-home-rank-list li:nth-child(2) .gamejoy-home-rank-number{background:#cbd5e1;color:#fff}.gamejoy-home-rank-list li:nth-child(3) .gamejoy-home-rank-number{background:#fb923c;color:#fff}.gamejoy-home-rank-list img{width:32px;height:32px;border-radius:50%;object-fit:cover}.gamejoy-home-rank-list strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gamejoy-home-rank-list em{font-style:normal;color:var(--theme-secondary);font-size:10px;font-weight:900}.gamejoy-home-rank-empty{font-size:12px;color:var(--muted);font-weight:700;text-align:center;padding:15px 4px}
.gamejoy-home-portrait-grid.grid,.gamejoy-home-portrait-grid.grid.big{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-auto-flow:row!important;grid-auto-rows:auto!important;gap:16px!important;align-items:start}
.gamejoy-home-portrait-grid>.card,.gamejoy-home-portrait-grid>.card.wide,.gamejoy-home-portrait-grid>.card.gamejoy-tile-1x2,.gamejoy-home-portrait-grid>.card.gamejoy-tile-2x1,.gamejoy-home-portrait-grid>.card.gamejoy-tile-2x2{grid-column:span 1!important;grid-row:auto!important;width:100%;height:auto!important;aspect-ratio:1/2!important;min-height:0}
.gamejoy-personal-section{display:block;clear:both;position:relative}.gamejoy-personal-section[hidden]{display:none!important}
.gamejoy-player-side-rail{display:flex;flex-direction:column;gap:16px;min-width:0}.gamejoy-similar-rail{margin:0;padding:14px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.gamejoy-similar-rail .sec-head{margin:0 0 12px;min-height:0}.gamejoy-similar-rail .sec-head h2{font-size:18px}.gamejoy-similar-rail .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gamejoy-similar-rail .card{aspect-ratio:1/1;border-radius:13px}.gamejoy-similar-rail .card .overlay{opacity:1;padding:8px}.gamejoy-similar-rail .card .meta .t{font-size:12px}.gamejoy-similar-rail .card .meta .s{font-size:9px}
@media(min-width:1200px){.gamejoy-player-root .detail-wrap{grid-template-columns:minmax(0,1fr) 300px!important}}
@media(min-width:992px) and (max-width:1199px){.gamejoy-player-root .detail-wrap{grid-template-columns:minmax(0,1fr) 230px!important;gap:16px}.gamejoy-player-root .rail{position:sticky!important;top:calc(var(--header-h) + 16px)}.gamejoy-similar-rail{padding:10px}.gamejoy-similar-rail .grid{gap:8px}}
@media(max-width:1100px){.gamejoy-home-top-layout{grid-template-columns:minmax(0,1fr) 230px}.gamejoy-home-portrait-grid.grid,.gamejoy-home-portrait-grid.grid.big{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:991px){.gamejoy-player-root .detail-wrap{grid-template-columns:1fr!important}.gamejoy-player-root .rail{position:static!important}.gamejoy-similar-rail .grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:850px){.gamejoy-home-top-layout{grid-template-columns:1fr}.gamejoy-home-member-rail{display:grid;grid-template-columns:1fr}.gamejoy-home-portrait-grid.grid,.gamejoy-home-portrait-grid.grid.big{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:600px){.gamejoy-home-member-rail{grid-template-columns:1fr}.gamejoy-home-portrait-grid.grid,.gamejoy-home-portrait-grid.grid.big{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}.gamejoy-similar-rail .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v3.4.5 */
.gamejoy-home-login-qr{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:center;gap:8px}
.gamejoy-home-login-qr img{width:150px;height:150px;max-width:100%;display:block;object-fit:contain;border-radius:12px;background:#fff}
.gamejoy-home-login-qr span{font-size:11px;font-weight:800;color:var(--muted);line-height:1.4}

/* v3.4.7 pills scroll + Google login */
body.home .pills{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:10px;padding:4px 2px 12px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
body.home .pills .pill{flex:0 0 auto;scroll-snap-align:start}
body.home .pills::-webkit-scrollbar{height:7px}body.home .pills::-webkit-scrollbar-thumb{background:var(--theme-border);border-radius:999px}
.gamejoy-google-login{width:100%;min-height:44px;box-sizing:border-box;border:1px solid #dadce0;border-radius:10px;background:#fff;color:#202124;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:800;margin-top:10px;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.gamejoy-google-login:hover{background:#f8f9fa;border-color:#c7c9cc}.gamejoy-google-mark{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-weight:900;color:#4285f4;background:#fff;border:1px solid #e5e7eb}
.gamejoy-auth-divider{display:flex;align-items:center;gap:10px;margin:14px 0 4px;color:#94a3b8;font-size:12px;font-weight:800}.gamejoy-auth-divider:before,.gamejoy-auth-divider:after{content:"";height:1px;background:#e5e7eb;flex:1}
.gamejoy-auth-layout{grid-template-columns:minmax(0,1fr)!important}.gamejoy-auth-qr,.gamejoy-home-login-qr{display:none!important}


/* v3.5.0 player toolbar. */
.gamejoy-player-toolbar .tools{display:flex;align-items:center;gap:6px;margin-left:auto}
.gamejoy-player-toolbar .gamejoy-vote-toolbar{margin:0;padding:0;border:0;background:transparent;gap:6px;flex-wrap:nowrap}
.gamejoy-player-toolbar .gamejoy-vote-toolbar>strong{margin:0;font-size:12px;color:#fff}
.gamejoy-player-toolbar .gamejoy-vote-button{height:32px;padding:0 9px;background:rgba(255,255,255,.13);color:#fff}
.gamejoy-player-toolbar .gamejoy-vote-summary{color:#fff}
@media(max-width:700px){.gamejoy-player-toolbar .tools{margin-left:auto;flex-wrap:nowrap}.gamejoy-player-toolbar .gamejoy-vote-toolbar{width:auto;justify-content:flex-end}.gamejoy-player-toolbar .gamejoy-vote-toolbar>strong,.gamejoy-player-toolbar .gamejoy-vote-summary{display:none}}

/* v3.5.8 — 6x5 logical mosaic built from 0.5x0.5 half-cells. */
.gamejoy-half-unit-grid.grid,
.gamejoy-half-unit-grid.grid.big{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  grid-auto-flow:row dense!important;
  gap:8px!important;
  align-items:start;
}
.gamejoy-half-unit-grid>.card{
  min-width:0;
  aspect-ratio:auto!important;
}
.gamejoy-half-unit-grid>.card.gamejoy-tile-half{
  grid-column:span 1;
  grid-row:span 1;
  border-radius:10px;
}
.gamejoy-half-unit-grid>.card.gamejoy-tile-1x1{
  grid-column:span 2;
  grid-row:span 2;
}
.gamejoy-half-unit-grid>.card.gamejoy-tile-2x2{
  grid-column:span 4;
  grid-row:span 4;
}
.gamejoy-half-unit-grid>.card.gamejoy-tile-half .overlay{
  padding:5px;
  opacity:0;
  background:linear-gradient(180deg,transparent 45%,rgba(2,6,23,.88));
}
.gamejoy-half-unit-grid>.card.gamejoy-tile-half:hover .overlay,
.gamejoy-half-unit-grid>.card.gamejoy-tile-half:focus-visible .overlay{opacity:1}
.gamejoy-half-unit-grid>.card.gamejoy-tile-half .meta .t{
  font-size:9px;
  line-height:1.05;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.gamejoy-half-unit-grid>.card.gamejoy-tile-half .meta .s,
.gamejoy-half-unit-grid>.card.gamejoy-tile-half .tag,
.gamejoy-half-unit-grid>.card.gamejoy-tile-half .play-mini{display:none!important}

/* Fixed priority locations inside the first 12x10 half-cell block. */
@media(min-width:1101px){
  .gamejoy-fixed-6x5-grid>.gamejoy-fixed-large-1{grid-column-start:1;grid-row-start:1}
  .gamejoy-fixed-6x5-grid>.gamejoy-fixed-large-2{grid-column-start:9;grid-row-start:1}
  .gamejoy-fixed-6x5-grid>.gamejoy-fixed-large-3{grid-column-start:1;grid-row-start:5}
  .gamejoy-fixed-6x5-grid>.gamejoy-fixed-medium-1{grid-column-start:5;grid-row-start:1}
  .gamejoy-fixed-6x5-grid>.gamejoy-fixed-medium-2{grid-column-start:7;grid-row-start:1}
  .gamejoy-fixed-6x5-grid>.gamejoy-fixed-medium-3{grid-column-start:5;grid-row-start:3}
  .gamejoy-fixed-6x5-grid>.gamejoy-fixed-medium-4{grid-column-start:7;grid-row-start:3}
  .gamejoy-fixed-6x5-grid>.gamejoy-fixed-medium-5{grid-column-start:9;grid-row-start:5}
}
@media(max-width:1100px){
  .gamejoy-half-unit-grid.grid,
  .gamejoy-half-unit-grid.grid.big{grid-template-columns:repeat(8,minmax(0,1fr))!important}
  .gamejoy-fixed-6x5-grid>[class*="gamejoy-fixed-large-"],
  .gamejoy-fixed-6x5-grid>[class*="gamejoy-fixed-medium-"]{
    grid-column-start:auto!important;
    grid-row-start:auto!important;
  }
}
@media(max-width:700px){
  .gamejoy-half-unit-grid.grid,
  .gamejoy-half-unit-grid.grid.big{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .gamejoy-half-unit-grid>.card.gamejoy-tile-half{border-radius:8px}
}

/* Game player cleanup: rounded 15px shell and hidden sync label. */
.gamejoy-player-root .player{border-radius:15px;overflow:hidden}
.gamejoy-player-root .gamejoy-sync-status{display:none!important}
.detail-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:700px){.detail-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}

.gamejoy-vote-button:disabled{opacity:.65;cursor:wait}.gamejoy-vote-box.is-loading{pointer-events:none}

/* v3.5.27 — player tools dock: invite, collection, report, controls and phone QR. */
.gamejoy-player-tools-dock{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:stretch;
  gap:1px;
  width:100%;
  padding:0;
  background:#0b4728;
  border-top:1px solid rgba(255,255,255,.13);
  color:#fff;
}
.gamejoy-player-tool{
  appearance:none;
  border:0;
  border-radius:0;
  min-width:0;
  min-height:72px;
  padding:9px 5px 8px;
  background:#0f5b32;
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  text-align:center;
  font:800 12px/1.15 'Nunito',sans-serif;
  cursor:pointer;
  transition:background .18s ease,transform .18s ease;
}
.gamejoy-player-tool:hover,.gamejoy-player-tool:focus-visible{background:#16713f;color:#fff;outline:none}
.gamejoy-player-tool:active{transform:translateY(1px)}
.gamejoy-player-tool-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:rgba(255,255,255,.1)}
.gamejoy-player-tool svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.gamejoy-player-tool>span:last-child{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-width:100%}

.gamejoy-player-modal{
  position:fixed;
  inset:0;
  z-index:1000001;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(2,6,23,.78);
  backdrop-filter:blur(5px);
}
.gamejoy-player-modal[hidden]{display:none!important}
.gamejoy-player-modal-dialog{
  width:min(620px,100%);
  max-height:min(760px,92dvh);
  overflow:auto;
  overscroll-behavior:contain;
  color:#f8fafc;
  background:#171a2a;
  border:1px solid rgba(255,255,255,.09);
  border-top:5px solid var(--joy,var(--theme-primary));
  border-radius:24px;
  box-shadow:0 30px 90px rgba(0,0,0,.48);
}
.gamejoy-player-modal-wide{width:min(780px,100%)}
.gamejoy-player-modal-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px 15px;background:rgba(23,26,42,.96);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}
.gamejoy-player-modal-head h3{margin:0;color:#fff;font:800 clamp(19px,3vw,24px)/1.2 'Fredoka',sans-serif;text-align:center;flex:1}
.gamejoy-player-modal-close{width:40px;height:40px;flex:0 0 40px;border:0;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#d8deee;font-size:29px;line-height:1;cursor:pointer}
.gamejoy-player-modal-close:hover,.gamejoy-player-modal-close:focus-visible{background:rgba(255,255,255,.16);color:#fff;outline:2px solid rgba(var(--theme-primary-rgb),.55);outline-offset:2px}
.gamejoy-player-modal-body{padding:20px}
.gamejoy-player-modal-intro{margin:16px auto;color:#c3c8d8;font-size:15px;font-weight:700;line-height:1.55;text-align:center;max-width:520px}
.gamejoy-tool-game-card{display:flex;align-items:center;gap:13px;min-width:0;padding:11px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.gamejoy-tool-game-card img{width:74px;height:56px;flex:0 0 74px;object-fit:cover;border-radius:11px;background:#0b1220}
.gamejoy-tool-game-card>div{min-width:0}.gamejoy-tool-game-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font:800 16px 'Fredoka',sans-serif}.gamejoy-tool-game-card>div>span{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px;color:#aeb5c9;font-size:12px}
.gamejoy-tool-game-card .gamejoy-inline-taxonomy-link{min-height:24px;padding:3px 7px;background:rgba(var(--theme-primary-rgb),.12);border-color:rgba(var(--theme-primary-rgb),.22);color:var(--theme-border);font-size:10px}
.gamejoy-tool-primary{width:100%;min-height:46px;border:0;border-radius:14px;padding:0 17px;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:linear-gradient(100deg,#34e5bd,#62ed79);color:#052e1a!important;font:900 15px 'Nunito',sans-serif;text-decoration:none;cursor:pointer;box-shadow:0 10px 25px rgba(var(--theme-primary-rgb),.18)}
.gamejoy-tool-primary:hover,.gamejoy-tool-primary:focus-visible{filter:brightness(1.04);transform:translateY(-1px);outline:none}
.gamejoy-tool-primary svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gamejoy-share-url-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:12px}
.gamejoy-share-url-row input{min-width:0;height:44px;padding:0 12px;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:#0d1020;color:#dce3f4;font:700 14px 'Nunito',sans-serif}
.gamejoy-share-url-row button{min-height:44px;padding:0 15px;border:0;border-radius:12px;background:#3c405c;color:#fff;font-weight:900;cursor:pointer}
.gamejoy-share-url-row button:hover{background:#4b506f}
.gamejoy-tool-status{min-height:20px;margin:10px 0 0;color:color-mix(in srgb,var(--theme-primary) 42%,var(--theme-surface));font-size:13px;font-weight:800;text-align:center}

.gamejoy-current-save-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.gamejoy-save-current{min-height:46px;padding:0 14px;border:1px solid rgba(255,255,255,.12);border-radius:13px;display:flex;align-items:center;justify-content:center;gap:8px;background:#34384f;color:#fff;font-weight:900;cursor:pointer;white-space:nowrap}
.gamejoy-save-current.is-saved{background:rgba(var(--theme-primary-rgb),.17);border-color:rgba(var(--theme-primary-rgb),.35);color:var(--theme-border)}
.gamejoy-save-current svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gamejoy-save-current.is-saved svg{fill:currentColor}
.gamejoy-collection-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:18px 0 12px;border-bottom:1px solid rgba(255,255,255,.1)}
.gamejoy-collection-tabs button{position:relative;min-height:46px;border:0;background:transparent;color:#858ba0;font-weight:900;cursor:pointer}
.gamejoy-collection-tabs button[aria-selected=true]{color:#fff}
.gamejoy-collection-tabs button[aria-selected=true]::after{content:"";position:absolute;left:12%;right:12%;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--joy,var(--theme-primary))}
.gamejoy-collection-panel{min-height:180px}
.gamejoy-collection-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.gamejoy-collection-item{position:relative;min-width:0;margin:0;padding:7px;border-radius:15px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07)}
.gamejoy-collection-link{display:flex;align-items:center;gap:10px;min-width:0;padding-right:30px;color:#fff;text-decoration:none}
.gamejoy-collection-link img,.gamejoy-collection-placeholder{width:82px;height:58px;flex:0 0 82px;border-radius:10px;object-fit:cover;background:#0d1020;display:grid;place-items:center;font-size:25px}
.gamejoy-collection-link>span{min-width:0}.gamejoy-collection-link strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-size:14px}.gamejoy-collection-link small{display:block;margin-top:4px;color:#9299ad;font-size:11px;font-weight:700}
.gamejoy-collection-remove{position:absolute;top:6px;right:6px;width:28px;height:28px;border:0;border-radius:50%;display:grid;place-items:center;background:#e50046;color:#fff;font-size:20px;line-height:1;cursor:pointer;box-shadow:0 4px 12px rgba(229,0,70,.25)}
.gamejoy-collection-empty{padding:45px 18px;border:1px dashed rgba(255,255,255,.15);border-radius:16px;color:#aeb5c9;font-weight:800;text-align:center}

.gamejoy-controls-body{display:grid;gap:12px}
.gamejoy-control-group{padding:15px 16px;border-radius:16px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07)}
.gamejoy-control-group h4{display:flex;align-items:center;gap:9px;margin:0 0 9px;color:#fff;font:800 17px 'Fredoka',sans-serif}.gamejoy-control-group h4 span{font-size:21px}
.gamejoy-control-group ul{margin:0;padding-left:22px;color:#c7ccdc;font-size:15px;font-weight:700;line-height:1.55}.gamejoy-control-group li+li{margin-top:4px}
.gamejoy-phone-body{text-align:center}.gamejoy-phone-qr{width:min(260px,82vw);margin:0 auto;padding:11px;border-radius:22px;background:#fff;box-shadow:0 14px 35px rgba(0,0,0,.28)}
.gamejoy-phone-qr canvas{display:block;width:100%!important;height:auto!important;border-radius:10px}
.gamejoy-phone-body .gamejoy-tool-primary{max-width:320px;margin:0 auto}

/* Keep the report dialog visually consistent with the new tools. */
.gamejoy-report-modal{background:rgba(2,6,23,.78);backdrop-filter:blur(5px)}
.gamejoy-report-dialog{color:#f8fafc;background:#171a2a;border:1px solid rgba(255,255,255,.09);border-top:5px solid var(--joy,var(--theme-primary))}
.gamejoy-report-head h3,.gamejoy-report-form label{color:#fff}.gamejoy-report-close{background:rgba(255,255,255,.08);color:#d8deee}
.gamejoy-report-form textarea{background:#0d1020;border-color:rgba(255,255,255,.13);color:#fff}.gamejoy-report-note{color:#aeb5c9}.gamejoy-file-picker{background:rgba(var(--theme-primary-rgb),.08);border-color:rgba(var(--theme-primary-rgb),.35)}.gamejoy-file-name{color:#c3c8d8}

@media(max-width:700px){
  .gamejoy-player-tool{min-height:64px;padding:7px 2px 6px;font-size:10.5px;gap:4px}
  .gamejoy-player-tool-icon{width:25px;height:25px;border-radius:8px}.gamejoy-player-tool svg{width:18px;height:18px}
  .gamejoy-player-modal{align-items:flex-end;padding:8px 8px 0}
  .gamejoy-player-modal-dialog{width:100%;max-height:94dvh;border-radius:22px 22px 0 0}
  .gamejoy-player-modal-head{padding:14px 14px 12px}.gamejoy-player-modal-body{padding:14px}
  .gamejoy-current-save-card{grid-template-columns:1fr}.gamejoy-save-current{width:100%}
  .gamejoy-collection-list{grid-template-columns:1fr}.gamejoy-collection-link img,.gamejoy-collection-placeholder{width:76px;height:54px;flex-basis:76px}
  .gamejoy-share-url-row{grid-template-columns:1fr}.gamejoy-share-url-row button{width:100%}
  .gamejoy-tool-game-card img{width:66px;height:52px;flex-basis:66px}
}
@media(max-width:380px){
  .gamejoy-player-tool{font-size:9.5px}.gamejoy-player-tool-icon{width:23px;height:23px}.gamejoy-player-tool svg{width:17px;height:17px}
  .gamejoy-player-modal{padding-left:4px;padding-right:4px}.gamejoy-player-modal-body{padding:12px}
}
@media(orientation:landscape) and (max-height:520px){
  .gamejoy-player-modal{align-items:center;padding:8px}.gamejoy-player-modal-dialog{max-height:96dvh;border-radius:18px}
  .gamejoy-player-modal-head{padding:9px 14px}.gamejoy-player-modal-body{padding:12px 16px}
  .gamejoy-phone-body{display:grid;grid-template-columns:auto minmax(230px,1fr);grid-template-rows:auto auto;gap:8px 18px;align-items:center;text-align:left}
  .gamejoy-phone-qr{grid-row:1/3;width:min(210px,45vh)}.gamejoy-phone-body .gamejoy-player-modal-intro{text-align:left;margin:0}.gamejoy-phone-body .gamejoy-tool-primary{margin:0;max-width:none}
}


/* v3.5.28: icon-only player tools inside .tools + Friends / My Games global panels */
.gamejoy-player-toolbar{flex-wrap:nowrap}
.gamejoy-player-toolbar .tools{min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;padding-bottom:1px}
.gamejoy-player-toolbar .tools::-webkit-scrollbar{display:none}
.gamejoy-player-toolbar .gamejoy-toolbar-tool{flex:0 0 36px;width:36px;min-width:36px;padding:0;border:1px solid rgba(255,255,255,.08)}
.gamejoy-player-toolbar .gamejoy-toolbar-tool svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gamejoy-player-toolbar .gamejoy-toolbar-tool:focus-visible{outline:2px solid color-mix(in srgb,var(--theme-primary) 42%,var(--theme-surface));outline-offset:2px;background:rgba(255,255,255,.25)}
.gamejoy-invite-qr-panel{margin-top:16px;padding:16px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.gamejoy-invite-qr-panel[hidden],.gamejoy-friend-qr-panel[hidden]{display:none!important}

.gamejoy-global-header-button{border:0;white-space:nowrap}
.gamejoy-global-header-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}
.gamejoy-global-header-button.is-friends{background:color-mix(in srgb,var(--theme-primary) 7%,var(--theme-surface));color:var(--theme-secondary)}
.gamejoy-global-header-button.is-my-games{background:color-mix(in srgb,var(--theme-primary) 8%,var(--theme-surface));color:var(--theme-text)}
.gamejoy-global-sidebar-tools{display:flex;flex-direction:column;padding-bottom:8px;margin-bottom:5px;border-bottom:1px solid var(--line)}
.gamejoy-global-side-button{width:100%;border:0;text-align:left;background:transparent}
.gamejoy-global-side-button .ico{background:linear-gradient(135deg,var(--theme-primary),var(--theme-secondary))}
.gamejoy-global-side-button.is-friends .ico{background:linear-gradient(135deg,#34d399,var(--theme-info))}

.gamejoy-global-panel{z-index:10020}
.gamejoy-friends-dialog{width:min(560px,100%)}
.gamejoy-friends-body{display:flex;flex-direction:column;gap:12px}
.gamejoy-friend-search{height:46px;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:#0e1120;color:#fff}
.gamejoy-friend-search svg{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:#d9deed;stroke-width:2;stroke-linecap:round}
.gamejoy-friend-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#fff;font:700 15px 'Nunito',sans-serif}
.gamejoy-friend-search input::placeholder{color:#a8aec1}
.gamejoy-friend-search:focus-within{border-color:color-mix(in srgb,var(--theme-primary) 72%,var(--theme-surface));box-shadow:0 0 0 3px rgba(var(--theme-primary-rgb),.12)}
.gamejoy-friend-search-status{margin:0;padding:9px 12px;border-radius:12px;background:rgba(255,255,255,.06);color:#c8cede;font-size:13px;font-weight:700}
.gamejoy-play-friends{margin-top:2px}
.gamejoy-friend-share-button{width:100%;min-height:44px;border:0;border-radius:14px;padding:0 17px;display:flex;align-items:center;justify-content:center;gap:9px;background:#3c405c;color:#fff;font:900 15px 'Nunito',sans-serif;cursor:pointer}
.gamejoy-friend-share-button:hover,.gamejoy-friend-share-button:focus-visible{background:#4b506f;outline:2px solid rgba(var(--theme-primary-rgb),.55);outline-offset:2px}
.gamejoy-friend-share-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gamejoy-friend-qr-panel{padding:18px;border-radius:20px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);text-align:center}
.gamejoy-friend-qr-panel h4{margin:0 0 12px;color:#fff;font:800 20px 'Fredoka',sans-serif}
.gamejoy-friend-qr-panel>p{margin:12px auto 0;max-width:430px;color:#b9c0d2;font-weight:700;line-height:1.55}
.gamejoy-friends-empty{min-height:420px;margin-top:10px;padding:28px 18px 0;text-align:center;border-radius:18px;background:radial-gradient(circle at 50% 100%,rgba(124,58,237,.34),transparent 52%),linear-gradient(180deg,rgba(17,19,35,.35),rgba(17,19,35,.9));overflow:hidden}
.gamejoy-friends-empty h4{margin:0;color:#fff;font:800 clamp(27px,5vw,36px)/1.1 'Fredoka',sans-serif}
.gamejoy-friends-empty p{max-width:390px;margin:10px auto 0;color:#b8bfd1;font-size:15px;font-weight:700;line-height:1.55}
.gamejoy-friends-illustration{height:250px;margin:22px -18px 0;display:flex;align-items:flex-end;justify-content:center;gap:30px;padding-bottom:55px;background:radial-gradient(circle at 50% 75%,rgba(139,92,246,.75),transparent 42%),linear-gradient(180deg,transparent,rgba(30,11,69,.78));position:relative}
.gamejoy-friends-illustration::before{content:"";position:absolute;left:8%;right:8%;bottom:35px;height:72px;border-radius:34px;background:linear-gradient(180deg,#4c1d95,#24104f);box-shadow:0 25px 50px rgba(0,0,0,.45)}
.gamejoy-friends-illustration span{position:relative;z-index:1;width:92px;height:92px;border-radius:30px;display:grid;place-items:center;background:linear-gradient(145deg,#8b5cf6,#5b21b6);font-size:42px;box-shadow:0 16px 28px rgba(0,0,0,.35);transform:rotate(-5deg)}
.gamejoy-friends-illustration span+span{transform:rotate(5deg)}

@media(max-width:900px){
  .header-actions{display:flex!important;gap:6px!important}
  .header-actions>*:not(.gamejoy-global-header-button){display:none!important}
  .gamejoy-global-header-button{height:40px;padding:0 11px;font-size:13px}
}
@media(max-width:700px){
  header .search{display:none!important}
  .header-actions{margin-left:auto!important}
  .gamejoy-player-toolbar .pname,.gamejoy-player-toolbar .gamejoy-sync-status{display:none}
  .gamejoy-player-toolbar .tools{width:100%;margin-left:0;justify-content:flex-start}
  .gamejoy-player-toolbar .gamejoy-vote-toolbar{flex:0 0 auto}
}
@media(max-width:460px){
  header{gap:7px;padding-left:8px;padding-right:8px}
  header>.logo{display:none}
  .gamejoy-global-header-button{padding:0 9px;font-size:12.5px}
  .gamejoy-global-header-button span{display:inline!important}
  .gamejoy-friends-empty{min-height:360px;padding-left:13px;padding-right:13px}
  .gamejoy-friends-illustration{height:210px;margin-left:-13px;margin-right:-13px}
  .gamejoy-friends-illustration span{width:78px;height:78px;font-size:36px}
}
@media(max-width:360px){
  .gamejoy-global-header-button span{display:none!important}
  .gamejoy-global-header-button{width:40px;padding:0;justify-content:center}
}


/* v3.5.29 configurable Friends / My Games / player modal palette */
.gamejoy-player-modal{background:color-mix(in srgb,var(--theme-footer) 78%,transparent)}
.gamejoy-player-modal-dialog,.gamejoy-report-dialog{background:var(--theme-dark-surface);color:var(--theme-dark-text);border-color:color-mix(in srgb,var(--theme-dark-text) 10%,transparent);border-top-color:var(--joy)}
.gamejoy-player-modal-head{border-bottom-color:color-mix(in srgb,var(--theme-dark-text) 10%,transparent)}
.gamejoy-player-modal-head h3,.gamejoy-friend-qr-panel h4,.gamejoy-friends-empty h4,.gamejoy-collection-link,.gamejoy-collection-link strong,.gamejoy-report-head h3,.gamejoy-report-form label{color:var(--theme-dark-text)}
.gamejoy-player-modal-intro,.gamejoy-friend-qr-panel>p,.gamejoy-friends-empty p,.gamejoy-collection-link small,.gamejoy-report-note,.gamejoy-file-name{color:var(--theme-dark-muted)}
.gamejoy-player-modal-close,.gamejoy-report-close{color:var(--theme-dark-text);background:color-mix(in srgb,var(--theme-dark-text) 8%,transparent)}
.gamejoy-friend-search,.gamejoy-report-form textarea{background:var(--theme-dark-surface-alt);color:var(--theme-dark-text);border-color:color-mix(in srgb,var(--theme-dark-text) 14%,transparent)}
.gamejoy-friend-search svg{stroke:var(--theme-dark-muted)}
.gamejoy-friend-search input{color:var(--theme-dark-text)}
.gamejoy-friend-search input::placeholder{color:var(--theme-dark-muted)}
.gamejoy-friend-search:focus-within{border-color:var(--joy);box-shadow:0 0 0 3px color-mix(in srgb,var(--joy) 18%,transparent)}
.gamejoy-friend-search-status,.gamejoy-collection-item,.gamejoy-friend-qr-panel,.gamejoy-invite-qr-panel{background:color-mix(in srgb,var(--theme-dark-text) 6%,transparent);color:var(--theme-dark-muted);border-color:color-mix(in srgb,var(--theme-dark-text) 9%,transparent)}
.gamejoy-tool-primary,.gamejoy-play-friends{background:linear-gradient(135deg,var(--joy),var(--joy-deep));color:var(--theme-button-text)}
.gamejoy-friend-share-button{background:color-mix(in srgb,var(--joy) 24%,var(--theme-dark-surface));color:var(--theme-dark-text)}
.gamejoy-friend-share-button:hover{background:color-mix(in srgb,var(--joy) 38%,var(--theme-dark-surface))}
.gamejoy-collection-tabs{border-color:color-mix(in srgb,var(--theme-dark-text) 10%,transparent)}
.gamejoy-collection-tabs button{color:var(--theme-dark-muted)}
.gamejoy-collection-tabs button[aria-selected=true]{color:var(--theme-dark-text)}
.gamejoy-global-header-button.is-friends,.gamejoy-global-header-button.is-my-games{background:var(--bg-2);color:var(--joy-deep)}
.gamejoy-global-side-button .ico,.gamejoy-global-side-button.is-friends .ico{background:linear-gradient(135deg,var(--joy),var(--joy-deep));color:var(--theme-button-text)}
.gamejoy-friends-empty{background:radial-gradient(circle at 50% 100%,color-mix(in srgb,var(--joy) 38%,transparent),transparent 52%),linear-gradient(180deg,color-mix(in srgb,var(--theme-dark-surface-alt) 35%,transparent),var(--theme-dark-surface-alt))}
.gamejoy-friends-illustration{background:radial-gradient(circle at 50% 75%,color-mix(in srgb,var(--joy) 70%,transparent),transparent 42%),linear-gradient(180deg,transparent,color-mix(in srgb,var(--joy-deep) 55%,var(--theme-dark-surface-alt)))}
.gamejoy-friends-illustration::before{background:linear-gradient(180deg,var(--joy-deep),color-mix(in srgb,var(--joy-deep) 45%,var(--theme-dark-surface-alt)))}
.gamejoy-friends-illustration span{background:linear-gradient(145deg,var(--joy),var(--joy-deep))}


/* v3.5.37 — real leaderboard card inside sidebar. */
.gamejoy-sidebar-rank-card{width:100%;box-sizing:border-box;margin:8px 0 4px;padding:12px 10px;background:var(--theme-surface);border:1px solid var(--theme-border);border-radius:16px;box-shadow:0 7px 20px rgba(var(--theme-text-rgb),.08)}
.gamejoy-sidebar-rank-head{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:9px}.gamejoy-sidebar-rank-head h2{display:flex;align-items:center;gap:5px;min-width:0;margin:0;font-size:13px;line-height:1.15;color:var(--theme-text)}.gamejoy-sidebar-rank-head h2 span{font-size:14px;flex:0 0 auto}.gamejoy-sidebar-rank-head a{flex:0 0 auto;font-size:9px;line-height:1;font-weight:900;color:var(--theme-primary);white-space:nowrap}
.gamejoy-sidebar-rank-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.gamejoy-sidebar-rank-list li{display:grid;grid-template-columns:21px 28px minmax(0,1fr);align-items:center;gap:6px;min-width:0;margin:0;padding:0}.gamejoy-sidebar-rank-number{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--theme-background-alt);color:var(--theme-muted);font-size:10px;font-weight:900}.gamejoy-sidebar-rank-list li:nth-child(1) .gamejoy-sidebar-rank-number{background:var(--theme-accent);color:var(--theme-footer)}.gamejoy-sidebar-rank-list li:nth-child(2) .gamejoy-sidebar-rank-number{background:#cbd5e1;color:#fff}.gamejoy-sidebar-rank-list li:nth-child(3) .gamejoy-sidebar-rank-number{background:#fb923c;color:#fff}.gamejoy-sidebar-rank-list img{width:28px;height:28px;border-radius:50%;object-fit:cover;display:block}.gamejoy-sidebar-rank-copy{display:flex;flex-direction:column;min-width:0;line-height:1.15}.gamejoy-sidebar-rank-copy strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:var(--theme-text)}.gamejoy-sidebar-rank-copy em{margin-top:2px;font-style:normal;font-size:9px;font-weight:900;color:var(--theme-primary)}.gamejoy-sidebar-rank-empty{margin:0;padding:8px 2px;font-size:10px;line-height:1.4;text-align:center;color:var(--theme-muted)}

/* v3.5.38 — complete tool set inside fullscreen header. */
.game-fullscreen-header .gf-game-info{display:flex;flex-direction:column;min-width:0}.game-fullscreen-header .gf-game-info .gamejoy-sync-status{margin:3px 0 0;font-size:11px}.game-fullscreen-header .gf-actions{min-width:0;max-width:75%;overflow-x:auto;scrollbar-width:none}.game-fullscreen-header .gf-actions::-webkit-scrollbar{display:none}.game-fullscreen-header .gamejoy-toolbar-tool{width:38px;height:38px;min-width:38px;border:1px solid var(--theme-border);border-radius:12px;background:var(--theme-background-alt);color:var(--theme-text);display:flex;align-items:center;justify-content:center;padding:0;flex:0 0 auto}.game-fullscreen-header .gamejoy-toolbar-tool svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.game-fullscreen-header .gf-vote-toolbar{display:flex;gap:5px;margin:0;padding:0;border:0;background:transparent;flex:0 0 auto}.game-fullscreen-header .gf-vote-toolbar .gamejoy-vote-button{height:38px;min-width:38px;padding:0 8px;border-radius:12px;background:var(--theme-background-alt);color:var(--theme-text);border:1px solid var(--theme-border)}.game-fullscreen-header .gf-vote-toolbar .gamejoy-vote-button.is-active{background:var(--theme-primary);color:var(--theme-button-text);border-color:var(--theme-primary)}.game-fullscreen-header .gf-vote-toolbar .gamejoy-vote-button[data-vote-value="-1"].is-active{background:var(--theme-danger);border-color:var(--theme-danger)}
@media(max-width:760px){.game-fullscreen-header .gf-left{max-width:120px}.game-fullscreen-header .gf-game-info .gamejoy-sync-status{display:none}.game-fullscreen-header .gf-actions{max-width:calc(100% - 125px);gap:5px}.game-fullscreen-header .gamejoy-toolbar-tool,.game-fullscreen-header .gf-vote-toolbar .gamejoy-vote-button{width:34px;height:34px;min-width:34px;border-radius:10px}.game-fullscreen-header .gf-vote-toolbar .gamejoy-vote-button{padding:0 6px}}
@media (orientation:landscape) and (max-height:520px) and (pointer:coarse){.game-fullscreen-header .gf-actions{max-width:calc(100vw - 34px);overflow-x:auto}.game-fullscreen-header .gamejoy-toolbar-tool,.game-fullscreen-header .gf-vote-toolbar .gamejoy-vote-button,.game-fullscreen-header .gf-drag-handle,.game-fullscreen-header .gf-minimize{width:42px!important;height:42px!important;min-width:42px!important;border-radius:13px!important}}

/* v3.5.39 — hide fullscreen Like/Dislike group on mobile only. */
@media (max-width:760px){
  .game-fullscreen-header .gamejoy-vote-box.gamejoy-vote-toolbar.gf-vote-toolbar{
    display:none!important;
  }
}
