/* Shared control geometry; retain App lime and Org amber identities. */
body[data-detail-polish]{--detail-accent:#d8ff72;--detail-dark:#13200d;--detail-control:#182125;--detail-border:#75868a;--detail-muted:#b8c3c7}
body.visual-library[data-detail-polish]{--detail-accent:#ffcd7c;--detail-dark:#261b0c;--detail-control:#20232c;--detail-border:#8b8e9c;--detail-muted:#bec1ce}

/* A single positioned group owns the icon and its caption. No negative margins. */
body[data-detail-polish] .external-launch-stage .external-art{width:100%;max-width:100%;box-sizing:border-box}
body[data-detail-polish] .external-art .launch-action{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;justify-items:center;align-content:center;gap:12px;z-index:1;pointer-events:none;width:max-content;max-width:calc(100% - 32px)}
body[data-detail-polish] .external-art .launch-action .launch-disc{position:relative;inset:auto;margin:0!important;padding:0!important;transform:none!important;box-sizing:border-box;width:76px;height:76px;min-height:76px;display:grid;place-items:center;flex:none;border:1px solid #ffffff70;border-radius:50%;background:var(--detail-accent);color:var(--detail-dark);box-shadow:0 8px 28px #0006;transition:box-shadow .18s,background .18s}
body[data-detail-polish] .external-art .launch-action .launch-picture-label{position:static;inset:auto;transform:none;margin:0;padding:6px 16px;max-width:100%;white-space:normal;text-align:center;font:650 14px/1.4 Inter,system-ui,sans-serif;color:#fff;background:#11191ee8;border:1px solid #ffffff40;border-radius:999px;text-shadow:none;box-shadow:0 3px 12px #0003}
body[data-detail-polish] .launch-disc>.detail-play-icon,body[data-detail-polish] .org-launch-disc>.detail-play-icon{display:block!important;position:static!important;inset:auto!important;width:32px!important;height:32px!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;opacity:1!important;filter:none!important;object-fit:contain!important;transform:none!important}
body[data-detail-polish] .launch-screen>.launch-disc,body[data-detail-polish] .org-launch-disc{box-sizing:border-box;padding:0!important;display:grid;place-items:center;background:var(--detail-accent);color:var(--detail-dark);font-size:0;line-height:1;width:76px;height:76px;min-height:76px}
body[data-detail-polish] .external-art:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at center,#0003 0,transparent 65%)}
body[data-detail-polish] .external-art:hover .launch-action .launch-disc{box-shadow:0 0 0 7px #ffffff16,0 10px 32px #0007}
body[data-detail-polish] .external-art:focus-visible{outline:3px solid var(--detail-accent);outline-offset:4px}

/* Save buttons remain visible over pale and dark covers, in both states. */
body[data-detail-polish] :is(.heart-button,.catalog-save){display:grid!important;place-items:center;box-sizing:border-box;opacity:1!important;width:36px!important;height:36px!important;min-height:36px!important;padding:0!important;border:1px solid #ffffff8c!important;border-radius:10px!important;background:#131b20f5!important;color:#fff!important;box-shadow:0 2px 10px #0007;transition:background .15s,border-color .15s,box-shadow .15s;cursor:pointer}
body[data-detail-polish] :is(.heart-button,.catalog-save):before{content:"";position:absolute;width:20px;height:20px;inset:50% auto auto 50%;transform:translate(-50%,-50%);background:#fff;mask:url('/assets/ui/heart.svg') center/contain no-repeat;-webkit-mask:url('/assets/ui/heart.svg') center/contain no-repeat;pointer-events:none}
body[data-detail-polish] :is(.heart-button,.catalog-save)>img{visibility:hidden!important}
body[data-detail-polish] :is(.heart-button,.catalog-save)[aria-pressed=true]{background:var(--detail-accent)!important;border-color:var(--detail-accent)!important;color:var(--detail-dark)!important}
body[data-detail-polish] :is(.heart-button,.catalog-save)[aria-pressed=true]:before{background:var(--detail-dark);mask-image:url('/assets/ui/heart-fill.svg');-webkit-mask-image:url('/assets/ui/heart-fill.svg')}
body[data-detail-polish] :is(.heart-button,.catalog-save):hover{border-color:var(--detail-accent)!important;box-shadow:0 0 0 3px #ffffff1a,0 2px 10px #0006}
body[data-detail-polish] :is(.heart-button,.catalog-save):focus-visible{outline:3px solid var(--detail-accent)!important;outline-offset:4px}
body[data-detail-polish] .external-launch-stage .launch-save{width:44px!important;height:44px!important;min-height:44px!important;top:12px;right:12px;z-index:3}

/* Give side recommendations two usable columns, and move them below at tablet widths. */
body[data-detail-polish] .external-player-layout>.player-suggestions{margin:0!important}
body[data-detail-polish] .external-player-layout>.player-suggestions .player-suggestions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}
body[data-detail-polish] .player-suggestions img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:9px;background:#1b2429}
body[data-detail-polish] .player-suggestions strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;overflow:hidden;font:550 12px/1.45 Inter,system-ui,sans-serif;padding-top:7px;min-height:2.9em;color:#e5ebed}
body[data-detail-polish] .player-suggestions h2{font-size:13px!important;color:#d1dbdf}
body[data-detail-polish] .player-suggestions a{border-radius:9px;outline-offset:4px}
body[data-detail-polish] .player-suggestions a:focus-visible{outline:3px solid var(--detail-accent)}

/* Search has one border, not an inset second input box. */
body[data-detail-polish] .global-search form{border:1px solid #58676d;border-radius:12px;background:#1b2327;transition:border-color .15s,box-shadow .15s}
body[data-detail-polish] .global-search input{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#f4f6f7;min-width:0;font-size:14px}
body[data-detail-polish] .global-search input::placeholder{color:#aebbc1;opacity:1}
body[data-detail-polish] .global-search form:focus-within{border-color:var(--detail-accent);box-shadow:0 0 0 3px #d8ff721b}
body[data-detail-polish] .global-search input:focus-visible{outline:none}
body[data-detail-polish] .global-search button{flex:0 0 44px;width:44px;min-height:44px;padding:11px}
body[data-detail-polish] .global-search button:focus-visible{outline-offset:-4px}
body[data-detail-polish] .global-results{z-index:180;max-height:min(65dvh,540px);overflow-y:auto}
body[data-detail-polish] .locale-menu summary>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Small supporting text and filter states need contrast without overpowering artwork. */
body[data-detail-polish] :is(.visual-caption small,.external-launch-note,.source-footnote,.footer-bottom>span,.footer-brand>p,.new-game small,.new-game time){color:var(--detail-muted)!important}
body[data-detail-polish] .nav-genres small{color:#c0ced2;background:#253338}
body[data-detail-polish] :is(.genre-chips button,.genre-chip,.chip,.filter-buttons button){border-color:#617178;color:#dbe3e6}
body[data-detail-polish] :is(.genre-chips button,.genre-chip,.chip,.filter-buttons button)[aria-pressed=true]{background:var(--detail-accent);border-color:var(--detail-accent);color:var(--detail-dark);font-weight:650}
body[data-detail-polish] :is(.visual-caption h2,.visual-caption h3,.visual-caption strong){line-height:1.45!important}
body[data-detail-polish] :is(.round-icon,.org-fullscreen,.game-like){border-color:#75868a;background:#192126;color:#edf3f5}
body[data-detail-polish] .game-like[aria-pressed=true]{background:#2c3926;color:var(--detail-accent);border-color:var(--detail-accent)}
body.visual-library[data-detail-polish] .game-like[aria-pressed=true]{background:#3a2d1b}
/* Org quick links share one compact baseline instead of a tall, half-empty panel. */
body.visual-library[data-detail-polish] .arcade-quick-play.visual-routes{display:flex!important;align-items:center;flex-wrap:nowrap;gap:14px;padding:16px 18px;min-height:0;height:auto;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin}
body.visual-library[data-detail-polish] .visual-routes>span:first-child{flex:none;font-size:10px;white-space:nowrap}
body.visual-library[data-detail-polish] .visual-routes>a{display:flex!important;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;flex:0 0 210px;min-width:0;width:210px;min-height:62px;height:62px;padding:7px;background:#1d222d;border:1px solid #494f5e;border-radius:9px;font:550 12px/1.45 Inter,system-ui,sans-serif;color:#ecedf4;text-align:left;scroll-snap-align:start}
body.visual-library[data-detail-polish] .visual-routes>a>img{position:static;display:block;flex:none;width:64px!important;height:44px!important;aspect-ratio:auto;object-fit:cover;border-radius:5px;margin:0}
body.visual-library[data-detail-polish] .visual-routes>a>svg{display:none}
body.visual-library[data-detail-polish] .visual-routes>.quick-note{flex:0 0 145px;min-width:145px;margin-inline-start:auto;font-size:11px;line-height:1.6;color:var(--detail-muted);text-align:right;white-space:normal}
body.visual-library[data-detail-polish] .catalogue-paths{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}
body.visual-library[data-detail-polish] .catalogue-paths>a{display:inline-flex;align-items:center;min-height:40px;padding:8px 13px;border:1px solid #555a67;border-radius:999px;font-size:12px;line-height:1.5;color:#e2e5ee}
body.visual-library[data-detail-polish] .top-nav a:has([data-saved-total]){display:flex;align-items:center;gap:6px}

@media(max-width:1040px){
 body[data-detail-polish] .external-player-layout{display:block}
 body[data-detail-polish] .external-player-layout>.player-suggestions{margin-top:22px!important}
 body[data-detail-polish] .external-player-layout>.player-suggestions .player-suggestions-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
}
@media(max-width:900px){body[data-detail-polish] .external-player-layout>.player-suggestions .player-suggestions-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){
 body[data-detail-polish] :is(.heart-button,.catalog-save){width:44px!important;height:44px!important;min-height:44px!important;border-radius:11px!important}
 body[data-detail-polish] .external-launch-stage .launch-save{top:10px;right:10px}
 body[data-detail-polish] .external-art .launch-action .launch-disc{width:64px;height:64px;min-height:64px}
 body[data-detail-polish] .external-art .launch-action{gap:10px}
 body[data-detail-polish] .external-art .launch-action .launch-picture-label{font-size:13px;padding:5px 14px}
 body[data-detail-polish] .launch-disc>.detail-play-icon,body[data-detail-polish] .org-launch-disc>.detail-play-icon{width:28px!important;height:28px!important}
 body[data-detail-polish] .global-search input{font-size:16px!important;height:44px!important}
 body[data-detail-polish] :is(.nav-toggle,.nav-close,.locale-menu summary){min-width:44px;min-height:44px}
 body[data-detail-polish] :is(.genre-chips button,.genre-chip,.chip,.filter-buttons button){min-height:40px!important}
 body[data-detail-polish] .catalog-control-row select{min-height:44px!important}
 body[data-detail-polish] :is(.round-icon,.org-fullscreen,.game-like){min-width:44px;min-height:44px}
 body.visual-library[data-detail-polish] .header-actions .icon-button{width:44px;height:44px;min-width:44px;min-height:44px;padding:11px}
 body.visual-library[data-detail-polish] .arcade-quick-play.visual-routes{padding:12px;gap:10px}
 body.visual-library[data-detail-polish] .visual-routes>a{flex-basis:185px;width:185px}
}
@media(max-width:680px){body[data-detail-polish] .external-player-layout>.player-suggestions .player-suggestions-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 10px}body[data-detail-polish] .player-suggestions strong{font-size:11px}}
@media(max-width:680px){body.discovery-upgrade[data-detail-polish] .arcade-header-inner{grid-template-columns:44px minmax(0,1fr) auto;gap:10px}body.discovery-upgrade[data-detail-polish] .arcade-brand{font-size:18px;letter-spacing:-.6px;gap:7px;min-width:0}body.discovery-upgrade[data-detail-polish] .arcade-brand>img{width:27px;height:27px}body.discovery-upgrade[data-detail-polish] .locale-menu summary{max-width:110px;font-size:10px}}
@media(max-width:680px){body.discovery-upgrade[data-detail-polish] .floating-navigation{top:64px;height:calc(100dvh - 64px)}body.discovery-upgrade[data-detail-polish]:not(.is-discovery-home) .floating-navigation{top:120px;height:calc(100dvh - 120px)}body.discovery-upgrade[data-detail-polish].menu-open .nav-scrim{inset:120px 0 0}body.discovery-upgrade[data-detail-polish].is-discovery-home.menu-open .nav-scrim{inset:64px 0 0}}
@media(max-width:380px){body[data-detail-polish] .locale-menu summary{width:44px;max-width:44px!important;justify-content:center;gap:0}body[data-detail-polish] .locale-menu summary>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}body[data-detail-polish] .locale-menu summary>.ui-icon:last-child{display:none}}
@media(max-width:360px){body[data-detail-polish] .external-player-layout>.player-suggestions .player-suggestions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){body[data-detail-polish] :is(.external-art,.launch-disc,.heart-button,.catalog-save,.global-search form){transition:none!important}}
