/* Wide cinematic gallery, scoped to the Crazy Mini Racers media section. */
.game-media{--media-width:70%;--media-progress:5.5556%;position:relative;isolation:isolate;width:min(1840px,calc(100% - 48px));margin:76px auto 12px;color:#dce9f2}
.game-media::before{content:"";position:absolute;z-index:-1;inset:30px 5% 0;pointer-events:none;background:radial-gradient(ellipse at 50% 40%,#679bc329,transparent 65%)}
.game-media-heading{display:flex;align-items:center;gap:30px;width:min(1450px,92%);margin:0 auto 34px}
.game-media-heading h2{margin:0;font:500 clamp(30px,3.5vw,52px)/1.1 Georgia,serif;letter-spacing:-.035em;color:#e9f3fb}
.game-media-heading-line{flex:1;height:1px;background:linear-gradient(90deg,#b3d7ed66,#7299b21a)}
.game-media-heading>span:last-child{font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#a7c4d9;line-height:1.8}
.game-media-heading b{padding:0 12px;font-weight:400;color:#6897b7}
.game-media-cinema{position:relative;display:grid;place-items:center;perspective:1500px;padding:8px 0 16px;touch-action:pan-y}
.game-media-stage{display:block;position:relative;z-index:2;width:var(--media-width);aspect-ratio:16/9;border:1px solid #c8e9ffcc;border-radius:5px;background:#07121d;box-shadow:0 0 0 4px #90c8eb0b,0 0 35px #8dc9f82b,0 25px 65px #0009;overflow:hidden;cursor:zoom-in}
.game-media-stage::after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid #e0f3ff26;border-radius:inherit}
.game-media-stage>img{display:block;width:100%;height:100%;object-fit:contain}
.game-media-enlarge{position:absolute;right:14px;bottom:14px;display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #abcde680;border-radius:4px;background:#07121de8;color:#e9f3fb;font-size:11px;letter-spacing:.035em;transition:background .2s}
.game-media-stage:hover .game-media-enlarge{background:#173b52}
.game-media-wing{position:absolute;z-index:1;top:13%;width:38%;height:74%;padding:0;overflow:hidden;cursor:pointer;border:1px solid #7eb4d67a;border-radius:4px;background:#091623;box-shadow:0 15px 40px #0007;transition:filter .3s,border-color .3s;filter:brightness(.6) saturate(.8)}
.game-media-wing img{display:block;width:100%;height:100%;object-fit:cover}
.game-media-wing::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#041020e8,transparent 60%),linear-gradient(90deg,#193a5744,#09152244)}
.game-media-wing-prev{left:1%;transform:rotateY(15deg);transform-origin:left center}
.game-media-wing-next{right:1%;transform:rotateY(-15deg);transform-origin:right center}
.game-media-wing>span{position:absolute;z-index:1;bottom:20px;max-width:30%;font-size:9px;letter-spacing:.15em;text-transform:uppercase;text-align:left;color:#bad9ed;line-height:1.6}
.game-media-wing>span b{display:block;font:500 15px/1.4 Georgia,serif;letter-spacing:0;text-transform:none;color:#edf7fd;margin-top:5px}
.game-media-wing-prev>span{left:20px}
.game-media-wing-next>span{right:20px;text-align:right}
.game-media-wing:hover{filter:brightness(.85) saturate(1);border-color:#cceaff}
.game-media-cinema-controls{position:absolute;z-index:3;inset:0 4%;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.game-media-arrow,.game-media-close{display:inline-flex;align-items:center;justify-content:center;border:1px solid #a4cce5a6;background:#071522dc;color:#e5f4ff;cursor:pointer;font:inherit;transition:background .2s,border-color .2s,box-shadow .2s}
.game-media-arrow{width:54px;min-width:54px;height:54px;border-radius:50%;font:300 38px/1 Georgia,serif;padding:0 0 4px;box-shadow:0 4px 18px #0005}
.game-media-cinema-controls .game-media-arrow{pointer-events:auto}
.game-media-arrow:hover,.game-media-close:hover{background:#1d4159;border-color:#ddf3ff;box-shadow:0 0 22px #8dc9f825}
.game-media-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;width:var(--media-width);margin:8px auto 22px}
.game-media-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;margin:0;font:500 clamp(18px,1.8vw,27px)/1.4 Georgia,serif;color:#e1eff8}
.game-media-position{display:flex;align-items:center;gap:20px;flex-shrink:0}
#game-media-count,.game-media-dialog-count{font:600 11px/1.4 'DM Sans',sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.15em;color:#aacde4;white-space:nowrap}
.game-media-progress{display:block;width:clamp(70px,10vw,180px);height:2px;background:#7593ac40}
.game-media-progress>span{display:block;width:var(--media-progress);height:100%;background:#b7e4ff;box-shadow:0 0 8px #addfff80;transition:width .3s}
.game-media-controls{display:none;gap:8px}
.game-media-thumbs{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4);gap:16px;width:min(1000px,76%);margin:0 auto;overflow-x:auto;padding:5px 5px 14px;scrollbar-width:thin;scrollbar-color:#7299b252 transparent;scroll-snap-type:x proximity}
.game-media-thumb{position:relative;display:block;aspect-ratio:16/9;border:1px solid #789fbb70;border-radius:4px;overflow:hidden;opacity:.5;scroll-snap-align:start;transition:opacity .2s,border-color .2s,box-shadow .2s}
.game-media-thumb:hover{opacity:.85}
.game-media-thumb[aria-current=true]{opacity:1;border-color:#e1f5ff;box-shadow:0 0 0 1px #caeaff88,0 0 16px #a9dfff2b}
.game-media-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.game-media a:focus-visible,.game-media button:focus-visible,.game-media-dialog button:focus-visible{outline:2px solid #d5f0ff;outline-offset:4px}
.game-media-dialog{position:fixed;inset:0;width:min(1680px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);margin:auto;padding:16px;border:1px solid #7299b280;border-radius:5px;background:#07121d;color:#dceefb;overflow:auto;touch-action:pan-y}
.game-media-dialog::backdrop{background:#02070ef2;backdrop-filter:blur(12px)}
.game-media-dialog-top,.game-media-dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px}
.game-media-dialog-top{margin-bottom:12px}
.game-media-close{gap:12px;min-height:44px;padding:8px 14px;border-radius:4px;font-size:13px}
.game-media-close span{font-size:24px;line-height:1}
.game-media-full-image{display:block;width:100%;height:auto;max-height:calc(100dvh - 220px);object-fit:contain;background:#02070e}
.game-media-dialog-bottom{margin-top:12px}
.game-media-full-caption{margin:0;text-align:center;font:500 18px/1.5 Georgia,serif;color:#d6e8f4}
body.game-media-open{overflow:hidden}
@media(max-width:1000px){
 .game-media{--media-width:76%;width:calc(100% - 24px);margin-top:58px}
 .game-media-heading{gap:20px}
 .game-media-heading>span:last-child{max-width:200px;font-size:8px}
 .game-media-heading b{padding:0 5px}
 .game-media-cinema-controls{inset:0 1.5%}
 .game-media-arrow{width:46px;min-width:46px;height:46px;font-size:32px}
 .game-media-wing>span{display:none}
 .game-media-thumbs{width:82%;gap:12px;grid-auto-columns:calc((100% - 36px)/4)}
}
@media(max-width:650px){
 .game-media{--media-width:100%;width:calc(100% - 28px);margin-top:42px}
 .game-media-heading{width:100%;margin-bottom:22px;gap:16px;align-items:center}
 .game-media-heading h2{font-size:32px}
 .game-media-heading-line{display:none}
 .game-media-heading>span:last-child{margin-left:auto;max-width:120px;text-align:right;font-size:7px;letter-spacing:.12em}
 .game-media-heading b{display:none}
 .game-media-cinema{padding:0}
 .game-media-wing,.game-media-cinema-controls{display:none}
 .game-media-enlarge{right:8px;bottom:8px;padding:8px;font-size:10px}
 .game-media-toolbar{margin:16px auto 14px;gap:12px}
 .game-media-caption{display:block;font-size:19px}
 .game-media-position{margin-top:7px;gap:12px}
 #game-media-count{font-size:9px}
 .game-media-progress{width:55px}
 .game-media-controls{display:flex}
 .game-media-arrow{width:44px;min-width:44px;height:44px;font-size:25px;padding:0 0 2px}
 .game-media-thumbs{width:100%;grid-auto-columns:calc((100% - 24px)/4);gap:8px;padding:5px 3px 12px}
 .game-media-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:10px}
 .game-media-full-image{max-height:calc(100dvh - 180px)}
 .game-media-full-caption{font-size:15px}
}
@media(prefers-reduced-motion:reduce){.game-media-thumb,.game-media-arrow,.game-media-close,.game-media-wing,.game-media-progress>span,.game-media-enlarge{transition:none}}
