.game-hero{align-items:center;gap:var(--space-12);min-height:34rem;padding:var(--space-12);border:1px solid var(--border-strong);background:linear-gradient(90deg, var(--surface-hud) 12%, color-mix(in srgb, var(--surface-hud) 82%, transparent) 62%, var(--surface-screen)), var(--game-art,url(/images/worlds/orbital-city.webp)) center / cover;clip-path:polygon(0 0, calc(100% - var(--cut-corner)) 0, 100% var(--cut-corner), 100% 100%, var(--cut-corner) 100%, 0 calc(100% - var(--cut-corner)));grid-template-columns:minmax(0,1fr) minmax(18rem,.5fr);display:grid;position:relative;overflow:hidden}.game-hero:after{content:"";background:var(--gradient-brand);height:2px;box-shadow:0 0 18px var(--accent-primary);position:absolute;inset:auto 10% 0}.game-hero-copy{z-index:1;justify-items:start;gap:var(--space-4);display:grid;position:relative}.game-hero h1{max-width:14ch;font-size:clamp(var(--text-3xl), 6vw, 4.8rem);letter-spacing:-.05em;text-transform:uppercase}.game-hero-copy>p{max-width:var(--width-prose);color:var(--text-secondary);font-size:var(--text-lg)}.game-cover{z-index:1;aspect-ratio:3/4;border:1px solid var(--border-strong);background:var(--surface-screen);width:min(100%,18rem);box-shadow:var(--shadow-raised);background-position:50%;background-size:cover;justify-self:end;place-items:center;display:grid;position:relative;overflow:hidden;transform:rotate(2deg)}.game-cover span{color:var(--accent-secondary);font-family:var(--font-display);text-shadow:0 0 30px var(--accent-primary);font-size:8rem}.game-stats{border:1px solid var(--border-strong);background:var(--surface-hud);border-top:0;grid-template-columns:repeat(4,1fr);display:grid}.game-stats>div{align-content:center;gap:var(--space-2);min-height:7rem;padding:var(--space-4) var(--space-6);border-right:1px solid var(--border-subtle);display:grid}.game-stats>div:last-child{border-right:0}.game-stats span,.game-context span{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase}.game-stats strong{font-family:var(--font-display);font-size:var(--text-2xl)}.game-stats [data-accent=true] strong{color:var(--accent-discovery)}.game-context{gap:var(--space-3);padding-block:var(--space-12);border-bottom:1px solid var(--border-subtle);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.game-context>div{align-content:center;gap:var(--space-2);min-height:6rem;padding:var(--space-4);border:1px solid var(--border-subtle);background:var(--surface-sunken);display:grid}.game-context strong{font-family:var(--font-display);font-size:var(--text-lg)}.game-soundtrack{padding-top:var(--space-16)}.game-soundtrack>header{justify-content:space-between;align-items:flex-end;gap:var(--space-8);margin-bottom:var(--space-8);display:flex}.game-soundtrack>header>div{gap:var(--space-3);display:grid}.game-soundtrack h2{font-size:var(--text-3xl);text-transform:uppercase}.game-soundtrack header p{max-width:var(--width-prose);color:var(--text-secondary)}.game-soundtrack>header>span{color:var(--accent-discovery);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.1em;white-space:nowrap}.soundtrack-list{border:1px solid var(--border-strong);background:var(--surface-hud);padding:0;list-style:none;overflow:hidden}.soundtrack-list li{border-bottom:1px solid var(--border-subtle)}.soundtrack-list li:last-child{border-bottom:0}.soundtrack-list a{align-items:center;gap:var(--space-4);min-height:5.5rem;padding:var(--space-3) var(--space-6);background:linear-gradient(90deg, var(--surface-cyan-soft), transparent 34%);transition:background var(--duration-fast), transform var(--duration-fast);grid-template-columns:2.5rem minmax(12rem,1fr) 5rem 5rem 4rem 4rem;text-decoration:none;display:grid}.soundtrack-list a:hover{background:linear-gradient(90deg, var(--surface-accent-soft), transparent 62%);transform:translateX(var(--space-1))}.soundtrack-index{color:var(--accent-secondary);font-family:var(--font-mono)}.soundtrack-title{min-width:0;display:grid}.soundtrack-title strong,.soundtrack-title small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.soundtrack-title strong{font-family:var(--font-display);font-size:var(--text-lg);text-transform:uppercase}.soundtrack-title small,.soundtrack-stat small{color:var(--text-muted)}.soundtrack-stat{gap:2px;display:grid}.soundtrack-stat small{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase}.soundtrack-stat strong{font-family:var(--font-display)}.soundtrack-list em{color:var(--accent-secondary);font-family:var(--font-mono);font-size:var(--text-2xs);font-style:normal}.game-empty{align-content:center;place-items:center;gap:var(--space-3);border:1px solid var(--border-subtle);text-align:center;min-height:20rem;display:grid}.game-empty p{color:var(--text-secondary)}@media (max-width:900px){.game-hero{padding:var(--space-8);grid-template-columns:1fr auto}.game-cover{width:12rem}.game-stats{grid-template-columns:repeat(2,1fr)}.game-stats>div:nth-child(2){border-right:0}.game-stats>div:nth-child(n+3){border-top:1px solid var(--border-subtle)}.soundtrack-list a{grid-template-columns:2.5rem minmax(9rem,1fr) 5rem 5rem}.soundtrack-stat.prominence,.soundtrack-list em{display:none}}@media (max-width:720px){.game-hero{width:100%;min-height:30rem;padding:var(--space-8) var(--space-5);grid-template-columns:1fr;margin-left:0}.game-cover{display:none}.game-hero h1{font-size:var(--text-3xl)}.game-stats{width:100%;margin-left:0}.game-stats>div{min-height:6rem;padding:var(--space-3) var(--space-4)}.game-context{padding-block:var(--space-8);grid-template-columns:1fr}.game-soundtrack{padding-top:var(--space-12)}.game-soundtrack>header{align-items:start;gap:var(--space-3);margin-bottom:var(--space-6);flex-direction:column}.game-soundtrack h2{font-size:var(--text-2xl)}.soundtrack-list{width:100%;margin-left:0}.soundtrack-list a{gap:var(--space-3);padding-inline:var(--space-4);grid-template-columns:2rem minmax(0,1fr) auto}.soundtrack-list .soundtrack-stat:nth-of-type(3),.soundtrack-stat.prominence{display:none}}@media (prefers-reduced-motion:reduce){.soundtrack-list a:hover{transform:none}}
