@import url('./gga5.css');
/* A self-contained visual register for the arcade route. */
html[data-uiverse-route="shop"], body[data-uiverse-route="shop"] {
  --arc-bg: #101315;
  --arc-surface: #191d20;
  --arc-line: #2b3033;
  --arc-ink: #f1f3ee;
  --arc-muted: #a0a8aa;
  --arc-accent: #d0f58a;
  background: var(--arc-bg) !important;
  color: var(--arc-ink);
  color-scheme: dark;
  scroll-padding-top: 100px;
}
body[data-uiverse-route="shop"]::before,
body[data-uiverse-route="shop"]::after { display: none; }
body[data-uiverse-route="shop"] .uiverse-social-wrapper { display: none !important; }
body[data-uiverse-route="shop"] .uiverse-widget-wrapper {
  top: 0 !important;
  width: 100% !important;
  min-height: 80px;
  padding: 0 max(32px, calc((100vw - 1424px) / 2)) !important;
  background: #101315 !important;
  border-bottom: 1px solid var(--arc-line) !important;
}
body[data-uiverse-route="shop"] .site-wordmark { color: #f1f3ee; text-shadow: none; }
body[data-uiverse-route="shop"] .site-wordmark i { background: var(--arc-accent); height: 2px; width: 20px; }
body[data-uiverse-route="shop"] .uiverse-widget-wrapper .menu { background: #1d2124 !important; box-shadow: none !important; }
body[data-uiverse-route="shop"] .uiverse-widget-wrapper .link[aria-current="page"] { background: var(--arc-accent) !important; }
body[data-uiverse-route="shop"] .site-language-toggle { background: #23272a; color: #d6dcd9; }
body[data-uiverse-route="shop"] .auth-trigger { background: #23272a; }
body[data-uiverse-route="shop"] .qsg-empty-route { background: var(--arc-bg) !important; }
.arcade, .arcade-dialog { font-family: "Segoe UI", "Microsoft YaHei UI", "PingFang SC", sans-serif; }
.arcade button, .arcade input, .arcade-dialog button { font-family: inherit !important; }
.arcade :is(button,a,input,select):focus-visible, .arcade-dialog :is(button,canvas):focus-visible { outline: 2px solid #d0f58a; outline-offset: 4px; }
.arcade svg, .arcade-dialog svg { width: 20px; height: 20px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.arcade { width: min(1424px, calc(100% - 64px)); margin: 0 auto; padding-top: 112px; }
.arcade-layout { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 40px; align-items: start; }
.arcade-sidebar { position: sticky; top: 112px; padding-bottom: 32px; }
.arcade-brand { display: flex; align-items: center; gap: 11px; margin: 0 0 35px 11px; text-decoration: none; }
.arcade-brand-icon { display: grid; place-items: center; width: 38px; height: 38px; background: var(--arc-accent); color: #202917; border-radius: 12px; }
.arcade-brand-icon svg { width: 24px; height: 24px; }
.arcade-brand strong { display: block; font-size: 17px; font-weight: 760; letter-spacing: -0.03em; line-height: 1.2; }
.arcade-brand small { display: block; color: var(--arc-muted); font-size: 10px; margin-top: 4px; letter-spacing: 0.18em; }
.arcade-sidebar-label { color: #8c979b; font-size: 11px; margin: 25px 14px 12px; }
.arcade-categories, .arcade-library { display: flex; flex-direction: column; gap: 5px; }
.arcade-sidebar-button { display: flex; align-items: center; gap: 12px; text-align: left; width: 100%; min-height: 44px; padding: 0 13px; border-radius: 8px; color: #aab3b5; font-size: 13px; transition: background 180ms, color 180ms; }
.arcade-sidebar-button svg { width: 18px; height: 18px; }
.arcade-sidebar-button:hover { background: #21272a; color: #f1f3ee; }
.arcade-sidebar-button[aria-pressed="true"] { background: #293323; color: #d0f58a; font-weight: 650; }
.arcade-sidebar-button .arcade-count { margin-left: auto; font-size: 11px; min-width: 18px; text-align: center; opacity: 0.8; }
.arcade-sidebar-rule { height: 1px; margin: 24px 12px; background: var(--arc-line); }
.arcade-sidebar-note { padding: 17px 14px 0; margin-top: 21px; border-top: 1px solid var(--arc-line); }
.arcade-sidebar-note p { font-size: 12px; line-height: 1.8; color: var(--arc-muted); margin: 10px 0; }
.arcade-sidebar-note .arcade-dot { display: inline-block; width: 6px; height: 6px; background: var(--arc-accent); border-radius: 50%; margin-right: 7px; }
.arcade-sidebar-note span { color: #cbd3c8; font-size: 11px; }
.arcade-main { min-width: 0; }
.arcade-intro { display: flex; justify-content: space-between; gap: 24px; align-items: center; margin-bottom: 27px; }
.arcade-intro h1 { font-size: 29px; font-weight: 720; letter-spacing: -0.025em; line-height: 1.3; margin: 0 0 9px; text-wrap: balance; }
.arcade-intro h1 span { color: #d0f58a; }
.arcade-intro p { color: var(--arc-muted); margin: 0; font-size: 12px; line-height: 1.7; }
.arcade-search { display: flex; align-items: center; flex: 0 1 275px; min-width: 185px; height: 43px; padding: 0 13px; gap: 10px; background: #1d2225; border: 1px solid #31383b; border-radius: 9px; color: #a6b0b3; }
.arcade-search:focus-within { border-color: #c2e387; }
.arcade-search input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; font-size: 12px; color: #f1f3ee; }
.arcade-search input::placeholder { color: #a6b0b3; }
.arcade-search input::-webkit-search-cancel-button { cursor: pointer; }
.arcade-search svg { width: 17px; height: 17px; }
.arcade-search kbd { flex-shrink: 0; border: 1px solid #41494b; padding: 2px 4px; border-radius: 4px; font: 10px inherit; white-space: nowrap; }
.arcade-featured { display: grid; grid-template-columns: minmax(0, 2.26fr) minmax(225px, 1fr); gap: 17px; margin-bottom: 34px; }
.arcade-hero { min-height: 369px; position: relative; border-radius: 14px; overflow: hidden; background: #263322; isolation: isolate; }
.arcade-hero-art { position: absolute; inset: 0; background: url('/assets/arcade/voxel-hero.webp') 64% 50% / cover; z-index: -2; transition: transform 700ms cubic-bezier(0.16,1,0.3,1); }
.arcade-hero:hover .arcade-hero-art { transform: scale(1.025); }
.arcade-hero::before { position: absolute; inset: 0; z-index: -1; content: ''; background: linear-gradient(90deg,rgba(5,20,18,.91),rgba(9,25,20,.51) 45%,rgba(9,21,16,.02) 100%),linear-gradient(0deg,rgba(7,15,13,.75),transparent 50%); }
.arcade-hero-content { padding: 27px 30px; min-height: 322px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.arcade-hero-label { display: inline-flex; align-items: center; gap: 7px; font-size: 10px; font-weight: 650; color: #edffe1; background: rgba(195,238,137,.15); border: 1px solid rgba(216,255,186,.28); border-radius: 5px; padding: 5px 9px; }
.arcade-hero-label svg { width: 13px; height: 13px; }
.arcade-hero h2 { font-size: 41px; font-weight: 760; letter-spacing: -0.035em; margin: 21px 0 4px; line-height: 1.25; text-wrap: balance; }
.arcade-hero-en { color: #e0edcf; font-size: 10px; letter-spacing: 0.19em; margin: 0 0 15px; }
.arcade-hero-description { margin: 0 0 21px; width: min(285px, 75%); color: #e0e7de; font-size: 12px; line-height: 1.8; text-wrap: pretty; }
.arcade-hero-tags { display: flex; gap: 9px; margin: 0 0 19px; color: #e6ebde; font-size: 10px; }
.arcade-hero-tags span { background: rgba(255,255,255,.12); padding: 4px 7px; border-radius: 4px; }
.arcade-primary { display: inline-flex; min-height: 41px; gap: 11px; padding: 0 19px; align-items: center; justify-content: center; border-radius: 7px; background: #d0f58a; color: #202c16; font-size: 12px; font-weight: 720; transition: background 180ms, transform 180ms; }
.arcade-primary:hover { background: #e0ffa9; transform: translateY(-2px); }
.arcade-primary:active { transform: translateY(0); }
.arcade-primary svg { width: 15px; height: 15px; fill: currentColor; stroke-width: 1px; }
.arcade-hero-bottom { position: absolute; bottom: 15px; left: 30px; right: 24px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.arcade-hero-bottom > span { color: #e5ecdf; font-size: 9px; }
.arcade-slide-buttons { display: flex; gap: 6px; }
.arcade-slide-buttons button { min-width: 28px; min-height: 24px; display: grid; place-items: center; }
.arcade-slide-buttons button::after { content: ''; width: 17px; height: 3px; background: #7a8b81; border-radius: 4px; transition: width 200ms, background 200ms; }
.arcade-slide-buttons button[aria-pressed="true"]::after { width: 28px; background: #d0f58a; }
.arcade-spotlights { display: grid; grid-template-rows: 1fr 1fr; gap: 17px; }
.arcade-spotlight { position: relative; min-height: 172px; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; overflow: hidden; text-align: left; border-radius: 12px; isolation: isolate; padding: 17px 19px; }
.arcade-cover { background-image: url('/assets/arcade/covers.webp'); background-size: 600% 400%; background-position: var(--cover-x) var(--cover-y); }
.arcade[data-art="gameplay"] .arcade-cover,.arcade[data-art="gameplay"] .arcade-hero-art { background-image: var(--preview-image); background-size: cover; background-position: center; }
.arcade-proof { position: absolute; right: 8px; bottom: 8px; padding: 4px 6px; background: #101b22d9; color: #d5e1da; font-size: 8px; letter-spacing: .06em; border: 1px solid #ffffff20; border-radius: 4px; }
.arcade-collection-tools { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.arcade-art-switch { display: inline-flex; padding: 3px; background: #1d2427; border: 1px solid #354044; border-radius: 6px; }
.arcade-art-switch button { border: 0; padding: 5px 8px; color: #b1c1c4; background: transparent; border-radius: 3px; cursor: pointer; font: inherit; font-size: 10px; min-height: 25px; }
.arcade-art-switch button[aria-pressed="true"] { background: #344438; color: #d5efb7; }
.arcade-art-switch button:focus-visible { outline: 2px solid #c8f47c; outline-offset: 2px; }
.arcade-credits-link { color: #b6cbbd; text-underline-offset: 3px; }
.arcade-spotlight-art { position: absolute; inset: 0; z-index: -2; transition: transform 500ms cubic-bezier(0.16,1,0.3,1); }
.arcade-spotlight::before { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(8,14,18,.91),rgba(8,14,18,.08) 78%); z-index: -1; }
.arcade-spotlight:hover .arcade-spotlight-art { transform: scale(1.05); }
.arcade-spotlight small { color: #eef1e9; background: rgba(11,18,23,.6); border: 1px solid rgba(255,255,255,.24); border-radius: 4px; font-size: 9px; padding: 3px 6px; position: absolute; top: 12px; left: 14px; }
.arcade-spotlight strong { color: #fff; font-size: 19px; margin-bottom: 5px; }
.arcade-spotlight > span:last-child { color: #d0d9dd; font-size: 10px; }
.arcade-spotlight .arcade-spotlight-arrow { position: absolute; right: 14px; bottom: 20px; display: grid; width: 30px; height: 30px; place-items: center; background: rgba(255,255,255,.15); border: 1px solid rgba(255,255,255,.2); border-radius: 50%; color: white; }
.arcade-spotlight-arrow svg { width: 14px; height: 14px; }
.arcade-section { margin-bottom: 33px; }
.arcade-section-heading { display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-bottom: 18px; }
.arcade-section-heading h2 { font-size: 18px; font-weight: 670; margin: 0; display: flex; gap: 10px; align-items: center; letter-spacing: -.02em; }
.arcade-section-heading h2 svg { width: 19px; color: #d0f58a; }
.arcade-section-heading h2 small { font-size: 11px; color: var(--arc-muted); font-weight: 400; letter-spacing: 0; }
.arcade-text-button { display: inline-flex; align-items: center; gap: 6px; color: #adb8b6; font-size: 11px; min-height: 32px; }
.arcade-text-button:hover { color: #d0f58a; }
.arcade-text-button svg { width: 14px; height: 14px; }
.arcade-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px 18px; }
.arcade-game { min-width: 0; position: relative; }
.arcade-game-main { display: block; width: 100%; text-align: left; }
.arcade-game-art { display: block; aspect-ratio: 3 / 2; border-radius: 10px; overflow: hidden; position: relative; background-color: #253334; isolation: isolate; }
.arcade-game-image { position: absolute; inset: 0; transition: transform 500ms cubic-bezier(0.16,1,0.3,1); }
.arcade-game-art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(8,14,18,.3),transparent 50%); pointer-events: none; }
.arcade-game-main:hover .arcade-game-image { transform: scale(1.06); }
.arcade-game-badge { position: absolute; left: 9px; top: 9px; background: rgba(16,26,24,.88); color: #e5f4d5; font-size: 9px; font-weight: 550; padding: 4px 6px; border-radius: 4px; }
.arcade-game-play { position: absolute; left: 50%; top: 50%; z-index: 1; width: 43px; height: 43px; display: grid; place-items: center; border-radius: 50%; color: #233017; background: #d0f58a; opacity: 0; transform: translate(-50%,-40%); transition: transform 220ms,opacity 220ms; }
.arcade-game-main:is(:hover,:focus-visible) .arcade-game-play { opacity: 1; transform: translate(-50%,-50%); }
.arcade-game-play svg { fill: currentColor; width: 17px; height: 17px; }
.arcade-game-title { display: block; color: #ecf0ea; font-size: 13px; font-weight: 650; margin: 12px 31px 6px 1px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.arcade-game-meta { display: flex; color: #a2acaf; font-size: 10px; gap: 7px; align-items: center; margin-left: 1px; line-height: 1.5; }
.arcade-game-meta i { width: 2px; height: 2px; border-radius: 50%; background: #687479; }
.arcade-favorite { position: absolute; right: -3px; bottom: 21px; width: 33px; height: 33px; display: grid; place-items: center; color: #879294; border-radius: 50%; }
.arcade-favorite svg { width: 16px; height: 16px; }
.arcade-favorite:hover { background: #273027; color: #d0f58a; }
.arcade-favorite[aria-pressed="true"] { color: #d0f58a; }
.arcade-favorite[aria-pressed="true"] svg { fill: #d0f58a; }
.arcade-collection-header { border-top: 1px solid var(--arc-line); padding-top: 27px; }
.arcade-filter-row { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin-bottom: 20px; }
.arcade-filter-chip { padding: 7px 11px; border: 1px solid transparent; border-radius: 6px; color: #a6b0b2; font-size: 10px; min-height: 32px; transition: color 180ms, background 180ms; }
.arcade-filter-chip:hover { background: #22282b; color: #f1f3ee; }
.arcade-filter-chip[aria-pressed="true"] { color: #dcf1c0; background: #293323; border-color: #3c4b31; }
.arcade-sort { background: #1d2225; border: 1px solid #333b3d; border-radius: 6px; padding: 6px 24px 6px 9px; font-size: 10px; color: #c0c9c9; max-width: 180px; min-height: 32px; }
.arcade-filter-summary { color: #bac4c3; font-size: 11px; margin: 0 0 20px; }
.arcade-empty { grid-column: 1/-1; min-height: 240px; text-align: center; padding: 50px 15px; background: #181e20; border: 1px dashed #3d494b; border-radius: 12px; }
.arcade-empty > svg { margin: 0 auto 15px; width: 30px; height: 30px; color: #d0f58a; }
.arcade-empty h3 { font-size: 17px; font-weight: 600; margin: 0 0 12px; }
.arcade-empty p { font-size: 12px; line-height: 1.8; color: #b5c1c0; margin: 0 auto 20px; max-width: 40ch; }
.arcade-editorial { display: flex; align-items: center; justify-content: space-between; gap: 25px; margin: 36px 0; padding: 28px 29px; border-radius: 12px; background: #242e23; border: 1px solid #354032; }
.arcade-editorial h2 { margin: 0 0 7px; font-size: 21px; font-weight: 650; letter-spacing: -.02em; }
.arcade-editorial p { color: #bacab3; font-size: 12px; line-height: 1.7; margin: 0; }
.arcade-editorial .arcade-primary { flex-shrink: 0; background: transparent; border: 1px solid #677d56; color: #e0f2cb; }
.arcade-editorial .arcade-primary:hover { background: #33432b; }
.arcade-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-top: 35px; padding: 22px 0 28px; border-top: 1px solid var(--arc-line); color: #97a3a5; font-size: 10px; line-height: 1.8; }
.arcade-footer strong { color: #c7d1cc; font-weight: 650; letter-spacing: 0.07em; }
.arcade-footer p { margin: 0; }
.arcade-mobile-categories { display: none; }
.arcade-toast { position: fixed; z-index: 100; bottom: 24px; left: 50%; transform: translateX(-50%); color: #e7f4da; background: #2b3825; border: 1px solid #5a7048; border-radius: 8px; padding: 12px 20px; font-size: 12px; box-shadow: 0 8px 32px #0004; }

/* Native dialog provides inert background, escape handling and a focus boundary. */
.arcade-dialog { --arc-bg: #101315; --arc-ink: #f1f3ee; --arc-muted: #a0a8aa; --arc-accent: #d0f58a; padding: 0; width: min(1200px, calc(100vw - 44px)); max-width: none; max-height: calc(100dvh - 38px); overflow: auto; border: 1px solid #3b4447; border-radius: 15px; background: #151a1c; color: #f1f3ee; box-shadow: 0 30px 100px #0009; }
.arcade-dialog::backdrop { background: rgba(3,7,8,.89); }
body:has(.arcade-dialog[open]) { overflow: hidden !important; }
.arcade-player-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px; border-bottom: 1px solid #30383b; }
.arcade-player-title { display: flex; align-items: center; gap: 12px; min-width: 0; }
.arcade-player-title > span { height: 38px; width: 53px; flex-shrink: 0; border-radius: 6px; }
.arcade-player-title h2 { margin: 0 0 3px; font-size: 15px; letter-spacing: -.02em; }
.arcade-player-title p { margin: 0; font-size: 10px; color: #aebabc; }
.arcade-player-actions { display: flex; gap: 6px; }
.arcade-icon-button { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 7px; color: #b1bebc; }
.arcade-icon-button:hover { background: #2c3638; color: #eaf9da; }
.arcade-icon-button[aria-pressed="true"] { color: #d0f58a; background: #2e3925; }
.arcade-icon-button svg { width: 17px; height: 17px; }
.arcade-player-stage { position: relative; margin: 14px 18px 0; overflow: hidden; border-radius: 9px; background: #0e161b; aspect-ratio: 16/9; }
.arcade-player-stage canvas { display: block; width: 100%; height: 100%; outline: none; touch-action: none; }
.arcade-player-overlay { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 24px; background: rgba(8,17,21,.9); }
.arcade-player-overlay h3 { margin: 12px 0; font-size: 30px; font-weight: 700; letter-spacing: -.025em; text-wrap: balance; }
.arcade-player-overlay p { color: #bdcac9; font-size: 13px; line-height: 1.8; max-width: 46ch; margin: 0 0 20px; }
.arcade-player-overlay small { margin-top: 16px; font-size: 10px; color: #bbc7c8; line-height: 1.8; }
.arcade-overlay-emblem { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 15px; background: #2e4128; color: #d0f58a; }
.arcade-overlay-emblem svg { width: 25px; height: 25px; }
.arcade-player-status { position: absolute; left: 12px; top: 12px; padding: 6px 10px; border-radius: 6px; background: rgba(4,12,18,.8); color: #e1eedb; font-size: 10px; pointer-events: none; }
.arcade-player-footer { padding: 16px 20px 20px; }
.arcade-player-footer-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; }
.arcade-player-footer h3 { font-size: 11px; font-weight: 600; margin: 0 0 7px; color: #e1e8dd; }
.arcade-player-footer p { margin: 0; color: #b2bfbe; font-size: 11px; line-height: 1.8; }
.arcade-player-record { text-align: right; flex-shrink: 0; color: #d0f58a; font-size: 11px; }
.arcade-player-record small { color: #adb8bb; display: block; font-size: 10px; margin-bottom: 5px; }
.arcade-touch-controls { display: flex; justify-content: space-between; gap: 14px; margin-top: 16px; align-items: center; }
.arcade-touch-arrows { display: flex; gap: 6px; }
.arcade-touch-controls button { min-width: 42px; min-height: 40px; padding: 8px 12px; border: 1px solid #3b4a4c; border-radius: 7px; color: #cbdac6; background: #242e30; font-size: 12px; touch-action: none; user-select: none; }
.arcade-touch-controls button:active, .arcade-touch-controls button.is-held { background: #445333; color: #ecffd0; }
.arcade-touch-special { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.arcade-player-error { color: #f5cdb7 !important; }
.arcade-3d-hud { position: absolute; pointer-events: none; color: #f0f3dd; text-shadow: 0 1px 4px #10201bbb; }
.arcade-build-hud { left: 20px; bottom: 20px; padding: 13px 18px; background: #172b24d4; border: 1px solid #d3e2bd3a; border-radius: 9px; }
.arcade-build-hud strong { display: block; font-size: 17px; margin-bottom: 7px; }
.arcade-build-hud span { font-size: 10px; color: #d0dcc4; }
.arcade-race-hud { bottom: 20px; right: 25px; min-width: 160px; padding: 16px 19px; background: #0f1d26d4; border: 1px solid #aac6d039; border-radius: 10px; }
.arcade-race-hud > div { display: flex; align-items: baseline; gap: 8px; }
.arcade-race-hud strong { font-size: 39px; line-height: 1; font-weight: 750; font-variant-numeric: tabular-nums; }
.arcade-race-hud small { font-size: 10px; color: #b9d1d0; }
.arcade-race-hud > span { display: block; font-size: 10px; margin: 10px 0; }
.arcade-race-hud i { display: block; height: 4px; background: #3a565c; border-radius: 3px; overflow: hidden; }
.arcade-race-hud b { display: block; height: 100%; background: #8ce3d2; border-radius: 3px; }
.arcade-platform-hud { right: 20px; top: 19px; text-align: right; }
.arcade-platform-hud strong { font-size: 16px; display: block; margin-bottom: 5px; }
.arcade-platform-hud span { font-size: 10px; color: #f2ead0; }
.arcade-dialog:fullscreen { width: 100vw; max-height: 100dvh; border-radius: 0; display: flex; flex-direction: column; justify-content: center; }
.arcade-dialog:fullscreen .arcade-player-stage { width: min(100% - 36px, calc((100dvh - 195px) * 16 / 9)); flex-shrink: 0; margin: 14px auto 0; }
.arcade-player-shell:fullscreen { width: 100vw; height: 100dvh; background: #161d1e; color: #ecf3e7; display: flex; flex-direction: column; justify-content: center; }
.arcade-player-shell:fullscreen .arcade-player-stage { width: min(100% - 36px, calc((100dvh - 210px) * 16 / 9)); flex-shrink: 0; margin: 14px auto 0; }

@media (min-width: 1650px) { .arcade-hero { min-height: 400px; } .arcade-hero-content { min-height: 352px; } }
@media (max-width: 1250px) {
  .arcade { width: calc(100% - 48px); }
  .arcade-layout { grid-template-columns: 167px minmax(0,1fr); gap: 27px; }
  .arcade-featured { grid-template-columns: minmax(0,2fr) minmax(190px,1fr); }
  .arcade-hero-content { padding: 24px; }
  .arcade-hero h2 { font-size: 35px; }
  .arcade-hero-bottom { left: 24px; }
  .arcade-grid { gap: 22px 14px; }
  .arcade-game-meta { font-size: 9px; }
}
@media (max-width: 1020px) {
  .arcade-layout { grid-template-columns: minmax(0,1fr); }
  .arcade-sidebar { display: none; }
  .arcade-mobile-categories { display: flex; overflow-x: auto; gap: 7px; margin: -5px 0 21px; padding: 4px 0; scrollbar-width: thin; }
  .arcade-mobile-categories button { flex-shrink: 0; display: flex; align-items: center; gap: 7px; font-size: 11px; }
  .arcade-mobile-categories svg { width: 14px; height: 14px; }
  .arcade-intro h1 { font-size: 27px; }
  .arcade-featured { grid-template-columns: minmax(0,2.4fr) minmax(210px,1fr); }
  .arcade-hero { min-height: 350px; }
  .arcade-hero-content { min-height: 306px; }
}
@media (max-width: 700px) {
  body[data-uiverse-route="shop"] .uiverse-widget-wrapper { grid-template-columns: 1fr auto; min-height: 64px; padding: 10px 18px !important; row-gap: 8px; }
  body[data-uiverse-route="shop"] .uiverse-widget-wrapper .menu { grid-column: 1/-1; grid-row: 2; width: 100%; }
  body[data-uiverse-route="shop"] .site-wordmark { font-size: 10px; min-height: 32px; }
  body[data-uiverse-route="shop"] .site-tools { grid-column: 2; grid-row: 1; }
  body[data-uiverse-route="shop"] .site-language-toggle { min-height: 32px; }
  body[data-uiverse-route="shop"] .auth-trigger { min-height: 32px; padding: 4px 9px; }
  body[data-uiverse-route="shop"] .uiverse-widget-wrapper .link { flex: 1; min-width: 0 !important; min-height: 36px !important; height: 36px !important; padding: 0 8px !important; }
  body[data-uiverse-route="shop"] .uiverse-widget-wrapper .link-title { font-size: 11px !important; }
  .arcade { width: calc(100% - 36px); padding-top: 93px; padding-bottom: calc(80px + env(safe-area-inset-bottom)); }
  .arcade-intro { display: block; margin-bottom: 20px; }
  .arcade-intro h1 { font-size: 27px; margin-bottom: 8px; }
  .arcade-intro p { font-size: 11px; }
  .arcade-search { margin-top: 17px; width: 100%; height: 42px; }
  .arcade-search kbd { display: none; }
  .arcade-mobile-categories { margin-bottom: 17px; gap: 5px; }
  .arcade-featured { display: block; margin-bottom: 26px; }
  .arcade-hero { min-height: 342px; }
  .arcade-hero h2 { font-size: 36px; }
  .arcade-hero-content { min-height: 295px; padding: 22px; }
  .arcade-hero-description { width: 75%; font-size: 11px; }
  .arcade-hero-en { font-size: 9px; }
  .arcade-hero-bottom { left: 22px; right: 17px; }
  .arcade-spotlights { grid-template-columns: 1fr 1fr; grid-template-rows: auto; margin-top: 13px; gap: 12px; }
  .arcade-spotlight { min-height: 141px; padding: 14px; }
  .arcade-spotlight strong { font-size: 15px; }
  .arcade-spotlight > span:last-child { font-size: 9px; padding-right: 10px; max-width: 95%; }
  .arcade-spotlight-arrow { display: none !important; }
  .arcade-spotlight small { font-size: 8px; left: 10px; top: 10px; }
  .arcade-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 23px 13px; }
  .arcade-game-title { font-size: 12px; margin-top: 10px; }
  .arcade-game-meta { font-size: 9px; gap: 5px; }
  .arcade-favorite { bottom: 19px; right: -4px; }
  .arcade-game-badge { font-size: 8px; left: 6px; top: 6px; }
  .arcade-section-heading h2 { font-size: 17px; }
  .arcade-section-heading h2 small { font-size: 10px; }
  .arcade-filter-row { gap: 4px; }
  .arcade-filter-chip { padding: 6px 8px; font-size: 10px; }
  .arcade-editorial { padding: 23px 20px; flex-direction: column; align-items: flex-start; gap: 17px; }
  .arcade-editorial h2 { font-size: 20px; }
  .arcade-editorial p { font-size: 11px; }
  .arcade-footer { padding-bottom: 23px; flex-direction: column; align-items: flex-start; }
  .arcade-dialog { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); border-radius: 10px; }
  .arcade-player-head { padding: 11px 12px; gap: 6px; }
  .arcade-player-title { gap: 8px; }
  .arcade-player-title > span { display: none; }
  .arcade-player-title h2 { font-size: 13px; }
  .arcade-player-title p { font-size: 9px; }
  .arcade-player-actions { gap: 1px; }
  .arcade-icon-button { width: 29px; height: 31px; }
  .arcade-player-stage { margin: 8px 8px 0; }
  .arcade-player-overlay { padding: 12px; }
  .arcade-player-overlay h3 { font-size: 19px; margin: 6px 0; }
  .arcade-player-overlay p { font-size: 10px; line-height: 1.7; margin-bottom: 10px; max-width: 35ch; }
  .arcade-overlay-emblem { display: none; }
  .arcade-player-overlay small { display: none; }
  .arcade-primary { min-height: 38px; font-size: 11px; }
  .arcade-player-status { font-size: 8px; top: 6px; left: 6px; padding: 4px 7px; }
  .arcade-build-hud { left: 8px; bottom: 8px; padding: 6px 8px; }
  .arcade-build-hud strong { font-size: 10px; margin-bottom: 3px; }
  .arcade-build-hud span { font-size: 7px; }
  .arcade-race-hud { right: 9px; bottom: 8px; min-width: 90px; padding: 7px 9px; }
  .arcade-race-hud strong { font-size: 22px; }
  .arcade-race-hud small, .arcade-race-hud > span { font-size: 7px; }
  .arcade-race-hud > span { margin: 5px 0; }
  .arcade-platform-hud { right: 10px; top: 9px; }
  .arcade-platform-hud strong { font-size: 10px; }
  .arcade-platform-hud span { font-size: 7px; }
  .arcade-player-footer { padding: 12px; }
  .arcade-player-footer-top { gap: 12px; }
  .arcade-player-footer p { font-size: 10px; }
  .arcade-player-record { font-size: 10px; }
  .arcade-touch-controls { gap: 8px; margin-top: 12px; flex-wrap: wrap; }
  .arcade-touch-controls button { min-width: 36px; min-height: 40px; padding: 7px 9px; font-size: 11px; }
  .arcade-touch-arrows { gap: 4px; }
  .arcade-touch-special { gap: 4px; }
}
@media (max-width: 370px) { .arcade { width: calc(100% - 28px); } .arcade-player-record { display: none; } .arcade-game-meta span:last-child { display: none; } }
@media (prefers-reduced-motion: reduce) {
  .arcade *, .arcade *::before, .arcade *::after, .arcade-dialog * { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
