
:root{
  --bg:#050208;--panel:rgba(7,4,14,.88);--panel2:rgba(12,7,21,.74);--line:rgba(255,255,255,.13);
  --text:#f7f5fb;--muted:#aaa4b8;--red:#ff2948;--pink:#ff55e8;--cyan:#21eaff;--purple:#9574ff;
  --green:#43f5a0;--orange:#ff9d34;--accent:var(--gb-initial-accent, #ff2948);--header-h:84px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;background:radial-gradient(circle at 20% 0%,#20102e 0,transparent 35%),#050208;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}
button,input{font:inherit}button,a{color:inherit}button{cursor:pointer}a{text-decoration:none}
:focus-visible{outline:2px solid #fff;outline-offset:4px}
.hidden{display:none!important}
.boot-suppressed .boot{display:none!important}

/* Boot */
.boot,.module-loader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:#020104;color:var(--red);font-family:"Courier New",monospace;overflow:hidden}
.boot::before,.module-loader::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;background:repeating-linear-gradient(to bottom,rgba(0,0,0,.55) 0 1px,transparent 1px 4px);animation:flicker 3.5s infinite}
.boot-inner{position:relative;width:min(720px,calc(100vw - 40px));padding:26px}
.boot-brand{margin:0 0 20px;color:#ff6a7e;font-weight:900;font-size:12px;letter-spacing:.35em;text-transform:uppercase}
.boot-lines{min-height:158px;line-height:1.65;text-shadow:0 0 12px rgba(255,41,72,.65)}
.boot-line{opacity:0;transform:translateY(4px);animation:linein .09s forwards}
.boot-caret{display:inline-block;width:9px;height:18px;background:var(--red);vertical-align:middle;animation:caret .8s steps(1) infinite;box-shadow:0 0 12px var(--red)}
.boot-progress-head{display:flex;justify-content:space-between;margin:24px 0 9px;font-size:11px;font-weight:900;letter-spacing:.28em;color:#ff8a9a}
.progress-track{height:11px;border:1px solid rgba(255,41,72,.5);border-radius:999px;background:rgba(255,41,72,.09);overflow:hidden;box-shadow:0 0 18px rgba(255,41,72,.24)}
.progress-bar{height:100%;width:0;background:var(--red);box-shadow:0 0 15px 4px currentColor;transition:width .04s linear}
.skip-boot{margin-top:18px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);padding:9px 13px;border-radius:9px;color:#ddd;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.boot.crt-off{animation:crtOff .20s ease-in forwards}
@keyframes flicker{0%,100%{opacity:.35}48%{opacity:.28}50%{opacity:.5}52%{opacity:.3}}
@keyframes caret{0%,49%{opacity:1}50%,100%{opacity:0}}
@keyframes linein{to{opacity:1;transform:none}}
@keyframes crtOff{0%{transform:scaleY(1);opacity:1;filter:brightness(1)}60%{transform:scaleY(.02);opacity:1;filter:brightness(3)}100%{transform:scaleY(.002) scaleX(.4);opacity:0;filter:brightness(6)}}
.module-loader{z-index:9000;background:rgba(1,0,4,.88);backdrop-filter:blur(12px)}
.module-box{position:relative;width:min(480px,calc(100vw - 38px));padding:28px;border:1px solid var(--accent);border-radius:18px;background:rgba(4,2,9,.94);box-shadow:0 0 40px color-mix(in srgb,var(--accent) 35%,transparent)}
.module-box strong{display:block;color:var(--accent);font-family:"Courier New",monospace;letter-spacing:.18em;text-transform:uppercase;margin-bottom:17px}
.module-box small{display:block;color:#c8c3d0;margin-top:12px;font-family:"Courier New",monospace}

/* Header */
.site-header{position:fixed;z-index:500;top:0;left:0;right:0;height:var(--header-h);display:grid;grid-template-columns:minmax(180px,.75fr) minmax(620px,2.2fr) minmax(190px,.75fr);align-items:center;gap:20px;padding:11px clamp(16px,2.2vw,42px);border-bottom:1px solid rgba(255,255,255,.09);background:linear-gradient(180deg,rgba(3,1,7,.96),rgba(3,1,7,.74));backdrop-filter:blur(18px) saturate(135%);box-shadow:0 12px 42px rgba(0,0,0,.35)}
.logo-btn{appearance:none;border:0;background:transparent;padding:0;display:flex;align-items:center;min-width:0}.logo-btn img{display:block;width:min(255px,100%);height:auto;filter:drop-shadow(0 0 13px rgba(255,39,70,.45))}
.main-nav{display:flex;justify-content:center;align-items:center;gap:clamp(10px,1.7vw,30px)}
.nav-btn{appearance:none;border:0;background:transparent;padding:18px 3px 13px;position:relative;color:#ddd9e3;text-transform:uppercase;font-weight:900;letter-spacing:.13em;font-size:clamp(10px,.82vw,14px);white-space:nowrap;transition:.2s ease}
.nav-btn::after{content:"";position:absolute;left:8%;right:8%;bottom:4px;height:2px;border-radius:99px;background:var(--tab-color,var(--red));box-shadow:0 0 13px var(--tab-color,var(--red));transform:scaleX(0);transition:.2s ease}.nav-btn:hover,.nav-btn.active{color:#fff;text-shadow:0 0 16px var(--tab-color,var(--red))}.nav-btn:hover::after,.nav-btn.active::after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.icon-btn,.social-link{appearance:none;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.045);transition:.2s ease}.icon-btn:hover,.social-link:hover{transform:translateY(-3px);border-color:var(--red);box-shadow:0 0 18px rgba(255,41,72,.35)}.icon-btn svg,.social-link svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2}.social-link.youtube{color:#ff2c48}.social-link.instagram{color:#ff57ea}.social-link.tiktok{color:#22e8ff}.mobile-menu-btn{display:none}

/* Hero room */
.hero{padding-top:var(--header-h);background:#030106}
.room-stage{position:relative;width:100%;max-width:1479px;aspect-ratio:1479/1042;margin:0 auto;isolation:isolate;overflow:hidden;background-image:linear-gradient(to bottom,rgba(2,1,6,.06),rgba(2,1,6,.12) 60%,rgba(2,1,6,.46)),url("/gala-page/wp-content/themes/gamingbroject-newsroom/assets/embedded-01-16e060f95089.webp");background-size:100% 100%;background-position:center;box-shadow:0 40px 100px rgba(0,0,0,.78)}
.room-stage::after{content:"";position:absolute;z-index:4;inset:0;pointer-events:none;background:radial-gradient(circle at 54% 44%,transparent 25%,rgba(0,0,0,.15) 78%),linear-gradient(90deg,rgba(0,0,0,.13),transparent 23%,transparent 80%,rgba(0,0,0,.16))}
.scanlines{position:absolute;z-index:80;inset:0;pointer-events:none;opacity:.11;mix-blend-mode:overlay;background:repeating-linear-gradient(to bottom,transparent 0 3px,rgba(255,255,255,.12) 4px)}

/* Puzzle lift pieces */
.room-piece,.room-void{position:absolute;inset:0;pointer-events:none;background-size:100% 100%;background-position:center;opacity:0;transition:opacity .14s ease,transform .36s cubic-bezier(.2,.85,.2,1),filter .3s ease;will-change:transform,filter}
.room-piece{z-index:12;background-image:url("/gala-page/wp-content/themes/gamingbroject-newsroom/assets/embedded-01-16e060f95089.webp")}.room-void{z-index:11;background:linear-gradient(145deg,rgba(0,0,0,.98),rgba(8,2,15,.90));box-shadow:inset 0 0 35px rgba(0,0,0,.98)}
.room-stage[data-hover] .room-piece.active{opacity:1;transform:translate3d(var(--dx),var(--dy),0) scale(1.025);filter:brightness(1.17) saturate(1.28) drop-shadow(0 0 9px var(--piece-accent)) drop-shadow(0 18px 30px rgba(0,0,0,.75))}
.room-stage[data-hover] .room-void.active{opacity:.82}
.piece-news,.void-news{clip-path:polygon(0 0,42% 0,43% 32%,37% 37%,0 34%);--dx:-1%;--dy:-1.2%;--piece-accent:var(--red)}
.piece-hardware,.void-hardware{clip-path:polygon(0 27%,41% 26%,43% 56%,35% 66%,0 61%);--dx:-1.2%;--dy:-.4%;--piece-accent:var(--cyan)}
.piece-guides,.void-guides{clip-path:polygon(40% 15%,63% 14%,66% 49%,56% 55%,43% 50%);--dx:0;--dy:-1.5%;--piece-accent:var(--purple)}
.piece-freegames,.void-freegames{clip-path:polygon(65% 12%,96% 12%,96% 50%,86% 57%,67% 52%);--dx:1%;--dy:-1.15%;--piece-accent:var(--pink)}
.piece-reviews,.void-reviews{clip-path:polygon(42% 43%,93% 42%,95% 70%,73% 78%,46% 69%);--dx:.7%;--dy:-1%;--piece-accent:var(--green)}
.piece-releases,.void-releases{clip-path:polygon(0 59%,98% 57%,100% 100%,0 100%);--dx:0;--dy:1.2%;--piece-accent:var(--orange)}

.room-heading{position:absolute;z-index:25;left:3%;top:3%;width:min(440px,40%);padding:18px 20px;border-left:3px solid var(--red);background:linear-gradient(90deg,rgba(4,1,8,.84),rgba(4,1,8,.18));backdrop-filter:blur(10px)}
.room-heading .eyebrow{color:var(--red);font-size:11px;font-weight:1000;letter-spacing:.28em;text-transform:uppercase}.room-heading h1{margin:8px 0 6px;font-size:clamp(28px,3.2vw,58px);line-height:.92;text-transform:uppercase;letter-spacing:-.045em}.room-heading h1 span{color:var(--red);text-shadow:0 0 24px rgba(255,41,72,.45)}.room-heading p{margin:0;color:#c6c0cf;line-height:1.45;font-size:clamp(11px,1vw,15px)}

.hotspot{position:absolute;z-index:40;appearance:none;border:1px solid var(--hot);border-radius:10px;padding:10px 15px;background:linear-gradient(180deg,color-mix(in srgb,var(--hot) 14%,rgba(0,0,0,.94)),rgba(0,0,0,.90));color:var(--hot);font-weight:1000;letter-spacing:.13em;text-transform:uppercase;font-size:clamp(9px,.8vw,13px);text-shadow:0 0 12px var(--hot);box-shadow:0 0 0 5px rgba(0,0,0,.32),0 0 18px color-mix(in srgb,var(--hot) 50%,transparent),inset 0 0 20px color-mix(in srgb,var(--hot) 10%,transparent);transition:.23s ease;backdrop-filter:blur(7px)}
.hotspot span{display:block;max-height:0;opacity:0;overflow:hidden;margin-top:0;color:#f2edf6;text-transform:none;letter-spacing:.04em;font-size:9px;font-weight:700;transition:.23s ease}.hotspot:hover,.hotspot.active{transform:translateY(-6px) scale(1.04);box-shadow:0 0 0 7px rgba(0,0,0,.36),0 0 30px color-mix(in srgb,var(--hot) 75%,transparent),inset 0 0 28px color-mix(in srgb,var(--hot) 15%,transparent)}.hotspot:hover span,.hotspot.active span{max-height:20px;opacity:.86;margin-top:5px}
.hotspot[data-cat="news"]{left:17%;top:15%;--hot:var(--red)}
.hotspot[data-cat="hardware"]{left:20%;top:40%;--hot:var(--cyan)}
.hotspot[data-cat="guides"]{left:53%;top:34%;--hot:var(--purple)}
.hotspot[data-cat="freegames"]{left:75%;top:22%;--hot:var(--pink)}
.hotspot[data-cat="reviews"]{left:68%;top:55%;--hot:var(--green)}
.hotspot[data-cat="releases"]{left:37%;top:72%;--hot:var(--orange)}

.tv-panel{position:absolute;z-index:32;left:68.15%;top:25.1%;width:19.3%;height:15.9%;padding:1.2% 1.25%;overflow:hidden;border-radius:5px;background:linear-gradient(145deg,rgba(2,1,5,.975),rgba(8,3,13,.96));border:1px solid var(--accent);box-shadow:inset 0 0 26px rgba(0,0,0,.88),0 0 18px color-mix(in srgb,var(--accent) 45%,transparent);transition:border-color .25s ease,box-shadow .25s ease}
.tv-panel::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;background:repeating-linear-gradient(to bottom,transparent 0 2px,rgba(255,255,255,.12) 3px)}
.tv-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column}.tv-kicker{font-size:clamp(6px,.55vw,10px);font-weight:1000;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.tv-title{margin:3% 0 2%;font-size:clamp(11px,1.2vw,22px);line-height:.95;text-transform:uppercase;letter-spacing:-.02em}.tv-items{display:grid;gap:3%;margin-top:auto}.tv-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px;padding:2.4% 0;border-top:1px solid rgba(255,255,255,.13);font-size:clamp(5px,.48vw,9px);color:#ddd8e3}.tv-row strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tv-row span{color:var(--accent);white-space:nowrap}.tv-open{appearance:none;border:0;background:transparent;color:var(--accent);padding:3% 0 0;text-align:left;text-transform:uppercase;font-size:clamp(5px,.48vw,9px);font-weight:1000;letter-spacing:.14em}

.room-bottom{position:absolute;z-index:30;left:50%;bottom:3.3%;translate:-50% 0;display:flex;align-items:center}.explore-btn{appearance:none;border:1px solid var(--red);border-radius:999px;padding:11px 18px;background:rgba(0,0,0,.72);box-shadow:0 0 18px rgba(255,41,72,.35);text-transform:uppercase;font-size:10px;font-weight:1000;letter-spacing:.15em;backdrop-filter:blur(10px);transition:.2s ease}.explore-btn:hover{transform:translateY(-4px);background:var(--red);border-color:var(--red)}

/* Content hub */
.content-hub{position:relative;min-height:780px;padding:80px clamp(18px,5vw,84px) 100px;background:linear-gradient(180deg,#050208,#0b0511 55%,#050208);overflow:hidden}.content-hub::before{content:"";position:absolute;inset:-20%;pointer-events:none;background:radial-gradient(circle at 15% 10%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 30%),radial-gradient(circle at 90% 30%,rgba(113,42,170,.13),transparent 35%)}
.content-wrap{position:relative;z-index:2;max-width:1320px;margin:auto}.section-top{display:grid;grid-template-columns:1fr auto;align-items:end;gap:28px;margin-bottom:30px}.section-kicker{margin:0 0 8px;color:var(--accent);font-size:11px;font-weight:1000;letter-spacing:.24em;text-transform:uppercase}.section-title{margin:0;font-size:clamp(44px,7vw,94px);line-height:.85;text-transform:uppercase;letter-spacing:-.055em;text-shadow:0 0 34px color-mix(in srgb,var(--accent) 24%,transparent)}.section-intro{max-width:670px;margin:18px 0 0;color:#b7b1c0;font-size:clamp(15px,1.5vw,20px);line-height:1.55}.category-switcher{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.switch-btn{appearance:none;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.035);padding:9px 12px;border-radius:9px;text-transform:uppercase;font-size:9px;font-weight:1000;letter-spacing:.12em;color:#bcb7c5;transition:.2s ease}.switch-btn:hover,.switch-btn.active{color:#fff;border-color:var(--accent);box-shadow:0 0 16px color-mix(in srgb,var(--accent) 35%,transparent)}
.cards{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.article-card{position:relative;grid-column:span 3;min-height:330px;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.067),rgba(255,255,255,.022));box-shadow:inset 0 1px rgba(255,255,255,.06);transition:.27s ease}.article-card:first-child{grid-column:span 6}.article-card:hover{transform:translateY(-8px);border-color:var(--accent);box-shadow:0 25px 55px rgba(0,0,0,.35),0 0 28px color-mix(in srgb,var(--accent) 23%,transparent)}.card-art{position:relative;min-height:145px;overflow:hidden;background:radial-gradient(circle at 75% 25%,color-mix(in srgb,var(--accent) 45%,transparent),transparent 34%),linear-gradient(145deg,#171020,#07050b)}.article-card:first-child .card-art{min-height:190px}.card-art::before{content:attr(data-number);position:absolute;right:4%;bottom:-16%;font-size:clamp(94px,11vw,170px);line-height:1;font-weight:1000;font-style:italic;color:rgba(255,255,255,.07)}.card-art::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(120deg,transparent 0 15px,rgba(255,255,255,.025) 16px)}.card-badge{position:absolute;z-index:2;left:18px;top:18px;padding:7px 9px;border:1px solid var(--accent);border-radius:7px;background:rgba(0,0,0,.58);color:var(--accent);text-transform:uppercase;font-size:9px;font-weight:1000;letter-spacing:.14em;box-shadow:0 0 14px color-mix(in srgb,var(--accent) 30%,transparent)}.card-body{padding:20px;display:flex;flex-direction:column;flex:1}.card-meta{color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.card-title{margin:9px 0 10px;font-size:clamp(20px,2vw,31px);line-height:1.02;letter-spacing:-.025em}.card-summary{margin:0;color:#aaa4b4;line-height:1.5;font-size:14px}.card-actions{display:flex;gap:9px;margin-top:auto;padding-top:18px}.read-btn,.source-btn{appearance:none;border-radius:9px;padding:10px 12px;text-transform:uppercase;font-size:9px;font-weight:1000;letter-spacing:.13em;transition:.2s ease}.read-btn{border:1px solid var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:#fff}.source-btn{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.035);color:#d2ced8}.read-btn:hover{background:var(--accent);color:#050208}.source-btn:hover{border-color:#fff}
.newsroom-hydrating #cards{min-height:260px;opacity:0}.newsroom-hydrating #v31SubcategoryShell{opacity:0}

/* Cross-document category handoff. The target tab is selected immediately and
   stale content disappears before navigation starts, so Safari never paints
   the previous News state while the next editorial document is loading. */
html.gb-route-leaving{scroll-behavior:auto}
html.gb-route-leaving body{cursor:progress}
html.gb-route-leaving main,html.gb-route-leaving footer{opacity:0!important;visibility:hidden!important;transition:none!important}
html.gb-route-leaving .site-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;background:linear-gradient(90deg,transparent,var(--accent) 16%,var(--accent) 84%,transparent);box-shadow:0 0 14px var(--accent);transform-origin:left center;animation:gbRouteHandoffLine .7s cubic-bezier(.2,.75,.25,1) both}
@keyframes gbRouteHandoffLine{0%{transform:scaleX(.08);opacity:.7}100%{transform:scaleX(1);opacity:1}}
@media(prefers-reduced-motion:reduce){html.gb-route-leaving .site-header::after{animation:none}}

/* Footer */
.footer{padding:55px clamp(18px,5vw,84px);border-top:1px solid rgba(255,255,255,.09);background:#030105}.footer-inner{max-width:1320px;margin:auto;display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:center}.footer img{width:min(330px,80%);filter:drop-shadow(0 0 14px rgba(255,41,72,.35))}.footer p{color:#9892a2;max-width:600px;line-height:1.6}.footer-contact{display:inline-flex;align-items:center;gap:10px;margin-top:4px;color:#eae5ed;font-size:13px;font-weight:800;letter-spacing:.025em;text-decoration:none}.footer-contact span{padding:5px 7px;border:1px solid rgba(33,234,255,.42);border-radius:6px;color:#21eaff;font-size:8px;font-weight:1000;letter-spacing:.13em;text-transform:uppercase}.footer-contact:hover,.footer-contact:focus-visible{color:#fff;text-shadow:0 0 15px rgba(33,234,255,.42)}.footer-social{display:flex;justify-content:flex-end;gap:12px}.footer-social .social-link{width:50px;height:50px}

/* Dialogs */
dialog{padding:0;border:0;border-radius:22px;background:transparent;color:var(--text);width:min(820px,calc(100vw - 28px));max-height:calc(100svh - 28px);overflow:hidden;box-shadow:0 35px 120px rgba(0,0,0,.9)}dialog::backdrop{background:rgba(1,0,4,.83);backdrop-filter:blur(14px)}.dialog-shell{--dialog-accent:var(--red);position:relative;max-height:calc(100svh - 28px);overflow:auto;border:1px solid var(--dialog-accent);border-radius:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--dialog-accent) 6%,rgba(7,4,14,.98)),rgba(3,2,8,.99));box-shadow:0 0 42px color-mix(in srgb,var(--dialog-accent) 25%,transparent)}.dialog-head{position:sticky;top:0;z-index:4;display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:24px;background:rgba(4,2,9,.92);border-bottom:1px solid rgba(255,255,255,.1);backdrop-filter:blur(14px)}.dialog-kicker{margin:0 0 7px;color:var(--dialog-accent);font-size:10px;font-weight:1000;letter-spacing:.2em;text-transform:uppercase}.dialog-title{margin:0;font-size:clamp(29px,5vw,58px);line-height:.95;letter-spacing:-.04em}.close-btn{appearance:none;width:44px;height:44px;flex:0 0 auto;border:1px solid rgba(255,255,255,.17);border-radius:12px;background:rgba(255,255,255,.04);font-size:25px}.close-btn:hover{background:var(--dialog-accent);border-color:var(--dialog-accent)}.dialog-body{padding:25px}.dialog-meta{color:var(--dialog-accent);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.dialog-summary{font-size:20px;color:#d7d2dd;line-height:1.5}.dialog-copy{color:#aaa4b3;line-height:1.75}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.dialog-actions a,.dialog-actions button{appearance:none;border-radius:10px;padding:12px 15px;text-transform:uppercase;font-size:10px;font-weight:1000;letter-spacing:.13em}.dialog-primary{border:1px solid var(--dialog-accent);background:var(--dialog-accent);color:#050208}.dialog-secondary{border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.04);color:#fff}
.search-shell{padding:24px}.search-title{margin:0 0 16px;font-size:28px}.search-input{width:100%;padding:15px 16px;border:1px solid var(--red);border-radius:12px;background:rgba(255,255,255,.05);color:#fff;font-size:17px}.search-results{display:grid;gap:9px;margin-top:18px;max-height:55vh;overflow:auto}.search-result{appearance:none;text-align:left;border:1px solid rgba(255,255,255,.11);border-radius:11px;padding:13px;background:rgba(255,255,255,.035)}.search-result:hover{border-color:var(--red)}.search-result strong{display:block}.search-result small{display:block;margin-top:4px;color:#aaa4b3}.empty{padding:24px;color:#aaa4b3;text-align:center}
.toast{position:fixed;z-index:10000;left:50%;bottom:24px;translate:-50% 20px;opacity:0;pointer-events:none;padding:12px 16px;border:1px solid var(--accent);border-radius:10px;background:rgba(4,2,8,.94);box-shadow:0 0 24px color-mix(in srgb,var(--accent) 30%,transparent);transition:.25s ease}.toast.show{opacity:1;translate:-50% 0}

@media (max-width:1100px){
  :root{--header-h:72px}.site-header{grid-template-columns:180px 1fr auto;padding-inline:15px}.main-nav{gap:11px}.nav-btn{font-size:9px}.social-link{display:none}.article-card{grid-column:span 6}.article-card:first-child{grid-column:span 12}.room-heading{top:2%;left:2%;width:42%}.room-heading p{display:none}
}
@media (max-width:760px){
  body{padding-top:0}.site-header{height:70px;grid-template-columns:1fr auto;gap:10px}.logo-btn img{width:195px}.main-nav{display:none;position:absolute;top:70px;left:10px;right:10px;flex-direction:column;align-items:stretch;padding:12px;border:1px solid rgba(255,255,255,.13);border-radius:14px;background:rgba(4,2,9,.97);box-shadow:0 20px 50px rgba(0,0,0,.6)}.main-nav.open{display:flex}.nav-btn{text-align:left;padding:12px}.header-actions .icon-btn:first-child{display:grid}.mobile-menu-btn{display:grid}.room-stage{aspect-ratio:auto;height:calc(100svh - 70px);min-height:670px;background-size:auto 100%;background-position:58% center}.room-stage::after{background:linear-gradient(to bottom,rgba(0,0,0,.08),rgba(0,0,0,.2) 55%,rgba(0,0,0,.75))}.room-piece,.room-void{display:none}.room-heading{left:14px;right:14px;top:16px;width:auto;padding:14px 15px}.room-heading h1{font-size:34px}.tv-panel{left:56%;top:27%;width:38%;height:16.5%;padding:2.2%}.hotspot{padding:8px 10px;font-size:8px}.hotspot span{display:none}.hotspot[data-cat="news"]{left:7%;top:19%}.hotspot[data-cat="hardware"]{left:8%;top:42%}.hotspot[data-cat="guides"]{left:44%;top:36%}.hotspot[data-cat="freegames"]{left:67%;top:23%}.hotspot[data-cat="reviews"]{left:55%;top:57%}.hotspot[data-cat="releases"]{left:21%;top:73%}.room-bottom{left:14px;right:14px;translate:0;justify-content:center}.section-top{grid-template-columns:1fr}.category-switcher{justify-content:flex-start}.cards{grid-template-columns:1fr}.article-card,.article-card:first-child{grid-column:1}.footer-inner{grid-template-columns:1fr}.footer-social{justify-content:flex-start}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.room-piece,.room-void,.article-card,.hotspot{transition:none!important}.boot::before{animation:none}.boot{animation:none!important}}


/* =========================
   GamingBroject V2 base overrides
   ========================= */
:root{--header-h:82px}
.site-header{grid-template-columns:minmax(190px,.8fr) minmax(560px,2.2fr) minmax(190px,.8fr)}
.main-nav{gap:clamp(12px,1.8vw,34px)}
.nav-btn{font-size:clamp(10px,.78vw,14px)}

.room-heading{
  left:50%;top:2.7%;translate:-50% 0;width:min(570px,43%);padding:15px 22px;text-align:center;
  border-left:0;border-top:2px solid var(--red);border-radius:0 0 18px 18px;
  background:linear-gradient(180deg,rgba(4,1,8,.88),rgba(4,1,8,.28));pointer-events:none
}
.room-heading .eyebrow{font-size:10px}.room-heading h1{font-size:clamp(26px,2.7vw,49px)}
.room-heading p{font-size:clamp(10px,.82vw,13px)}

.hotspot{min-width:124px;text-align:center}
.hotspot[data-cat="news"]{left:3.2%;top:29%;--hot:var(--red)}
.hotspot[data-cat="hardware"]{left:18.5%;top:43%;--hot:var(--cyan)}
.hotspot[data-cat="guides"]{left:48.2%;top:32.8%;--hot:var(--purple)}
.hotspot[data-cat="reviews"]{left:62%;top:57%;--hot:var(--green)}
.hotspot[data-cat="releases"]{left:39%;top:72.5%;--hot:var(--orange)}

.tv-panel{cursor:pointer;outline:none;transition:transform .22s ease,border-color .25s ease,box-shadow .25s ease;background:linear-gradient(145deg,rgba(2,1,5,.91),rgba(8,3,13,.86))}
.tv-panel:hover,.tv-panel:focus-visible,.tv-panel.active{transform:translateY(-5px) scale(1.018);border-color:var(--cyan);box-shadow:inset 0 0 26px rgba(0,0,0,.88),0 0 32px rgba(33,234,255,.62)}
.tv-title{font-size:clamp(8px,.8vw,14px);letter-spacing:.07em;color:#fff}
.tv-kicker{color:var(--cyan)}
.tv-row span,.tv-open{color:var(--cyan)}
.tv-open{margin-top:auto}

.channel-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 24px}
.channel-card{position:relative;display:flex;align-items:center;gap:14px;min-height:94px;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.018));transition:.22s ease;overflow:hidden}
.channel-card::after{content:"";position:absolute;inset:auto -15% -70% 35%;height:130px;background:radial-gradient(circle,var(--accent),transparent 67%);opacity:.15;pointer-events:none}
.channel-card:hover{transform:translateY(-5px);border-color:var(--accent);box-shadow:0 15px 34px rgba(0,0,0,.28),0 0 22px color-mix(in srgb,var(--accent) 22%,transparent)}
.channel-play{flex:0 0 auto;width:50px;height:50px;display:grid;place-items:center;border:1px solid var(--accent);border-radius:14px;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);font-size:17px;box-shadow:0 0 18px color-mix(in srgb,var(--accent) 28%,transparent)}
.channel-copy{min-width:0}.channel-copy small{display:block;color:var(--accent);font-size:9px;font-weight:1000;letter-spacing:.13em;text-transform:uppercase}.channel-copy strong{display:block;margin-top:5px;font-size:15px;line-height:1.15}.channel-copy span{display:block;margin-top:5px;color:#9f99aa;font-size:11px}
.article-card.video-card .card-art::after{background:radial-gradient(circle at 50% 50%,transparent 0 25px,rgba(0,0,0,.2) 26px),repeating-linear-gradient(120deg,transparent 0 15px,rgba(255,255,255,.025) 16px)}
.video-play-mark{position:absolute;z-index:3;left:50%;top:50%;translate:-50% -50%;width:58px;height:58px;display:grid;place-items:center;border:1px solid var(--accent);border-radius:50%;background:rgba(0,0,0,.66);color:var(--accent);font-size:20px;box-shadow:0 0 24px color-mix(in srgb,var(--accent) 45%,transparent)}

.mobile-active-card,.mobile-category-dock{display:none}

@media (max-width:1100px) and (min-width:761px){
  .room-heading{width:48%;top:2%}.hotspot[data-cat="news"]{left:2.5%;top:28%}.hotspot[data-cat="hardware"]{left:15%;top:44%}
  .hotspot[data-cat="guides"]{left:46%;top:34%}.hotspot[data-cat="reviews"]{left:61%;top:58%}.hotspot[data-cat="releases"]{left:37%;top:73%}
  .channel-strip{grid-template-columns:1fr 1fr}.channel-card:last-child{grid-column:1/-1}
}

@media (max-width:760px){
  :root{--header-h:68px}
  .site-header{height:68px;padding:8px 11px}.logo-btn img{width:168px}.header-actions{gap:7px}.icon-btn{width:38px;height:38px}.main-nav{top:68px}
  .room-stage{height:calc(100svh - 68px);min-height:700px;background-size:cover;background-position:55% center}
  .room-heading{left:12px;right:12px;top:12px;translate:0;width:auto;padding:12px 13px;border-radius:14px;background:rgba(4,1,8,.82)}
  .room-heading .eyebrow{font-size:8px;letter-spacing:.17em}.room-heading h1{font-size:28px;margin:5px 0}.room-heading p{display:none}
  .hotspot,.tv-panel,.room-bottom{display:none!important}
  .mobile-active-card{display:block;position:absolute;z-index:45;left:14px;right:14px;top:43%;padding:17px;border:1px solid var(--accent);border-radius:17px;background:linear-gradient(145deg,rgba(5,2,10,.91),rgba(10,5,18,.78));backdrop-filter:blur(14px);box-shadow:0 18px 45px rgba(0,0,0,.42),0 0 23px color-mix(in srgb,var(--accent) 28%,transparent)}
  .mobile-active-card small{display:block;color:var(--accent);font-size:9px;font-weight:1000;letter-spacing:.17em;text-transform:uppercase}.mobile-active-card h2{margin:7px 0 8px;font-size:25px;line-height:1}.mobile-active-card p{margin:0;color:#b7b1c0;font-size:12px;line-height:1.45}.mobile-open{margin-top:13px;border:1px solid var(--accent);border-radius:9px;padding:9px 11px;background:color-mix(in srgb,var(--accent) 11%,rgba(0,0,0,.6));font-size:9px;font-weight:1000;letter-spacing:.13em;text-transform:uppercase}
  .mobile-category-dock{display:grid;position:absolute;z-index:50;left:12px;right:12px;bottom:12px;grid-template-columns:repeat(3,1fr);gap:7px;padding:9px;border:1px solid rgba(255,255,255,.13);border-radius:17px;background:rgba(3,1,7,.88);backdrop-filter:blur(16px);box-shadow:0 20px 50px rgba(0,0,0,.55)}
  .mobile-cat{appearance:none;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:11px 5px;background:rgba(255,255,255,.04);color:#cbc6d2;font-size:8px;font-weight:1000;letter-spacing:.09em;text-transform:uppercase}.mobile-cat.active{border-color:var(--accent);color:#fff;box-shadow:0 0 15px color-mix(in srgb,var(--accent) 34%,transparent);background:color-mix(in srgb,var(--accent) 10%,rgba(0,0,0,.68))}
  .content-hub{padding-top:58px}.channel-strip{grid-template-columns:1fr;gap:10px}.channel-card:last-child{grid-column:auto}.category-switcher{display:none}.section-title{font-size:50px}.section-intro{font-size:15px}
  .article-card{min-height:0}.article-card:first-child .card-art,.card-art{min-height:160px}.card-actions{flex-wrap:wrap}
  .boot-inner{padding:18px}.boot-lines{min-height:178px;font-size:12px}.boot-brand{letter-spacing:.24em}
}

@media (max-width:390px){
  .logo-btn img{width:145px}.mobile-active-card{top:40%}.mobile-cat{font-size:7px;padding-inline:2px}.room-heading h1{font-size:25px}
}


/* =========================
   GamingBroject V3 base overrides
   ========================= */
.hotspot[data-cat="releases"]{left:38.5%;top:72%;min-width:168px;--hot:var(--orange)}
.hotspot[data-cat="releases"] span{white-space:nowrap}

/* The TV is one clean Free Games category trigger—no duplicate title/list. */
.tv-panel{display:grid;place-items:center;padding:1.1%;overflow:visible;background:linear-gradient(145deg,#020105,#08030d)}
.tv-inner{width:100%;height:100%;display:grid;place-items:center;text-align:center;align-content:center;gap:7%;padding:4%}
.tv-category-title{font-size:clamp(13px,1.35vw,25px);line-height:.95;font-weight:1000;letter-spacing:.10em;text-transform:uppercase;color:#fff;text-shadow:0 0 16px var(--cyan),0 0 30px rgba(33,234,255,.45)}
.tv-platforms{display:grid;gap:2px;max-height:0;opacity:0;overflow:hidden;transform:translateY(-5px);font-size:clamp(6px,.55vw,10px);line-height:1.35;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--cyan);transition:max-height .25s ease,opacity .25s ease,transform .25s ease}
.tv-enter{font-size:clamp(5px,.43vw,8px);letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.55);transition:.25s ease}
.tv-panel:hover .tv-platforms,.tv-panel:focus-visible .tv-platforms,.tv-panel.active .tv-platforms{max-height:34px;opacity:1;transform:translateY(0)}
.tv-panel:hover .tv-enter,.tv-panel:focus-visible .tv-enter,.tv-panel.active .tv-enter{color:#fff;text-shadow:0 0 12px var(--cyan)}

/* Reusable full-screen BIOS on initial load and every category selection. */
.boot.hidden{display:none!important}
.boot.boot-transition .boot-inner{transform:scale(.94)}
.boot.boot-transition .boot-lines{min-height:138px}
.boot.boot-transition .skip-boot{margin-top:14px}
.boot-brand{transition:color .2s ease;text-wrap:balance}

@media (max-width:1100px) and (min-width:761px){
  .hotspot[data-cat="releases"]{left:35.5%;top:73%;min-width:155px}
}
@media (max-width:760px){
  .mobile-cat[data-cat="freegames"]{line-height:1.05}
}



/* =========================
   GamingBroject V4 base overrides
   ========================= */
:root{--header-h:132px;--brand-font:"Arial Black","Arial Narrow",Impact,Haettenschweiler,sans-serif}

/* Full-width stacked masthead: logo centered, navigation directly underneath. */
.site-header{
  height:var(--header-h);display:flex;flex-direction:column;justify-content:center;align-items:center;
  gap:3px;padding:7px 92px 8px;border-bottom:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(2,1,6,.985),rgba(3,1,8,.90));
}
.logo-btn{position:relative;z-index:2;justify-content:center;width:auto;margin:0 auto}
.logo-btn img{width:245px;max-height:70px;object-fit:contain;filter:drop-shadow(0 0 15px rgba(255,39,70,.52))}
.main-nav{width:100%;min-height:39px;justify-content:center;gap:clamp(20px,2.3vw,46px);overflow:visible}
.nav-btn{padding:8px 4px 10px;font-family:var(--brand-font);font-style:italic;font-size:clamp(10px,.80vw,14px);letter-spacing:.055em}
.header-actions{position:absolute;right:24px;top:24px;gap:9px}
.mobile-menu-btn{display:none!important}

/* Every visible category label now uses a bold, condensed GamingBroject-style wordmark treatment. */
.nav-btn,.hotspot:not(.arcade-trigger),.tv-category-title,.mobile-cat,.switch-btn{
  font-family:var(--brand-font);font-style:italic;font-weight:900;letter-spacing:.045em;
}
.main-nav a.nav-btn,.mobile-category-dock a.mobile-cat{
  display:flex;align-items:center;justify-content:center;text-decoration:none;
}

/* Fill the viewport edge-to-edge. No black gutters on wide desktop screens. */
.hero{padding-top:var(--header-h);background:#020104}
.room-stage{
  width:100vw;max-width:none;height:calc(100svh - var(--header-h));min-height:650px;aspect-ratio:auto;margin:0;
  background-size:100% 100%;background-position:center;overflow:hidden;
}
.room-piece{background-size:100% 100%;background-position:center}

/* Arcade cabinet hotspot replaces the Guides hotspot inside the room only. */
.hotspot.arcade-trigger{
  left:48.3%;top:43.5%;min-width:190px;--hot:#ff304f;padding:11px 18px 10px;
  font-family:"Courier New",ui-monospace,monospace;font-style:normal;font-size:clamp(12px,1.05vw,20px);
  font-weight:900;letter-spacing:.11em;color:#fff;border-color:#ff304f;
  background:linear-gradient(180deg,rgba(73,1,12,.93),rgba(13,0,4,.95));
  text-shadow:2px 0 #ff304f,-2px 0 #ff304f,0 2px #ff304f,0 -2px #ff304f,0 0 14px #ff304f;
  box-shadow:0 0 0 5px rgba(0,0,0,.38),0 0 24px rgba(255,36,70,.75),inset 0 0 22px rgba(255,36,70,.18)
}
.hotspot.arcade-trigger span{font-family:"Courier New",monospace;font-style:normal;color:#ffd5dc;text-transform:uppercase;letter-spacing:.08em}
.hotspot.arcade-trigger:hover,.hotspot.arcade-trigger:focus-visible{transform:translateY(-7px) scale(1.055)}

/* Reviews remains in the main navigation and content hub; its green couch hotspot is intentionally removed. */
.piece-reviews,.void-reviews{pointer-events:none}

/* Space Invaders overlay adapted from the user-provided 10-level arcade code. */
.arcade-overlay{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:14px;background:rgba(2,0,5,.96);backdrop-filter:blur(14px);overflow:auto}
.arcade-overlay.hidden{display:none!important}
.arcade-shell{width:min(520px,100%);display:flex;flex-direction:column;align-items:center;gap:10px;color:#fff;font-family:"Courier New",monospace}
.arcade-hud{width:100%;display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:10px;color:#ff6a81;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.arcade-hud strong{font-family:"Courier New",monospace;color:#ff304f;text-shadow:0 0 12px #ff304f}
.arcade-exit,.arcade-action{appearance:none;border:1px solid #ff304f;border-radius:7px;background:rgba(255,48,79,.08);color:#fff;padding:8px 12px;font-family:"Courier New",monospace;font-weight:900;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 0 15px rgba(255,48,79,.28)}
.arcade-exit:hover,.arcade-action:hover{background:#ff304f;color:#080106}
.arcade-frame{position:relative;width:100%;max-width:480px;border:1px solid rgba(255,48,79,.75);border-radius:12px;padding:5px;background:#09020e;box-shadow:0 0 42px rgba(255,48,79,.44)}
.arcade-frame canvas{display:block;width:100%;height:auto;max-width:480px;touch-action:none;border-radius:8px;background:#0d0618}
.arcade-frame::after{content:"";position:absolute;inset:5px;pointer-events:none;opacity:.22;border-radius:8px;background:repeating-linear-gradient(to bottom,transparent 0 2px,rgba(255,255,255,.12) 3px)}
.arcade-message{position:absolute;z-index:4;inset:5px;display:none;place-items:center;text-align:center;padding:20px;border-radius:8px;background:rgba(5,1,10,.88)}
.arcade-message.show{display:grid}
.arcade-message-inner{display:grid;justify-items:center;gap:12px}.arcade-message h2{margin:0;color:#ff304f;font-family:"Courier New",monospace;font-size:26px;letter-spacing:.10em;text-shadow:0 0 16px #ff304f}.arcade-message p{margin:0;color:#c8c0d0}
.arcade-help{font-size:11px;color:#9e96a8;letter-spacing:.04em;text-align:center}.mobile-help{display:none}

@media (max-width:1100px) and (min-width:761px){
  :root{--header-h:122px}.site-header{height:var(--header-h);padding-inline:76px}.logo-btn img{width:220px}.main-nav{gap:18px}.nav-btn{font-size:10px}
  .room-stage{height:calc(100svh - var(--header-h));min-height:610px}
  .hotspot.arcade-trigger{left:46.2%;top:44%;min-width:170px}
}

@media (max-width:760px){
  :root{--header-h:112px}
  .site-header{height:var(--header-h);padding:5px 48px 7px;gap:1px;overflow:visible}
  .logo-btn img{width:178px;max-height:58px}
  .header-actions{right:8px;top:13px}.header-actions .social-link{display:none}.icon-btn{width:36px;height:36px}
  .main-nav{display:flex!important;position:static!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;
    gap:18px;width:100vw;overflow-x:auto;padding:0 13px 3px;border:0;border-radius:0;background:transparent;box-shadow:none;scrollbar-width:none}
  .main-nav::-webkit-scrollbar{display:none}.nav-btn{flex:0 0 auto;text-align:center;padding:8px 1px 9px;font-size:9px}
  .room-stage{height:calc(100svh - var(--header-h));min-height:670px;background-size:cover;background-position:55% center}
  .room-piece{background-size:cover;background-position:55% center}
  .room-heading{top:10px}
  .arcade-hud{grid-template-columns:1fr auto auto auto;font-size:9px;gap:6px}.arcade-exit{padding:7px 9px}.desktop-help{display:none}.mobile-help{display:inline}
}



/* =========================
   GamingBroject V5 overrides
   ========================= */
:root{--arcade-red:#ff304f;--arcade-green:#9dff54;--arcade-gold:#ffd35a}

/* 8K ultrawide room: keep the image proportions. No 100% x 100% stretching. */
.room-stage{
  background-image:linear-gradient(to bottom,rgba(2,1,6,.05),rgba(2,1,6,.11) 58%,rgba(2,1,6,.46)),url("/gala-page/wp-content/themes/gamingbroject-newsroom/assets/embedded-01-16e060f95089.webp");
  background-size:cover;background-position:center center;background-repeat:no-repeat;
}
.room-piece{background-image:url("/gala-page/wp-content/themes/gamingbroject-newsroom/assets/embedded-01-16e060f95089.webp");background-size:cover;background-position:center center;background-repeat:no-repeat}
.room-stage::after{content:"";position:absolute;inset:0;z-index:6;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.24),transparent 16%,transparent 84%,rgba(0,0,0,.24)),radial-gradient(circle at 50% 48%,transparent 45%,rgba(0,0,0,.17) 100%)}

/* The original room now occupies the central part of the wider image, so align every real hotspot to it. */
.hotspot[data-cat="news"]{left:20.5%;top:29%}
.hotspot[data-cat="hardware"]{left:30.1%;top:43%}
.hotspot.arcade-trigger{left:48.9%;top:43.5%}
.hotspot[data-cat="releases"]{left:42.7%;top:72%}
.tv-panel{left:61.45%;top:25.1%;width:12.35%;height:15.9%}
.piece-news,.void-news{clip-path:polygon(18.5% 0,45% 0,45.6% 32%,41.8% 37%,18.5% 34%)}
.piece-hardware,.void-hardware{clip-path:polygon(18.5% 27%,44.3% 26%,45.6% 56%,40.5% 66%,18.5% 61%)}
.piece-guides,.void-guides{clip-path:polygon(43.7% 15%,58.2% 14%,60.1% 49%,53.8% 55%,45.6% 50%)}
.piece-freegames,.void-freegames{clip-path:polygon(59.5% 12%,79% 12%,79% 50%,72.7% 57%,60.7% 52%)}
.piece-releases,.void-releases{clip-path:polygon(18.5% 59%,80.3% 57%,81.5% 100%,18.5% 100%)}

/* Compact Top 3 board visible before the player enters the cabinet. */
.room-leaderboard{position:absolute;z-index:39;left:49.8%;top:24.3%;translate:-50% 0;width:clamp(190px,13vw,250px);padding:10px 11px 9px;border:1px solid rgba(255,48,79,.72);border-radius:11px;background:linear-gradient(180deg,rgba(12,1,7,.92),rgba(3,1,6,.86));box-shadow:0 0 25px rgba(255,36,70,.42),inset 0 0 22px rgba(255,36,70,.08);backdrop-filter:blur(9px);font-family:"Courier New",monospace;color:#f8dce2;transition:.25s ease}
.room-leaderboard:hover{transform:translateY(-4px);box-shadow:0 0 34px rgba(255,36,70,.62),inset 0 0 25px rgba(255,36,70,.12)}
.room-leaderboard-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:6px;border-bottom:1px solid rgba(255,48,79,.25);font-size:clamp(7px,.48vw,10px);letter-spacing:.13em;color:#ff8596}
.room-leaderboard-head strong{color:#fff;text-shadow:0 0 10px var(--arcade-red)}
.leaderboard-list{list-style:none;margin:6px 0 0;padding:0;counter-reset:rank;display:grid;gap:3px}
.leaderboard-list li{counter-increment:rank;display:grid;grid-template-columns:19px minmax(0,1fr) auto;align-items:center;gap:5px;min-height:15px;font-size:clamp(7px,.48vw,10px);line-height:1.2}
.leaderboard-list li::before{content:counter(rank);color:#ff526b;font-weight:900}
.leaderboard-list .leader-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f4e9ed}
.leaderboard-list .leader-score{color:#ff9bab;font-variant-numeric:tabular-nums}
.leaderboard-list .leader-empty{grid-column:2/4;color:#736d78;font-style:italic}
.leaderboard-list li.current{color:#fff;text-shadow:0 0 9px #ff304f}

/* Username gate shown before every new arcade session. */
.arcade-name-overlay{position:fixed;inset:0;z-index:11950;display:grid;place-items:center;padding:18px;background:rgba(2,0,5,.91);backdrop-filter:blur(15px);font-family:"Courier New",monospace}
.arcade-name-overlay.hidden{display:none!important}
.arcade-name-card{width:min(470px,100%);max-height:calc(100svh - 30px);overflow:auto;padding:26px;border:1px solid rgba(255,48,79,.78);border-radius:18px;background:linear-gradient(145deg,rgba(16,2,10,.98),rgba(4,1,8,.98));box-shadow:0 0 55px rgba(255,48,79,.42),inset 0 0 45px rgba(255,48,79,.05)}
.arcade-name-kicker{margin:0;color:#ff8192;font-size:10px;font-weight:900;letter-spacing:.25em;text-align:center}
.arcade-name-card h2{margin:9px 0 8px;text-align:center;color:#fff;font-size:clamp(32px,8vw,54px);letter-spacing:.08em;text-shadow:2px 0 #ff304f,-2px 0 #ff304f,0 2px #ff304f,0 -2px #ff304f,0 0 20px #ff304f}
.arcade-name-copy{margin:0 auto 17px;max-width:390px;text-align:center;color:#aaa2af;font-size:12px;line-height:1.5}
.arcade-name-board{padding:11px 13px;border:1px solid rgba(255,48,79,.26);border-radius:11px;background:rgba(0,0,0,.34)}
.arcade-name-board>span{display:block;color:#ff6e82;font-size:10px;font-weight:900;letter-spacing:.18em;text-align:center}
.arcade-name-board .leaderboard-list li{font-size:11px;min-height:19px}
#arcadeNameForm{display:grid;gap:8px;margin-top:17px}
#arcadeNameForm label{color:#ff778a;font-size:10px;font-weight:900;letter-spacing:.19em}
#arcadeUsername{width:100%;border:1px solid rgba(255,48,79,.62);border-radius:9px;padding:13px 14px;background:rgba(255,255,255,.04);color:#fff;font:900 16px/1 "Courier New",monospace;letter-spacing:.08em;text-transform:none;box-shadow:inset 0 0 14px rgba(255,48,79,.06)}
#arcadeUsername:focus{border-color:#fff;box-shadow:0 0 20px rgba(255,48,79,.35)}
.arcade-name-error{min-height:16px;margin:0;color:#ff9b55;font-size:10px}
.arcade-name-actions{display:grid;grid-template-columns:.7fr 1.3fr;gap:10px;margin-top:3px}
.arcade-name-cancel,.arcade-name-start{border:1px solid rgba(255,255,255,.17);border-radius:9px;padding:12px;background:rgba(255,255,255,.04);font:900 11px/1 "Courier New",monospace;letter-spacing:.12em}
.arcade-name-start{border-color:var(--arcade-red);background:rgba(255,48,79,.10);box-shadow:0 0 18px rgba(255,48,79,.28)}
.arcade-name-start:hover{background:var(--arcade-red);color:#080106}
.arcade-name-cancel:hover{border-color:#fff}

/* V5 arcade HUD, level patterns and power-up feedback. */
.arcade-shell{width:min(560px,100%)}
.arcade-hud{grid-template-columns:auto minmax(80px,1fr) auto minmax(150px,auto) auto;gap:8px;font-size:10px}
.arcade-user{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-weight:900;text-shadow:0 0 10px rgba(255,48,79,.55)}
.arcade-loadout{color:var(--arcade-green);white-space:nowrap}
.arcade-pattern{width:100%;margin-top:-2px;padding:5px 9px;border:1px solid rgba(255,48,79,.22);border-radius:7px;background:rgba(255,48,79,.045);color:#ff8798;font:900 9px/1.2 "Courier New",monospace;letter-spacing:.16em;text-align:center;text-transform:uppercase}
.arcade-power-toast{position:absolute;z-index:5;left:50%;top:14px;translate:-50% -10px;opacity:0;pointer-events:none;min-width:180px;padding:8px 12px;border:1px solid var(--arcade-green);border-radius:8px;background:rgba(4,12,2,.92);color:#dfffcc;font:900 11px/1.2 "Courier New",monospace;letter-spacing:.08em;text-align:center;box-shadow:0 0 25px rgba(157,255,84,.48);transition:.22s ease}
.arcade-power-toast.show{opacity:1;translate:-50% 0}
.arcade-message-rank{min-height:17px;color:var(--arcade-gold)!important;font-size:11px;font-weight:900;letter-spacing:.08em}
.arcade-message small{color:#8d8792;font-size:9px;letter-spacing:.12em}

@media (max-width:1100px) and (min-width:761px){
  .room-leaderboard{left:49.5%;top:24.8%;width:205px}
  .tv-panel{left:61%;width:13.5%}
}
@media (max-width:760px){
  .room-stage{background-image:linear-gradient(to bottom,rgba(2,1,6,.05),rgba(2,1,6,.17) 58%,rgba(2,1,6,.66)),url("/gala-page/wp-content/themes/gamingbroject-newsroom/assets/embedded-02-b766e05ed15e.webp");background-size:cover;background-position:center center}
  .room-heading{z-index:46}
  .room-leaderboard{display:block;left:50%;top:27%;width:min(210px,58vw);padding:8px 9px;translate:-50% 0}
  .room-leaderboard-head{font-size:8px}
  .leaderboard-list li{font-size:8px;min-height:14px}
  .mobile-active-card{top:52%}
  .arcade-name-card{padding:19px 17px}
  .arcade-name-copy{font-size:11px}
  .arcade-hud{grid-template-columns:auto minmax(0,1fr) auto auto;gap:5px;font-size:8px}
  .arcade-loadout{grid-column:1/4;grid-row:2;text-align:center;font-size:8px}
  .arcade-exit{grid-column:4;grid-row:1/3}
  .arcade-pattern{font-size:8px}
}
@media (max-width:390px){
  .room-leaderboard{top:28%;width:200px}
  .mobile-active-card{top:51%}
  .arcade-hud{font-size:7px}
  .arcade-name-card h2{font-size:36px}
}


/* V5 final responsive QA corrections */
.room-stage::after{background:linear-gradient(to bottom,rgba(0,0,0,.58) 0,rgba(0,0,0,.08) 3.2%,transparent 12%,transparent 78%,rgba(0,0,0,.18) 100%),linear-gradient(90deg,rgba(0,0,0,.58) 0,rgba(0,0,0,.22) 12%,transparent 22%,transparent 78%,rgba(0,0,0,.22) 88%,rgba(0,0,0,.58) 100%),radial-gradient(circle at 50% 48%,transparent 45%,rgba(0,0,0,.17) 100%)}
.arcade-shell{width:min(660px,100%)}
.arcade-frame{max-width:600px}
.arcade-frame canvas{max-width:none;width:100%;height:auto}
.arcade-hud{grid-template-columns:auto minmax(90px,1fr) auto minmax(170px,auto) auto;gap:9px;font-size:11px}
@media (max-width:760px){
  .hotspot.arcade-trigger{display:block!important;left:50%;top:45.5%;translate:-50% 0;min-width:185px;padding:9px 13px;font-size:13px;z-index:48}
  .hotspot.arcade-trigger span{display:none}
  .arcade-frame{max-width:480px}
  .arcade-hud{grid-template-columns:auto minmax(0,1fr) auto auto;gap:5px;font-size:8px}
}



/* =========================
   GamingBroject V7
   - compact title and non-overlapping room labels
   - 90% transparent labels at rest / 80% visible on hover
   - D&D archive shutters, PC power-on, arcade power-on + Top 3
   - one Free Games title and 3-to-6 CRT list
   - Chrome + Safari desktop/mobile safeguards
   ========================= */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* The heading is deliberately small and high so it never covers the room. */
.room-heading{
  top:.45%!important;left:50%!important;translate:-50% 0!important;
  width:min(400px,29%)!important;padding:6px 11px 7px!important;
  border:1px solid rgba(255,45,73,.24)!important;border-top:2px solid rgba(255,45,73,.62)!important;
  border-radius:0 0 12px 12px!important;
  background:rgba(4,1,8,.10)!important;
  -webkit-backdrop-filter:blur(2px)!important;backdrop-filter:blur(2px)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.12)!important;
}
.room-heading .eyebrow{font-size:6px!important;letter-spacing:.20em!important;opacity:.78}
.room-heading h1{margin:3px 0 2px!important;font-size:clamp(16px,1.65vw,29px)!important;line-height:.92!important;letter-spacing:.025em!important}
.room-heading p{font-size:clamp(7px,.48vw,9px)!important;line-height:1.25!important;opacity:.76}

/* Every room label is almost glass-clear at rest, then becomes 80% visible on hover/focus. */
.hotspot{
  background:rgba(4,1,8,.10)!important;
  border-color:color-mix(in srgb,var(--hot) 42%,transparent)!important;
  box-shadow:0 0 10px color-mix(in srgb,var(--hot) 18%,transparent),inset 0 0 10px rgba(255,255,255,.018)!important;
  -webkit-backdrop-filter:blur(2px)!important;backdrop-filter:blur(2px)!important;
  opacity:.88;transition:transform .23s ease,background-color .23s ease,opacity .23s ease,box-shadow .23s ease,border-color .23s ease!important;
}
.hotspot:hover,.hotspot:focus-visible,.hotspot.active{
  background:rgba(4,1,8,.80)!important;opacity:1!important;
  border-color:var(--hot)!important;
  box-shadow:0 0 0 4px rgba(0,0,0,.25),0 0 28px color-mix(in srgb,var(--hot) 70%,transparent),inset 0 0 24px color-mix(in srgb,var(--hot) 12%,transparent)!important;
}

/* News is above the D&D books instead of sitting over them. */
.hotspot[data-cat="news"]{left:14.7%!important;top:9.3%!important;min-width:146px!important}
.hotspot[data-cat="hardware"]{left:28.2%!important;top:42.1%!important;min-width:132px!important}
.hotspot[data-cat="releases"]{left:42.0%!important;top:71.3%!important}

/* Large invisible physical hit areas, keyboard accessible and Safari-safe. */
.scene-zone{position:absolute;z-index:33;appearance:none;-webkit-appearance:none;padding:0;border:0;background:transparent;color:transparent;cursor:pointer;overflow:hidden}
.scene-zone:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* D&D archive: opaque shutters at rest, opening apart on News hover/focus. */
.dnd-case-zone{left:15.05%;top:15.35%;width:23.55%;height:14.0%;border-radius:6px;box-shadow:inset 0 0 0 1px rgba(255,49,72,.18)}
.dnd-shutter{position:absolute;z-index:2;top:0;bottom:0;width:51%;background:linear-gradient(145deg,rgba(8,3,8,.97),rgba(24,7,14,.94) 55%,rgba(5,1,5,.98));border:1px solid rgba(255,49,72,.28);box-shadow:inset 0 0 25px rgba(0,0,0,.85);transition:transform .46s cubic-bezier(.18,.82,.2,1),box-shadow .28s ease}
.dnd-shutter::after{content:"";position:absolute;inset:0;opacity:.28;background:repeating-linear-gradient(90deg,transparent 0 11px,rgba(255,60,79,.16) 12px,transparent 13px 23px)}
.dnd-shutter-left{left:0;border-radius:6px 0 0 6px}.dnd-shutter-right{right:0;border-radius:0 6px 6px 0}
.dnd-case-lock{position:absolute;z-index:4;left:50%;top:50%;translate:-50% -50%;padding:5px 8px;border:1px solid rgba(255,49,72,.50);border-radius:5px;background:rgba(3,1,5,.72);color:#ff647a;font:800 clamp(5px,.42vw,8px)/1 var(--brand-font);letter-spacing:.11em;text-shadow:0 0 8px #ff304f;white-space:nowrap;transition:opacity .20s ease,transform .30s ease}
.room-stage.news-hover .dnd-shutter-left{transform:translateX(-103%)}
.room-stage.news-hover .dnd-shutter-right{transform:translateX(103%)}
.room-stage.news-hover .dnd-case-lock{opacity:0;transform:scale(.78)}
.room-stage.news-hover .dnd-case-zone{box-shadow:0 0 22px rgba(255,45,73,.46),inset 0 0 0 1px rgba(255,60,80,.55)}

/* PC setup is powered off until the PC area or label is hovered. */
.pc-power-zone{left:15.1%;top:30.3%;width:25.75%;height:29.2%;clip-path:polygon(0 2%,100% 0,100% 85%,82% 100%,0 92%)}
.pc-power-mask{position:absolute;inset:0;background:rgba(0,0,4,.56);-webkit-backdrop-filter:brightness(.20) saturate(.18) contrast(1.08);backdrop-filter:brightness(.20) saturate(.18) contrast(1.08);box-shadow:inset 0 0 60px rgba(0,0,0,.96);transition:opacity .38s ease}
.pc-power-glow{position:absolute;inset:-4%;opacity:0;pointer-events:none;background:radial-gradient(circle at 76% 31%,rgba(159,52,255,.40),transparent 19%),radial-gradient(circle at 58% 38%,rgba(30,221,255,.35),transparent 24%),radial-gradient(circle at 38% 44%,rgba(40,95,255,.30),transparent 30%);mix-blend-mode:screen;filter:blur(4px);transition:opacity .34s ease}
.room-stage.pc-hover .pc-power-mask{opacity:0}
.room-stage.pc-hover .pc-power-glow{opacity:1}
.room-stage.pc-hover .pc-power-zone{filter:drop-shadow(0 0 12px rgba(33,234,255,.55)) drop-shadow(0 0 24px rgba(140,49,255,.30))}

/* Arcade stays unobstructed. Only a small marquee label is visible; cabinet and Top 3 power on together. */
.arcade-power-zone{left:51.0%;top:22.4%;width:10.0%;height:25.0%;clip-path:polygon(25% 0,78% 0,91% 18%,89% 100%,12% 100%,11% 20%)}
.arcade-power-mask{position:absolute;inset:0;background:rgba(3,0,4,.45);-webkit-backdrop-filter:brightness(.34) saturate(.42);backdrop-filter:brightness(.34) saturate(.42);box-shadow:inset 0 0 32px rgba(0,0,0,.88);transition:opacity .32s ease}
.arcade-power-glow{position:absolute;inset:-10%;opacity:0;background:radial-gradient(ellipse at 52% 51%,rgba(255,30,62,.38),transparent 54%);filter:blur(6px);mix-blend-mode:screen;transition:opacity .32s ease}
.room-stage.arcade-hover .arcade-power-mask{opacity:0}
.room-stage.arcade-hover .arcade-power-glow{opacity:1}
.room-stage.arcade-hover .arcade-power-zone{filter:drop-shadow(0 0 10px rgba(255,48,79,.76)) drop-shadow(0 0 24px rgba(255,28,60,.44))}
.hotspot.arcade-trigger{
  left:56.0%!important;top:28.55%!important;translate:-50% 0!important;
  min-width:118px!important;padding:6px 9px 5px!important;
  font-size:clamp(9px,.72vw,14px)!important;line-height:1!important;
  background:rgba(28,0,7,.10)!important;
  box-shadow:0 0 10px rgba(255,48,79,.24),inset 0 0 9px rgba(255,48,79,.06)!important;
}
.hotspot.arcade-trigger:hover,.hotspot.arcade-trigger:focus-visible{
  background:rgba(28,0,7,.80)!important;transform:translateY(-3px) scale(1.035)!important;
  box-shadow:0 0 22px rgba(255,48,79,.75),inset 0 0 16px rgba(255,48,79,.16)!important;
}
.room-leaderboard{
  left:58.75%!important;top:31.15%!important;translate:0 0!important;
  width:clamp(132px,9.2vw,164px)!important;padding:6px 8px!important;
  opacity:0!important;pointer-events:none!important;
  transform:translateX(-8px) scale(.96)!important;
  background:rgba(7,1,6,.80)!important;
  -webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;
  transition:opacity .22s ease,transform .26s ease,box-shadow .26s ease!important;
}
.room-stage.arcade-hover .room-leaderboard{opacity:1!important;pointer-events:auto!important;transform:translateX(0) scale(1)!important;box-shadow:0 0 22px rgba(255,36,70,.52),inset 0 0 16px rgba(255,36,70,.08)!important}
.room-leaderboard:hover{transform:translateX(0) scale(1)!important}
.room-leaderboard-head{font-size:clamp(5px,.35vw,7px)!important}
.leaderboard-list li{font-size:clamp(6px,.39vw,8px)!important;min-height:11px!important}

/* Single Free Games title above a classic CRT. Three latest games are always visible; hover reveals all six. */
.tv-panel{left:64.65%!important;top:24.95%!important;width:14.45%!important;height:17.0%!important;opacity:.84;transition:opacity .22s ease,transform .22s ease!important}
.tv-panel:hover,.tv-panel:focus-visible,.tv-panel.active{opacity:1}
.tv-inner{position:relative!important;overflow:visible!important;width:100%;height:100%;display:block!important;padding:0!important}
.tv-floating-label{position:absolute;z-index:5;left:9%;right:9%;top:-25%;padding:5px 6px 4px;border:1px solid rgba(33,234,255,.38);border-radius:7px;background:rgba(2,6,10,.10);color:#f1feff;font-family:var(--brand-font);font-weight:800;font-size:clamp(8px,.78vw,14px);line-height:1;text-align:center;letter-spacing:.075em;text-transform:uppercase;-webkit-text-stroke:.28px var(--cyan);text-shadow:0 0 8px var(--cyan);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:background-color .22s ease,box-shadow .22s ease,border-color .22s ease}
.tv-panel:hover .tv-floating-label,.tv-panel:focus-visible .tv-floating-label,.tv-panel.active .tv-floating-label{background:rgba(2,6,10,.80);border-color:var(--cyan);box-shadow:0 0 22px rgba(33,234,255,.55)}
.crt-tv{height:100%!important;opacity:.90;transition:opacity .22s ease,box-shadow .22s ease}
.tv-panel:hover .crt-tv,.tv-panel:focus-visible .crt-tv,.tv-panel.active .crt-tv{opacity:1;box-shadow:0 6px 0 #090504,0 10px 20px rgba(0,0,0,.62),0 0 27px rgba(27,230,255,.48),inset 0 1px 1px rgba(255,222,177,.18)}
.crt-screen{justify-content:flex-start!important;padding:7% 6% 5%!important}
.tv-game-list{display:grid!important;gap:1px!important;max-height:43px!important;opacity:1!important;overflow:hidden!important;transform:none!important;transition:max-height .28s ease!important}
.tv-game-row{min-height:11px!important;font-size:clamp(4.5px,.36vw,6.6px)!important;transition:max-height .25s ease,opacity .20s ease,padding .25s ease,border-color .25s ease,transform .25s ease!important}
.tv-game-extra{max-height:0;min-height:0!important;opacity:0;overflow:hidden;padding:0!important;border-color:transparent!important;transform:translateY(-2px)}
.tv-panel:hover .tv-game-list,.tv-panel:focus-visible .tv-game-list,.tv-panel.active .tv-game-list{max-height:86px!important}
.tv-panel:hover .tv-game-extra,.tv-panel:focus-visible .tv-game-extra,.tv-panel.active .tv-game-extra{max-height:13px;min-height:11px!important;opacity:1;padding-bottom:1px!important;border-color:rgba(44,218,239,.13)!important;transform:none}
.tv-enter{margin-top:auto!important;padding-top:3px!important;font-size:clamp(3.8px,.29vw,5.5px)!important}
.tv-panel:hover .tv-enter,.tv-panel:focus-visible .tv-enter,.tv-panel.active .tv-enter{display:block!important;opacity:.28;font-size:0!important;padding:0!important;margin:0!important}

/* Keep the successful Console light/lift effect exactly as it is. */
.hotspot[data-cat="releases"]:hover,.hotspot[data-cat="releases"]:focus-visible,.hotspot[data-cat="releases"].active{filter:brightness(1.06)}

/* Tablet corrections. */
@media (max-width:1100px) and (min-width:761px){
  .room-heading{width:min(360px,34%)!important}.room-heading h1{font-size:clamp(15px,2vw,25px)!important}
  .hotspot[data-cat="news"]{left:13.9%!important;top:9.8%!important}
  .dnd-case-zone{left:14.4%;top:15.4%;width:24.3%;height:14%}
  .pc-power-zone{left:14.4%;width:26.2%}
  .hotspot.arcade-trigger{left:55.7%!important;top:28.8%!important;min-width:108px!important}
  .arcade-power-zone{left:50.5%;width:10.8%}
  .room-leaderboard{left:59.1%!important;top:31.8%!important;width:132px!important}
  .tv-floating-label{top:-23%;font-size:9px}
}

/* Mobile remains a real site: compact masthead, category dock and playable arcade. Hover-only scenery is removed. */
@media (max-width:760px){
  .room-heading{top:5px!important;left:8px!important;right:8px!important;width:auto!important;padding:6px 8px!important;background:rgba(4,1,8,.22)!important}
  .room-heading .eyebrow{font-size:6px!important}.room-heading h1{font-size:18px!important;margin:2px 0!important}.room-heading p{display:none!important}
  .scene-zone{display:none!important}
  .room-leaderboard{display:none!important}
  .hotspot.arcade-trigger{left:76%!important;top:37.2%!important;translate:-50% 0!important;min-width:126px!important;padding:7px 8px 6px!important;font-size:10px!important;background:rgba(28,0,7,.66)!important}
  .mobile-active-card{top:52%!important;background:rgba(5,2,10,.78)!important}
}
@media (max-width:390px){
  .hotspot.arcade-trigger{left:75%!important;top:36.7%!important;min-width:116px!important;font-size:9px!important}
  .room-heading h1{font-size:17px!important}
}

/* Do not animate lift effects for users who request reduced motion. */
@media (prefers-reduced-motion:reduce){
  .dnd-shutter,.pc-power-mask,.pc-power-glow,.arcade-power-mask,.arcade-power-glow,.room-leaderboard,.tv-game-extra{transition:none!important}
}



/* =========================
   GamingBroject V6
   - official wordmark-inspired typography
   - compact arcade leaderboard
   - D&D library room background
   - classic CRT Free Games panel
   ========================= */
@font-face{
  font-family:"GB Stranger";
  src:local("ITC Benguiat Std Bold Condensed"),local("ITC Benguiat"),local("Benguiat"),
      local("Bookman Old Style Bold"),local("Bookman Old Style"),local("URW Bookman");
  font-style:normal;
  font-weight:700 900;
  font-display:swap;
}
:root{
  --header-h:124px;
  --brand-font:"GB Stranger","Bookman Old Style","URW Bookman","DejaVu Serif",Georgia,serif;
  --brand-outline:#ff2d49;
}

/* Preserve the original room proportions and fill the viewport by cropping, never stretching. */
.room-stage{
  background-image:
    linear-gradient(to bottom,rgba(2,1,6,.07),rgba(2,1,6,.12) 58%,rgba(2,1,6,.52)),
    url("/gala-page/wp-content/themes/gamingbroject-newsroom/assets/embedded-03-3cf947d8829a.webp")!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
.room-piece{
  background-image:url("/gala-page/wp-content/themes/gamingbroject-newsroom/assets/embedded-03-3cf947d8829a.webp")!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
.room-stage::after{
  background:
    linear-gradient(to bottom,rgba(0,0,0,.44) 0,rgba(0,0,0,.06) 5%,transparent 15%,transparent 78%,rgba(0,0,0,.22) 100%),
    linear-gradient(90deg,rgba(0,0,0,.42) 0,rgba(0,0,0,.10) 8%,transparent 18%,transparent 84%,rgba(0,0,0,.18) 93%,rgba(0,0,0,.44) 100%),
    radial-gradient(circle at 52% 48%,transparent 44%,rgba(0,0,0,.12) 100%)!important;
}

/* Header logo remains the official Drive asset; every tab now follows the same serif wordmark language. */
.site-header{gap:2px;padding-top:5px;padding-bottom:7px}
.logo-btn img{width:258px;max-height:74px;filter:drop-shadow(0 0 10px rgba(255,35,61,.50)) drop-shadow(0 0 22px rgba(255,35,61,.22))}
.main-nav{gap:clamp(22px,2.45vw,48px);min-height:38px}
.nav-btn,
.hotspot,
.tv-category-title,
.mobile-cat,
.switch-btn,
.mobile-active-card h2,
.section-title,
.room-heading h1{
  font-family:var(--brand-font)!important;
  font-style:normal!important;
  font-weight:800!important;
  text-transform:uppercase;
  letter-spacing:.075em!important;
}
.nav-btn{
  color:#f7edf0;
  font-size:clamp(11px,.88vw,15px);
  -webkit-text-stroke:.28px var(--tab-color,var(--brand-outline));
  text-shadow:0 0 8px color-mix(in srgb,var(--tab-color,var(--brand-outline)) 55%,transparent);
}
.nav-btn:hover,.nav-btn.active{
  color:#fff8fa;
  -webkit-text-stroke:.42px var(--tab-color,var(--brand-outline));
  text-shadow:0 0 8px var(--tab-color,var(--brand-outline)),0 0 20px color-mix(in srgb,var(--tab-color,var(--brand-outline)) 48%,transparent);
}

/* Wordmark-style room labels: same family, outline and spacing, while keeping category colors. */
.hotspot{
  min-width:146px;
  padding:10px 15px 9px;
  color:#fff6f8;
  font-size:clamp(11px,.88vw,16px);
  line-height:1;
  -webkit-text-stroke:.38px var(--hot);
  text-shadow:0 0 8px var(--hot),0 0 18px color-mix(in srgb,var(--hot) 48%,transparent);
  border-radius:9px;
}
.hotspot span{
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  -webkit-text-stroke:0;
  font-style:normal!important;
  letter-spacing:.035em!important;
  font-size:8px;
  line-height:1.25;
}
.hotspot.arcade-trigger{
  left:52.9%!important;
  top:42.2%!important;
  min-width:196px;
  padding:12px 17px 10px;
  font-family:var(--brand-font)!important;
  font-style:normal!important;
  font-size:clamp(13px,1.06vw,20px);
  letter-spacing:.07em!important;
  color:#fff6f7;
  -webkit-text-stroke:.55px #ff304f;
  text-shadow:0 0 8px #ff304f,0 0 20px rgba(255,48,79,.72);
}
.hotspot.arcade-trigger span{font-family:Inter,ui-sans-serif,system-ui,sans-serif!important}

/* Re-align the physical room interactions to the new non-stretched 16:9 composition. */
.hotspot[data-cat="news"]{
  left:14.6%!important;
  top:12.8%!important;
  min-width:158px;
  --hot:var(--red);
}
.hotspot[data-cat="hardware"]{
  left:28.6%!important;
  top:42.3%!important;
  min-width:144px;
  --hot:var(--cyan);
}
.hotspot[data-cat="releases"]{
  left:42.2%!important;
  top:71.2%!important;
  min-width:174px;
  --hot:var(--orange);
}
.tv-panel{
  left:64.65%!important;
  top:24.7%!important;
  width:14.45%!important;
  height:17.1%!important;
}
/* Puzzle lift regions updated to match the new room. */
.piece-news,.void-news{clip-path:polygon(9% 6%,39% 6%,39.5% 31%,35% 35%,9% 34%)!important;--dx:-1.0%;--dy:-1.2%;--piece-accent:var(--red)}
.piece-hardware,.void-hardware{clip-path:polygon(9% 30%,40% 29%,40% 59%,35% 64%,9% 62%)!important;--dx:-1%;--dy:.2%;--piece-accent:var(--cyan)}
.piece-guides,.void-guides{clip-path:polygon(43% 17%,58.5% 17%,59% 51%,54% 58%,46% 54%)!important;--dx:0%;--dy:-1.5%;--piece-accent:#ff304f}
.piece-freegames,.void-freegames{clip-path:polygon(61% 16%,84% 16%,84% 48%,79% 53%,62% 50%)!important;--dx:1%;--dy:-1.1%;--piece-accent:var(--cyan)}
.piece-releases,.void-releases{clip-path:polygon(33% 57%,83% 55%,89% 98%,24% 98%)!important;--dx:0%;--dy:1.1%;--piece-accent:var(--orange)}

/* The Top 3 is a small scoreboard attached visually to the arcade. */
.room-leaderboard{
  left:52.85%!important;
  top:29.4%!important;
  translate:-50% 0!important;
  width:clamp(142px,8.7vw,168px)!important;
  padding:5px 7px 6px!important;
  border-radius:7px!important;
  border-color:rgba(255,48,79,.60)!important;
  background:linear-gradient(180deg,rgba(11,1,6,.88),rgba(2,1,5,.90))!important;
  box-shadow:0 0 14px rgba(255,36,70,.34),inset 0 0 14px rgba(255,36,70,.07)!important;
}
.room-leaderboard:hover{transform:translateY(-2px)!important}
.room-leaderboard-head{
  padding-bottom:3px!important;
  font-family:var(--brand-font)!important;
  font-size:clamp(6px,.38vw,8px)!important;
  letter-spacing:.08em!important;
}
.leaderboard-list{margin-top:3px!important;gap:1px!important}
.leaderboard-list li{
  grid-template-columns:12px minmax(0,1fr) auto!important;
  gap:3px!important;
  min-height:10px!important;
  font-size:clamp(6px,.37vw,8px)!important;
  line-height:1.05!important;
}

/* A restrained heading leaves the upper shelves visible. */
.room-heading{
  top:1.7%!important;
  width:min(520px,38%)!important;
  padding:10px 18px 12px!important;
}
.room-heading .eyebrow{font-size:8px!important}
.room-heading h1{font-size:clamp(23px,2.35vw,42px)!important;letter-spacing:.015em!important}
.room-heading p{font-size:clamp(9px,.72vw,11px)!important}

/* 1970s–1990s CRT television shell. It never grows; the latest list appears inside the same screen. */
.tv-panel{
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:14px!important;
  background:transparent!important;
  box-shadow:none!important;
}
.tv-panel:hover,.tv-panel:focus-visible,.tv-panel.active{
  transform:translateY(-3px) scale(1.012)!important;
  box-shadow:none!important;
}
.crt-tv{
  position:relative;
  width:100%;
  height:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) 14%;
  gap:3.5%;
  padding:5.2% 4.6% 5.2% 5.4%;
  border:5px solid #251913;
  border-radius:17px 17px 15px 15px;
  background:
    linear-gradient(145deg,#4b3123 0%,#21140f 23%,#130c0a 68%,#392218 100%);
  box-shadow:
    0 6px 0 #090504,
    0 10px 20px rgba(0,0,0,.62),
    0 0 20px rgba(27,230,255,.30),
    inset 0 1px 1px rgba(255,222,177,.18);
}
.crt-tv::before{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:-7px;
  height:5px;
  border-radius:0 0 8px 8px;
  background:#150c08;
  box-shadow:0 5px 8px rgba(0,0,0,.6);
}
.crt-screen{
  position:relative;
  min-width:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:5.5% 6%;
  border:2px solid #3d3f42;
  border-radius:20% / 13%;
  background:
    radial-gradient(ellipse at center,rgba(11,28,31,.54),rgba(0,3,5,.97) 72%),
    #010405;
  box-shadow:
    inset 0 0 22px rgba(0,0,0,.96),
    inset 0 0 10px rgba(35,226,255,.16),
    0 0 8px rgba(35,226,255,.28);
}
.crt-screen::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.24;
  background:
    repeating-linear-gradient(to bottom,transparent 0 2px,rgba(180,245,255,.14) 3px),
    linear-gradient(90deg,rgba(255,255,255,.05),transparent 12%,transparent 88%,rgba(255,255,255,.04));
}
.crt-controls{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10%;padding-block:8%}
.crt-dial{
  width:68%;
  aspect-ratio:1;
  border-radius:50%;
  border:1px solid #5c4a3d;
  background:radial-gradient(circle at 35% 30%,#766052 0 10%,#2a1c16 26%,#090605 68%);
  box-shadow:inset 0 0 6px #000,0 1px 2px rgba(255,255,255,.10);
}
.crt-speaker{
  width:75%;
  height:32%;
  opacity:.7;
  background:repeating-linear-gradient(to bottom,#725343 0 1px,transparent 1px 4px);
}
.tv-category-title{
  position:relative;
  z-index:2;
  flex:0 0 auto;
  color:#effeff;
  font-size:clamp(10px,1.04vw,19px);
  line-height:.95;
  letter-spacing:.065em!important;
  -webkit-text-stroke:.35px var(--cyan);
  text-shadow:0 0 8px var(--cyan),0 0 18px rgba(33,234,255,.42);
  transition:font-size .20s ease,margin .20s ease,transform .20s ease;
}
.tv-game-list{
  position:relative;
  z-index:2;
  width:100%;
  display:grid;
  gap:1px;
  max-height:0;
  opacity:0;
  overflow:hidden;
  transform:translateY(5px);
  transition:max-height .24s ease,opacity .20s ease,transform .24s ease;
}
.tv-game-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:4px;
  align-items:center;
  min-height:12px;
  padding-bottom:1px;
  border-bottom:1px solid rgba(44,218,239,.13);
  font-family:"Courier New",ui-monospace,monospace;
  font-size:clamp(5px,.40vw,7px);
  line-height:1.05;
  letter-spacing:.025em;
  color:#e8f9fa;
}
.tv-game-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.tv-game-meta{color:#5feeff;white-space:nowrap}
.tv-enter{
  position:relative;
  z-index:2;
  margin-top:4%;
  font-family:"Courier New",ui-monospace,monospace;
  font-size:clamp(4px,.34vw,6px);
  letter-spacing:.12em;
  color:rgba(232,252,255,.58);
  text-transform:uppercase;
  transition:.20s ease;
}
.tv-panel:hover .tv-category-title,
.tv-panel:focus-visible .tv-category-title,
.tv-panel.active .tv-category-title{
  font-size:clamp(7px,.62vw,11px);
  margin-bottom:3px;
  transform:translateY(-1px);
}
.tv-panel:hover .tv-game-list,
.tv-panel:focus-visible .tv-game-list,
.tv-panel.active .tv-game-list{
  max-height:88px;
  opacity:1;
  transform:none;
}
.tv-panel:hover .tv-enter,
.tv-panel:focus-visible .tv-enter,
.tv-panel.active .tv-enter{display:none}

/* Content hub typography follows the same identity without sacrificing long-form readability. */
.switch-btn{font-size:12px;-webkit-text-stroke:.22px var(--accent)}
.mobile-active-card h2,.section-title{-webkit-text-stroke:.35px var(--accent);text-shadow:0 0 13px color-mix(in srgb,var(--accent) 42%,transparent)}

@media (max-width:1100px) and (min-width:761px){
  :root{--header-h:118px}
  .logo-btn img{width:228px}
  .main-nav{gap:18px}
  .nav-btn{font-size:10px}
  .hotspot[data-cat="news"]{left:13.8%!important;top:13.6%!important}
  .hotspot[data-cat="hardware"]{left:27.8%!important;top:42.8%!important}
  .hotspot.arcade-trigger{left:52.2%!important;top:43%!important;min-width:176px}
  .hotspot[data-cat="releases"]{left:40.6%!important;top:71.5%!important}
  .room-leaderboard{left:52.3%!important;top:30.1%!important;width:148px!important}
  .tv-panel{left:64.2%!important;top:25.1%!important;width:15.3%!important;height:16.9%!important}
}

@media (max-width:760px){
  :root{--header-h:108px}
  .site-header{height:var(--header-h);padding:4px 45px 6px}
  .logo-btn img{width:172px;max-height:55px}
  .main-nav{gap:17px}
  .nav-btn{font-size:8px;letter-spacing:.055em!important;-webkit-text-stroke:.22px var(--tab-color,var(--brand-outline))}
  .room-stage{
    background-image:
      linear-gradient(to bottom,rgba(2,1,6,.06),rgba(2,1,6,.18) 58%,rgba(2,1,6,.62)),
      url("/gala-page/wp-content/themes/gamingbroject-newsroom/assets/embedded-04-262c3feabc13.webp")!important;
    background-size:cover!important;
    background-position:center center!important;
  }
  .room-piece{
    background-image:url("/gala-page/wp-content/themes/gamingbroject-newsroom/assets/embedded-04-262c3feabc13.webp")!important;
    background-size:cover!important;
    background-position:center center!important;
  }
  .room-heading{top:8px!important;left:10px!important;right:10px!important;width:auto!important;padding:8px 10px!important}
  .room-heading h1{font-size:22px!important}
  .room-leaderboard{
    display:block!important;
    left:50%!important;
    top:27.5%!important;
    width:150px!important;
    padding:4px 6px!important;
    z-index:47!important;
  }
  .room-leaderboard-head{font-size:6px!important}
  .leaderboard-list li{font-size:6px!important;min-height:9px!important}
  .hotspot.arcade-trigger{
    display:block!important;
    left:50%!important;
    top:44.7%!important;
    translate:-50% 0!important;
    min-width:174px!important;
    padding:9px 11px 8px!important;
    font-size:13px!important;
  }
  .hotspot.arcade-trigger span{display:none!important}
  .mobile-active-card h2,.mobile-cat{font-family:var(--brand-font)!important}
  .mobile-cat{font-size:7px;letter-spacing:.045em!important}
}

/* =========================
   GamingBroject V7
   - compact title and non-overlapping room labels
   - 90% transparent labels at rest / 80% visible on hover
   - D&D archive shutters, PC power-on, arcade power-on + Top 3
   - one Free Games title and 3-to-6 CRT list
   - Chrome + Safari desktop/mobile safeguards
   ========================= */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* The heading is deliberately small and high so it never covers the room. */
.room-heading{
  top:.45%!important;left:50%!important;translate:-50% 0!important;
  width:min(400px,29%)!important;padding:6px 11px 7px!important;
  border:1px solid rgba(255,45,73,.24)!important;border-top:2px solid rgba(255,45,73,.62)!important;
  border-radius:0 0 12px 12px!important;
  background:rgba(4,1,8,.10)!important;
  -webkit-backdrop-filter:blur(2px)!important;backdrop-filter:blur(2px)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.12)!important;
}
.room-heading .eyebrow{font-size:6px!important;letter-spacing:.20em!important;opacity:.78}
.room-heading h1{margin:3px 0 2px!important;font-size:clamp(16px,1.65vw,29px)!important;line-height:.92!important;letter-spacing:.025em!important}
.room-heading p{font-size:clamp(7px,.48vw,9px)!important;line-height:1.25!important;opacity:.76}

/* Every room label is almost glass-clear at rest, then becomes 80% visible on hover/focus. */
.hotspot{
  background:rgba(4,1,8,.10)!important;
  border-color:color-mix(in srgb,var(--hot) 42%,transparent)!important;
  box-shadow:0 0 10px color-mix(in srgb,var(--hot) 18%,transparent),inset 0 0 10px rgba(255,255,255,.018)!important;
  -webkit-backdrop-filter:blur(2px)!important;backdrop-filter:blur(2px)!important;
  opacity:.88;transition:transform .23s ease,background-color .23s ease,opacity .23s ease,box-shadow .23s ease,border-color .23s ease!important;
}
.hotspot:hover,.hotspot:focus-visible,.hotspot.active{
  background:rgba(4,1,8,.80)!important;opacity:1!important;
  border-color:var(--hot)!important;
  box-shadow:0 0 0 4px rgba(0,0,0,.25),0 0 28px color-mix(in srgb,var(--hot) 70%,transparent),inset 0 0 24px color-mix(in srgb,var(--hot) 12%,transparent)!important;
}

/* News is above the D&D books instead of sitting over them. */
.hotspot[data-cat="news"]{left:14.7%!important;top:9.3%!important;min-width:146px!important}
.hotspot[data-cat="hardware"]{left:28.2%!important;top:42.1%!important;min-width:132px!important}
.hotspot[data-cat="releases"]{left:42.0%!important;top:71.3%!important}

/* Large invisible physical hit areas, keyboard accessible and Safari-safe. */
.scene-zone{position:absolute;z-index:33;appearance:none;-webkit-appearance:none;padding:0;border:0;background:transparent;color:transparent;cursor:pointer;overflow:hidden}
.scene-zone:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* D&D archive: opaque shutters at rest, opening apart on News hover/focus. */
.dnd-case-zone{left:15.05%;top:15.35%;width:23.55%;height:14.0%;border-radius:6px;box-shadow:inset 0 0 0 1px rgba(255,49,72,.18)}
.dnd-shutter{position:absolute;z-index:2;top:0;bottom:0;width:51%;background:linear-gradient(145deg,rgba(8,3,8,.97),rgba(24,7,14,.94) 55%,rgba(5,1,5,.98));border:1px solid rgba(255,49,72,.28);box-shadow:inset 0 0 25px rgba(0,0,0,.85);transition:transform .46s cubic-bezier(.18,.82,.2,1),box-shadow .28s ease}
.dnd-shutter::after{content:"";position:absolute;inset:0;opacity:.28;background:repeating-linear-gradient(90deg,transparent 0 11px,rgba(255,60,79,.16) 12px,transparent 13px 23px)}
.dnd-shutter-left{left:0;border-radius:6px 0 0 6px}.dnd-shutter-right{right:0;border-radius:0 6px 6px 0}
.dnd-case-lock{position:absolute;z-index:4;left:50%;top:50%;translate:-50% -50%;padding:5px 8px;border:1px solid rgba(255,49,72,.50);border-radius:5px;background:rgba(3,1,5,.72);color:#ff647a;font:800 clamp(5px,.42vw,8px)/1 var(--brand-font);letter-spacing:.11em;text-shadow:0 0 8px #ff304f;white-space:nowrap;transition:opacity .20s ease,transform .30s ease}
.room-stage.news-hover .dnd-shutter-left{transform:translateX(-103%)}
.room-stage.news-hover .dnd-shutter-right{transform:translateX(103%)}
.room-stage.news-hover .dnd-case-lock{opacity:0;transform:scale(.78)}
.room-stage.news-hover .dnd-case-zone{box-shadow:0 0 22px rgba(255,45,73,.46),inset 0 0 0 1px rgba(255,60,80,.55)}

/* PC setup is powered off until the PC area or label is hovered. */
.pc-power-zone{left:15.1%;top:30.3%;width:25.75%;height:29.2%;clip-path:polygon(0 2%,100% 0,100% 85%,82% 100%,0 92%)}
.pc-power-mask{position:absolute;inset:0;background:rgba(0,0,4,.56);-webkit-backdrop-filter:brightness(.20) saturate(.18) contrast(1.08);backdrop-filter:brightness(.20) saturate(.18) contrast(1.08);box-shadow:inset 0 0 60px rgba(0,0,0,.96);transition:opacity .38s ease}
.pc-power-glow{position:absolute;inset:-4%;opacity:0;pointer-events:none;background:radial-gradient(circle at 76% 31%,rgba(159,52,255,.40),transparent 19%),radial-gradient(circle at 58% 38%,rgba(30,221,255,.35),transparent 24%),radial-gradient(circle at 38% 44%,rgba(40,95,255,.30),transparent 30%);mix-blend-mode:screen;filter:blur(4px);transition:opacity .34s ease}
.room-stage.pc-hover .pc-power-mask{opacity:0}
.room-stage.pc-hover .pc-power-glow{opacity:1}
.room-stage.pc-hover .pc-power-zone{filter:drop-shadow(0 0 12px rgba(33,234,255,.55)) drop-shadow(0 0 24px rgba(140,49,255,.30))}

/* Arcade stays unobstructed. Only a small marquee label is visible; cabinet and Top 3 power on together. */
.arcade-power-zone{left:51.0%;top:22.4%;width:10.0%;height:25.0%;clip-path:polygon(25% 0,78% 0,91% 18%,89% 100%,12% 100%,11% 20%)}
.arcade-power-mask{position:absolute;inset:0;background:rgba(3,0,4,.45);-webkit-backdrop-filter:brightness(.34) saturate(.42);backdrop-filter:brightness(.34) saturate(.42);box-shadow:inset 0 0 32px rgba(0,0,0,.88);transition:opacity .32s ease}
.arcade-power-glow{position:absolute;inset:-10%;opacity:0;background:radial-gradient(ellipse at 52% 51%,rgba(255,30,62,.38),transparent 54%);filter:blur(6px);mix-blend-mode:screen;transition:opacity .32s ease}
.room-stage.arcade-hover .arcade-power-mask{opacity:0}
.room-stage.arcade-hover .arcade-power-glow{opacity:1}
.room-stage.arcade-hover .arcade-power-zone{filter:drop-shadow(0 0 10px rgba(255,48,79,.76)) drop-shadow(0 0 24px rgba(255,28,60,.44))}
.hotspot.arcade-trigger{
  left:56.0%!important;top:28.55%!important;translate:-50% 0!important;
  min-width:118px!important;padding:6px 9px 5px!important;
  font-size:clamp(9px,.72vw,14px)!important;line-height:1!important;
  background:rgba(28,0,7,.10)!important;
  box-shadow:0 0 10px rgba(255,48,79,.24),inset 0 0 9px rgba(255,48,79,.06)!important;
}
.hotspot.arcade-trigger:hover,.hotspot.arcade-trigger:focus-visible{
  background:rgba(28,0,7,.80)!important;transform:translateY(-3px) scale(1.035)!important;
  box-shadow:0 0 22px rgba(255,48,79,.75),inset 0 0 16px rgba(255,48,79,.16)!important;
}
.room-leaderboard{
  left:58.75%!important;top:31.15%!important;translate:0 0!important;
  width:clamp(132px,9.2vw,164px)!important;padding:6px 8px!important;
  opacity:0!important;pointer-events:none!important;
  transform:translateX(-8px) scale(.96)!important;
  background:rgba(7,1,6,.80)!important;
  -webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;
  transition:opacity .22s ease,transform .26s ease,box-shadow .26s ease!important;
}
.room-stage.arcade-hover .room-leaderboard{opacity:1!important;pointer-events:auto!important;transform:translateX(0) scale(1)!important;box-shadow:0 0 22px rgba(255,36,70,.52),inset 0 0 16px rgba(255,36,70,.08)!important}
.room-leaderboard:hover{transform:translateX(0) scale(1)!important}
.room-leaderboard-head{font-size:clamp(5px,.35vw,7px)!important}
.leaderboard-list li{font-size:clamp(6px,.39vw,8px)!important;min-height:11px!important}

/* Single Free Games title above a classic CRT. Three latest games are always visible; hover reveals all six. */
.tv-panel{left:64.65%!important;top:24.95%!important;width:14.45%!important;height:17.0%!important;opacity:.84;transition:opacity .22s ease,transform .22s ease!important}
.tv-panel:hover,.tv-panel:focus-visible,.tv-panel.active{opacity:1}
.tv-inner{position:relative!important;overflow:visible!important;width:100%;height:100%;display:block!important;padding:0!important}
.tv-floating-label{position:absolute;z-index:5;left:9%;right:9%;top:-25%;padding:5px 6px 4px;border:1px solid rgba(33,234,255,.38);border-radius:7px;background:rgba(2,6,10,.10);color:#f1feff;font-family:var(--brand-font);font-weight:800;font-size:clamp(8px,.78vw,14px);line-height:1;text-align:center;letter-spacing:.075em;text-transform:uppercase;-webkit-text-stroke:.28px var(--cyan);text-shadow:0 0 8px var(--cyan);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:background-color .22s ease,box-shadow .22s ease,border-color .22s ease}
.tv-panel:hover .tv-floating-label,.tv-panel:focus-visible .tv-floating-label,.tv-panel.active .tv-floating-label{background:rgba(2,6,10,.80);border-color:var(--cyan);box-shadow:0 0 22px rgba(33,234,255,.55)}
.crt-tv{height:100%!important;opacity:.90;transition:opacity .22s ease,box-shadow .22s ease}
.tv-panel:hover .crt-tv,.tv-panel:focus-visible .crt-tv,.tv-panel.active .crt-tv{opacity:1;box-shadow:0 6px 0 #090504,0 10px 20px rgba(0,0,0,.62),0 0 27px rgba(27,230,255,.48),inset 0 1px 1px rgba(255,222,177,.18)}
.crt-screen{justify-content:flex-start!important;padding:7% 6% 5%!important}
.tv-game-list{display:grid!important;gap:1px!important;max-height:43px!important;opacity:1!important;overflow:hidden!important;transform:none!important;transition:max-height .28s ease!important}
.tv-game-row{min-height:11px!important;font-size:clamp(4.5px,.36vw,6.6px)!important;transition:max-height .25s ease,opacity .20s ease,padding .25s ease,border-color .25s ease,transform .25s ease!important}
.tv-game-extra{max-height:0;min-height:0!important;opacity:0;overflow:hidden;padding:0!important;border-color:transparent!important;transform:translateY(-2px)}
.tv-panel:hover .tv-game-list,.tv-panel:focus-visible .tv-game-list,.tv-panel.active .tv-game-list{max-height:86px!important}
.tv-panel:hover .tv-game-extra,.tv-panel:focus-visible .tv-game-extra,.tv-panel.active .tv-game-extra{max-height:13px;min-height:11px!important;opacity:1;padding-bottom:1px!important;border-color:rgba(44,218,239,.13)!important;transform:none}
.tv-enter{margin-top:auto!important;padding-top:3px!important;font-size:clamp(3.8px,.29vw,5.5px)!important}
.tv-panel:hover .tv-enter,.tv-panel:focus-visible .tv-enter,.tv-panel.active .tv-enter{display:block!important;opacity:.28;font-size:0!important;padding:0!important;margin:0!important}

/* Keep the successful Console light/lift effect exactly as it is. */
.hotspot[data-cat="releases"]:hover,.hotspot[data-cat="releases"]:focus-visible,.hotspot[data-cat="releases"].active{filter:brightness(1.06)}

/* Tablet corrections. */
@media (max-width:1100px) and (min-width:761px){
  .room-heading{width:min(360px,34%)!important}.room-heading h1{font-size:clamp(15px,2vw,25px)!important}
  .hotspot[data-cat="news"]{left:13.9%!important;top:9.8%!important}
  .dnd-case-zone{left:14.4%;top:15.4%;width:24.3%;height:14%}
  .pc-power-zone{left:14.4%;width:26.2%}
  .hotspot.arcade-trigger{left:55.7%!important;top:28.8%!important;min-width:108px!important}
  .arcade-power-zone{left:50.5%;width:10.8%}
  .room-leaderboard{left:59.1%!important;top:31.8%!important;width:132px!important}
  .tv-floating-label{top:-23%;font-size:9px}
}

/* Mobile remains a real site: compact masthead, category dock and playable arcade. Hover-only scenery is removed. */
@media (max-width:760px){
  .room-heading{top:5px!important;left:8px!important;right:8px!important;width:auto!important;padding:6px 8px!important;background:rgba(4,1,8,.22)!important}
  .room-heading .eyebrow{font-size:6px!important}.room-heading h1{font-size:18px!important;margin:2px 0!important}.room-heading p{display:none!important}
  .scene-zone{display:none!important}
  .room-leaderboard{display:none!important}
  .hotspot.arcade-trigger{left:76%!important;top:37.2%!important;translate:-50% 0!important;min-width:126px!important;padding:7px 8px 6px!important;font-size:10px!important;background:rgba(28,0,7,.66)!important}
  .mobile-active-card{top:52%!important;background:rgba(5,2,10,.78)!important}
}
@media (max-width:390px){
  .hotspot.arcade-trigger{left:75%!important;top:36.7%!important;min-width:116px!important;font-size:9px!important}
  .room-heading h1{font-size:17px!important}
}

/* Do not animate lift effects for users who request reduced motion. */
@media (prefers-reduced-motion:reduce){
  .dnd-shutter,.pc-power-mask,.pc-power-glow,.arcade-power-mask,.arcade-power-glow,.room-leaderboard,.tv-game-extra{transition:none!important}
}




/* V10 final visual QA patch */
.tv-panel{opacity:1!important;isolation:isolate}
.tv-panel::before{content:""!important;position:absolute!important;z-index:0!important;left:-7%!important;right:-12%!important;top:-18%!important;bottom:-9%!important;border-radius:15px!important;background:rgba(2,1,5,.94)!important;box-shadow:0 0 18px rgba(0,0,0,.56)!important;pointer-events:none!important}
.tv-inner{position:relative!important;z-index:2!important}
.crt-tv{opacity:1!important}
@media (max-width:760px){.room-heading{translate:0 0!important}}

/* V10 desktop hero: 8K collector room with a compact vintage console display. */
:root{--room-hero-v28-8k:url("/gala-page/wp-content/themes/gamingbroject-newsroom/assets/gamingbroject-room-1920.webp");--room-hero-v10-8k:var(--room-hero-v28-8k)}
@media (min-width:761px){
  .room-stage{
    background-image:
      linear-gradient(to bottom,rgba(2,1,6,.07),rgba(2,1,6,.12) 58%,rgba(2,1,6,.52)),
      var(--room-hero-v10-8k)!important;
  }
  .room-piece{background-image:var(--room-hero-v10-8k)!important}
  .dnd-case-zone{left:8.8%;top:4.8%;width:32.5%;height:29.2%;border-radius:8px;box-shadow:inset 0 0 0 1px rgba(255,49,72,.12)}
  .dnd-shutter,.dnd-case-lock{display:none!important}
  .room-stage.news-hover .dnd-case-zone{box-shadow:0 0 28px rgba(255,45,73,.30),inset 0 0 0 1px rgba(255,74,96,.38)}
}

/* V10 compact controls: keep the room visible and place the arcade UI on the cabinet axis. */
.room-heading{
  left:2.35%!important;right:auto!important;top:2.1%!important;translate:0 0!important;
  width:auto!important;max-width:340px!important;padding:7px 12px 8px!important;
  border-left:2px solid rgba(255,41,72,.88)!important;border-radius:0 10px 10px 0!important;
  background:linear-gradient(90deg,rgba(4,1,8,.72),rgba(4,1,8,.20))!important;
  box-shadow:0 8px 24px rgba(0,0,0,.18)!important;
}
.room-heading .eyebrow,.room-heading p{display:none!important}
.room-heading h1{
  margin:0!important;font-size:clamp(13px,1.18vw,21px)!important;line-height:1!important;
  letter-spacing:.035em!important;white-space:nowrap!important;
}
.hotspot.arcade-trigger{
  left:53.1%!important;top:28.2%!important;translate:-50% 0!important;
  min-width:112px!important;padding:6px 10px 5px!important;
}
.room-leaderboard{
  left:53.1%!important;top:17.9%!important;translate:-50% 0!important;
  width:clamp(150px,10.2vw,184px)!important;padding:7px 9px!important;
  opacity:0!important;pointer-events:none!important;
  transform:translateY(9px) scale(.94)!important;
}
.room-stage.arcade-hover .room-leaderboard,
.room-leaderboard:focus-within{
  opacity:1!important;pointer-events:auto!important;
  transform:translateY(0) scale(1)!important;
}
.room-leaderboard-head{font-size:clamp(6px,.43vw,8px)!important}
.room-leaderboard .leaderboard-list li{font-size:clamp(7px,.46vw,9px)!important;min-height:13px!important}
.content-hub{content-visibility:auto;contain-intrinsic-size:900px}
button,.tv-panel{touch-action:manipulation}

@media (max-width:1100px) and (min-width:761px){
  .room-heading{left:1.7%!important;top:1.5%!important;max-width:270px!important;padding:6px 9px 7px!important}
  .room-heading h1{font-size:clamp(12px,1.55vw,17px)!important}
  .hotspot.arcade-trigger{left:53.1%!important;top:28.5%!important;min-width:104px!important}
  .room-leaderboard{left:53.1%!important;top:17.6%!important;width:146px!important}
}
@media (max-width:760px){
  .room-heading{left:10px!important;right:auto!important;top:8px!important;width:auto!important;max-width:calc(100% - 20px)!important;padding:6px 9px!important}
  .room-heading h1{font-size:15px!important;white-space:normal!important}
}
@media (prefers-reduced-motion:reduce){
  .room-heading,.room-leaderboard{transition:none!important}
}

/* =========================
   GamingBroject V11
   - centered hero masthead directly below navigation
   - restrained 1980s arcade-sign power flicker
   - richer social-story cards
   - two-game responsive cabinet
   ========================= */
.room-heading{
  left:50%!important;right:auto!important;top:1.15%!important;translate:-50% 0!important;
  width:auto!important;max-width:min(430px,48%)!important;padding:7px 16px 8px!important;
  border:1px solid rgba(255,41,72,.42)!important;border-top:2px solid rgba(255,70,96,.90)!important;
  border-left:1px solid rgba(255,41,72,.42)!important;border-radius:0 0 12px 12px!important;
  background:linear-gradient(180deg,rgba(5,1,9,.74),rgba(5,1,9,.32))!important;
  box-shadow:0 10px 28px rgba(0,0,0,.24),0 0 18px rgba(255,41,72,.13)!important;
  text-align:center!important;
}
.room-heading h1{font-size:clamp(14px,1.25vw,22px)!important;letter-spacing:.06em!important;text-align:center!important}

.arcade-sign{--sign-color:var(--tab-color,var(--hot,var(--arcade-red)));isolation:isolate;animation:gbArcadeSign 9.6s steps(1,end) infinite;animation-delay:var(--sign-delay,0s)}
.arcade-sign::before{content:"";position:absolute;z-index:-1;inset:2px;border-radius:inherit;pointer-events:none;opacity:.33;background:repeating-linear-gradient(to bottom,transparent 0 3px,color-mix(in srgb,var(--sign-color) 10%,transparent) 4px);box-shadow:inset 0 0 12px color-mix(in srgb,var(--sign-color) 13%,transparent)}
.nav-btn.arcade-sign{--sign-delay:-1.1s;text-shadow:0 0 8px color-mix(in srgb,var(--sign-color) 65%,transparent)}
.nav-btn.arcade-sign:nth-child(2){--sign-delay:-3.9s}.nav-btn.arcade-sign:nth-child(3){--sign-delay:-6.2s}.nav-btn.arcade-sign:nth-child(4){--sign-delay:-2.4s}.nav-btn.arcade-sign:nth-child(5){--sign-delay:-7.3s}.nav-btn.arcade-sign:nth-child(6){--sign-delay:-5.1s}
.hotspot.arcade-sign,.tv-floating-label.arcade-sign{color:#fff;text-shadow:0 0 6px #fff,0 0 15px var(--sign-color),0 0 28px var(--sign-color)!important}
.hotspot.arcade-sign:hover,.hotspot.arcade-sign:focus-visible,.tv-panel:hover .arcade-sign,.tv-panel:focus-visible .arcade-sign,.arcade-sign.active{animation-play-state:paused;filter:brightness(1.13) saturate(1.15)}
@keyframes gbArcadeSign{
  0%,2.8%,3.4%,4.7%,38%,39.1%,40.2%,72%,73%,100%{opacity:1;filter:brightness(1) saturate(1)}
  3%,4.1%,38.4%,39.7%,72.3%{opacity:.38;filter:brightness(.46) saturate(.55)}
  3.2%,4.4%,38.7%,72.6%{opacity:.82;filter:brightness(.82) saturate(.82)}
}

/* Editorial cards now read like compact GamingBroject social posters. */
@media (min-width:1101px){.article-card,.article-card:first-child{grid-column:span 4}}
.article-card{min-height:365px;background:linear-gradient(155deg,rgba(255,255,255,.075),rgba(255,255,255,.018));transform:translateZ(0)}
.article-card:first-child .card-art,.card-art{min-height:168px}
.card-art{isolation:isolate;background:radial-gradient(circle at 78% 22%,color-mix(in srgb,var(--card-accent,var(--accent)) 52%,transparent),transparent 34%),radial-gradient(circle at 18% 88%,color-mix(in srgb,var(--card-accent-2,var(--accent)) 25%,transparent),transparent 45%),linear-gradient(145deg,#171020,#06040b)}
.card-art::before{z-index:-1;right:3%;bottom:-13%;font-size:clamp(88px,9vw,145px);color:color-mix(in srgb,var(--card-accent,var(--accent)) 12%,transparent)}
.card-art::after{z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.34),transparent 50%),repeating-linear-gradient(to bottom,transparent 0 4px,rgba(255,255,255,.035) 5px),repeating-linear-gradient(120deg,transparent 0 19px,rgba(255,255,255,.025) 20px)}
.social-poster-mark{position:absolute;z-index:2;left:18px;right:18px;bottom:14px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.social-poster-code{font:1000 clamp(35px,4vw,64px)/.78 var(--brand-font);letter-spacing:-.045em;color:#fff;-webkit-text-stroke:.55px var(--card-accent,var(--accent));text-shadow:3px 0 var(--card-accent,var(--accent)),-2px 0 color-mix(in srgb,var(--card-accent-2,var(--accent)) 80%,#fff),0 0 22px var(--card-accent,var(--accent));transition:transform .26s ease}
.social-poster-origin{padding:5px 7px;border:1px solid color-mix(in srgb,var(--card-accent,var(--accent)) 65%,transparent);border-radius:6px;background:rgba(2,1,5,.64);font:900 8px/1 "Courier New",monospace;letter-spacing:.13em;color:#fff;white-space:nowrap}
.article-card:hover .social-poster-code{transform:translateY(-5px) skewX(-4deg)}
.card-meta{display:flex;align-items:center;gap:7px}.card-meta::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent)}
.card-title{font-size:clamp(21px,1.65vw,29px)}
.card-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}

/* Arcade cartridge selector. */
.arcade-select-overlay{position:fixed;inset:0;z-index:11980;display:grid;place-items:center;padding:18px;background:rgba(2,0,5,.94);backdrop-filter:blur(16px);font-family:"Courier New",monospace;overflow:auto}
.arcade-select-overlay.hidden{display:none!important}
.arcade-select-card{width:min(780px,100%);max-height:calc(100svh - 30px);overflow:auto;padding:27px;border:1px solid rgba(255,48,79,.76);border-radius:19px;background:radial-gradient(circle at 50% 0,rgba(255,48,79,.11),transparent 42%),linear-gradient(145deg,rgba(16,2,10,.99),rgba(4,1,8,.99));box-shadow:0 0 65px rgba(255,48,79,.38),inset 0 0 55px rgba(255,48,79,.05)}
.arcade-select-card h2{margin:8px 0 7px;text-align:center;color:#fff;font-size:clamp(34px,6vw,58px);letter-spacing:.055em;text-shadow:2px 0 #ff304f,-2px 0 #21eaff,0 0 24px rgba(255,48,79,.75)}
.arcade-select-copy{max-width:600px;margin:0 auto 20px;text-align:center;color:#aea6b3;font-size:12px;line-height:1.55}
.arcade-game-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.arcade-game-choice{appearance:none;display:grid;grid-template-columns:118px minmax(0,1fr);gap:14px;align-items:center;min-height:188px;padding:15px;border:1px solid rgba(255,255,255,.16);border-radius:15px;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.018));text-align:left;transition:.24s ease;overflow:hidden}
.arcade-game-choice:hover,.arcade-game-choice:focus-visible{transform:translateY(-6px);border-color:var(--choice-color);box-shadow:0 20px 35px rgba(0,0,0,.35),0 0 28px color-mix(in srgb,var(--choice-color) 40%,transparent)}
.shooter-choice{--choice-color:#ff304f}.snake-choice{--choice-color:#9dff54}
.game-choice-art{position:relative;display:block;width:112px;height:145px;border:1px solid color-mix(in srgb,var(--choice-color) 70%,transparent);border-radius:11px;background:linear-gradient(180deg,rgba(3,2,8,.96),rgba(10,4,16,.96));box-shadow:inset 0 0 24px rgba(0,0,0,.75),0 0 20px color-mix(in srgb,var(--choice-color) 24%,transparent);overflow:hidden}
.game-choice-art::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to bottom,transparent 0 3px,rgba(255,255,255,.045) 4px)}
.game-choice-ship::after{content:"";position:absolute;left:50%;bottom:18px;translate:-50% 0;width:54px;height:14px;background:#ff304f;box-shadow:0 0 17px #ff304f;clip-path:polygon(0 70%,35% 70%,43% 0,57% 0,65% 70%,100% 70%,88% 100%,12% 100%)}
.game-choice-ship i{position:absolute;width:18px;height:13px;background:#21eaff;box-shadow:0 0 12px #21eaff;clip-path:polygon(15% 0,85% 0,100% 60%,72% 60%,72% 100%,28% 100%,28% 60%,0 60%)}
.game-choice-ship i:nth-child(1){left:15px;top:24px}.game-choice-ship i:nth-child(2){left:47px;top:42px}.game-choice-ship i:nth-child(3){right:15px;top:24px}
.game-choice-snake i{position:absolute;width:20px;height:20px;border-radius:5px;background:#9dff54;box-shadow:0 0 13px #9dff54}
.game-choice-snake i:nth-child(1){left:16px;top:25px}.game-choice-snake i:nth-child(2){left:38px;top:25px}.game-choice-snake i:nth-child(3){left:60px;top:25px}.game-choice-snake i:nth-child(4){left:60px;top:47px}.game-choice-snake i:nth-child(5){left:60px;top:69px;background:#21eaff;box-shadow:0 0 13px #21eaff}
.game-choice-snake::after{content:"";position:absolute;right:20px;bottom:23px;width:15px;height:15px;border-radius:50%;background:#ff55e8;box-shadow:0 0 15px #ff55e8}
.game-choice-copy{display:flex;flex-direction:column;gap:8px;min-width:0}.game-choice-copy small{color:var(--choice-color);font-weight:900;letter-spacing:.17em}.game-choice-copy strong{font-size:clamp(19px,2.1vw,28px);line-height:.92;color:#fff;text-shadow:0 0 14px color-mix(in srgb,var(--choice-color) 65%,transparent)}.game-choice-copy span{color:#aaa3af;font-size:11px;line-height:1.45}.game-choice-copy em{color:#fff;font-size:9px;font-style:normal;letter-spacing:.08em}.game-choice-copy b{color:var(--choice-color)}
.arcade-select-cancel{display:block;margin:17px auto 0;padding:10px 14px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(255,255,255,.035);color:#d7d2dc;font:900 10px/1 "Courier New",monospace;letter-spacing:.13em}
.arcade-select-cancel:hover{border-color:#fff;color:#fff}

/* Keep both 4:5 game canvases inside desktop and mobile viewports. */
.arcade-overlay{padding:10px}
.arcade-shell{width:min(620px,100%);max-height:calc(100svh - 20px);gap:7px}
.arcade-frame{width:min(560px,100%,calc((100svh - 150px)*.8));max-width:560px}
.arcade-hud{width:min(600px,100%)}
.arcade-loadout{font-size:9px}
.snake-overlay{--arcade-red:#9dff54}.snake-frame{border-color:rgba(157,255,84,.76);box-shadow:0 0 42px rgba(85,255,64,.34)}
.snake-frame::after{opacity:.16}.snake-pattern{border-color:rgba(157,255,84,.28);background:rgba(75,255,40,.045);color:#c9ffaa}.snake-power-toast{border-color:#21eaff;color:#d9fbff;box-shadow:0 0 25px rgba(33,234,255,.46)}

@media (max-width:1100px) and (min-width:761px){
  .room-heading{left:50%!important;top:1.1%!important;max-width:min(390px,46%)!important;padding:6px 12px 7px!important}
  .room-heading h1{font-size:clamp(13px,1.55vw,18px)!important}
  .article-card,.article-card:first-child{grid-column:span 6}
}
@media (max-width:760px){
  .room-heading{left:50%!important;right:auto!important;top:8px!important;translate:-50% 0!important;width:max-content!important;max-width:calc(100% - 24px)!important;padding:6px 11px 7px!important}
  .room-heading h1{font-size:15px!important;white-space:nowrap!important}
  .hotspot.arcade-trigger{left:75%!important;top:37.2%!important}
  .arcade-select-overlay,.arcade-name-overlay{padding:10px}
  .arcade-select-card{padding:19px 14px}.arcade-select-card h2{font-size:34px}.arcade-select-copy{font-size:10px;margin-bottom:14px}
  .arcade-game-grid{grid-template-columns:1fr;gap:10px}.arcade-game-choice{grid-template-columns:88px minmax(0,1fr);min-height:132px;padding:10px}.game-choice-art{width:82px;height:108px}.game-choice-copy{gap:5px}.game-choice-copy strong{font-size:20px}.game-choice-copy span{font-size:10px}
  .game-choice-ship::after{width:43px;bottom:13px}.game-choice-ship i{width:15px;height:11px}.game-choice-ship i:nth-child(1){left:9px;top:18px}.game-choice-ship i:nth-child(2){left:33px;top:34px}.game-choice-ship i:nth-child(3){right:9px;top:18px}
  .game-choice-snake i{width:16px;height:16px}.game-choice-snake i:nth-child(1){left:9px;top:20px}.game-choice-snake i:nth-child(2){left:27px;top:20px}.game-choice-snake i:nth-child(3){left:45px;top:20px}.game-choice-snake i:nth-child(4){left:45px;top:38px}.game-choice-snake i:nth-child(5){left:45px;top:56px}.game-choice-snake::after{right:12px;bottom:15px}
  .arcade-frame{width:min(100%,calc((100svh - 188px)*.8));max-width:480px}
  .arcade-shell{gap:5px}.arcade-pattern{font-size:7px}.arcade-help{font-size:9px}
  .arcade-loadout{font-size:7px}
  .article-card,.article-card:first-child{grid-column:1;min-height:0}.social-poster-code{font-size:43px}
}
@media (max-width:390px){
  .room-heading h1{font-size:13px!important}
  .arcade-select-card h2{font-size:29px}.arcade-game-choice{grid-template-columns:72px minmax(0,1fr)}.game-choice-art{width:68px;height:96px}.game-choice-copy strong{font-size:17px}.game-choice-copy span{font-size:9px}
}
@media (prefers-reduced-motion:reduce){
  .arcade-sign{animation:none!important;filter:none!important;opacity:1!important}
  .arcade-game-choice,.social-poster-code{transition:none!important}
}



/* V12 — real, source-matched editorial photography. */
.card-art.real-photo{min-height:196px;background:#06040a;isolation:isolate}
.article-card:first-child .card-art.real-photo{min-height:244px}
.card-art.real-photo::before{display:none}
.card-art.real-photo::after{z-index:1;background:linear-gradient(180deg,rgba(2,1,5,.08) 0,rgba(2,1,5,.02) 42%,rgba(2,1,5,.92) 100%),linear-gradient(90deg,rgba(2,1,5,.42),transparent 46%),repeating-linear-gradient(to bottom,transparent 0 4px,rgba(255,255,255,.025) 5px)}
.card-photo{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.96) contrast(1.04) brightness(.88);transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease}
.article-card:hover .card-photo{transform:scale(1.055);filter:saturate(1.08) contrast(1.05) brightness(.96)}
.card-art.real-photo .card-badge,.card-art.real-photo .video-play-mark,.card-art.real-photo .social-poster-mark{z-index:3}
.card-art.real-photo .social-poster-code{font-size:clamp(29px,3.2vw,50px);max-width:72%;line-height:.84;text-wrap:balance}
.card-art.real-photo .social-poster-origin{max-width:42%;overflow:hidden;text-overflow:ellipsis;background:rgba(2,1,5,.76);backdrop-filter:blur(8px)}
.card-art.image-failed .card-photo{display:none}.card-art.image-failed::before{display:block}
.article-card{min-height:430px}.article-card:first-child{min-height:470px}
.card-meta{min-height:24px}.card-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.dialog-body{padding:25px}
.dialog-media{position:relative;margin:-25px -25px 24px;overflow:hidden;border-bottom:1px solid color-mix(in srgb,var(--dialog-accent) 45%,transparent);background:#050208}
.dialog-media[hidden]{display:none}
.dialog-media img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center;filter:saturate(1.02) contrast(1.03)}
.dialog-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 55%,rgba(2,1,5,.74))}
.dialog-media figcaption{position:absolute;z-index:2;right:14px;bottom:11px;max-width:70%;padding:6px 8px;border:1px solid rgba(255,255,255,.16);border-radius:7px;background:rgba(2,1,5,.76);color:#d7d1df;font:800 8px/1.25 "Courier New",monospace;letter-spacing:.09em;text-align:right;text-transform:uppercase;backdrop-filter:blur(8px)}
.dialog-media figcaption a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.dialog-summary{margin-bottom:23px;font-size:clamp(18px,2.2vw,22px)}
.dialog-copy{display:grid;gap:20px;color:#aaa4b3;line-height:1.75}
.article-copy-section{padding-top:19px;border-top:1px solid rgba(255,255,255,.10)}
.article-copy-section:first-child{padding-top:0;border-top:0}
.article-copy-section h4{margin:0 0 8px;color:#fff;font-size:17px;letter-spacing:-.01em}
.article-copy-section p{margin:0}
.article-fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.article-fact{min-width:0;padding:13px;border:1px solid rgba(255,255,255,.11);border-radius:11px;background:rgba(255,255,255,.035)}
.article-fact span{display:block;color:var(--dialog-accent);font-size:8px;font-weight:1000;letter-spacing:.14em;text-transform:uppercase}
.article-fact strong{display:block;margin-top:6px;color:#f1edf5;font-size:11px;line-height:1.35;overflow-wrap:anywhere}
.article-verification{display:flex;align-items:center;gap:8px;color:#b9b2c1;font:800 9px/1.4 "Courier New",monospace;letter-spacing:.08em;text-transform:uppercase}
.article-verification::before{content:"✓";display:grid;place-items:center;width:21px;height:21px;flex:0 0 auto;border:1px solid var(--dialog-accent);border-radius:50%;color:var(--dialog-accent);box-shadow:0 0 14px color-mix(in srgb,var(--dialog-accent) 35%,transparent)}
@media (max-width:760px){
  .card-art.real-photo,.article-card:first-child .card-art.real-photo{min-height:205px}.article-card,.article-card:first-child{min-height:0}
  .card-art.real-photo .social-poster-code{font-size:34px}.dialog-media{margin:-25px -25px 20px}.dialog-media img{aspect-ratio:4/3}
  .article-fact-grid{grid-template-columns:1fr}.dialog-media figcaption{max-width:84%;font-size:7px}
}
@media (prefers-reduced-motion:reduce){.card-photo{transition:none!important}.article-card:hover .card-photo{transform:none}}


/* V13 — faster boot, monthly arcade boards, immersive stories and privacy controls. */
.sound-toggle{position:relative;min-width:44px;color:#21eaff}
.sound-toggle .sound-icon{display:grid;place-items:center;width:100%;height:100%}
.sound-toggle .sound-icon svg{width:21px;height:21px;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sound-toggle .sound-wave,.sound-toggle .sound-mute-line{transition:opacity .18s ease,transform .18s ease}
.sound-toggle .sound-mute-line{opacity:0;transform:scale(.7);transform-origin:center}
.sound-toggle[aria-pressed="true"]{color:#ff7087;border-color:rgba(255,48,79,.55);background:rgba(255,48,79,.09)}
.sound-toggle[aria-pressed="true"] .sound-wave{opacity:0;transform:translateX(-2px)}
.sound-toggle[aria-pressed="true"] .sound-mute-line{opacity:1;transform:scale(1)}

/* One editorial story per viewport on desktop. */
.content-hub{padding-top:clamp(52px,7vw,90px);content-visibility:visible}
.cards{grid-template-columns:1fr!important;gap:clamp(34px,8vh,88px)!important}
.article-card,.article-card:first-child{grid-column:1!important;min-height:calc(100svh - 96px)!important;border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(7,3,12,.94));scroll-margin-top:86px;cursor:pointer}
.article-card:hover{transform:none;border-color:var(--accent);box-shadow:0 28px 70px rgba(0,0,0,.42),0 0 35px color-mix(in srgb,var(--accent) 22%,transparent)}
.article-card .card-body{justify-content:center;padding:clamp(30px,5vw,72px)}
.article-card .card-title{max-width:820px;margin:15px 0 18px;font-size:clamp(34px,4.7vw,74px);line-height:.96;letter-spacing:-.045em;text-wrap:balance}
.article-card .card-meta{font-size:clamp(10px,.85vw,13px);line-height:1.45}
.article-card .card-summary{display:block;max-width:680px;color:#c3bdca;font-size:clamp(16px,1.25vw,21px);line-height:1.65;-webkit-line-clamp:unset}
.article-card .card-actions{margin-top:34px;padding-top:0}
.article-card .read-btn,.article-card .source-btn{padding:14px 18px;font-size:10px}
.article-card .card-art,.article-card:first-child .card-art,.article-card .card-art.real-photo,.article-card:first-child .card-art.real-photo{min-height:100%!important}
.article-card .card-photo{filter:saturate(1.02) contrast(1.05) brightness(.84)}
.article-card:hover .card-photo{transform:scale(1.025)}
.article-card .card-art.real-photo .social-poster-code{font-size:clamp(44px,6vw,92px);max-width:76%}
@media (min-width:901px){
  .article-card,.article-card:first-child{display:grid!important;grid-template-columns:minmax(0,1.22fr) minmax(360px,.78fr)}
  .article-card>.card-art{grid-column:1;grid-row:1}
  .article-card>.card-body{grid-column:2;grid-row:1}
  .article-card:nth-child(even){grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr)}
  .article-card:nth-child(even)>.card-art{grid-column:2}
  .article-card:nth-child(even)>.card-body{grid-column:1}
}

/* Full-screen reading view inspired by modern editorial pages. */
dialog#articleDialog{position:fixed!important;inset:0!important;width:100vw!important;height:100svh!important;max-width:none!important;max-height:none!important;margin:0!important;border-radius:0!important}
dialog#articleDialog::backdrop{background:rgba(0,0,0,.92);backdrop-filter:blur(12px)}
dialog#articleDialog .dialog-shell{height:100svh;max-height:none;border:0;border-radius:0;background:linear-gradient(180deg,#050208 0,#0b0610 58%,#040206 100%);box-shadow:none}
dialog#articleDialog .dialog-head{position:sticky;min-height:132px;padding:clamp(20px,3vw,38px) clamp(22px,6vw,100px);background:rgba(4,2,8,.9)}
dialog#articleDialog .dialog-head>div{max-width:1120px}
dialog#articleDialog .dialog-head::after{content:"";position:absolute;left:0;bottom:-1px;width:calc(var(--read-progress,0) * 1%);height:3px;background:var(--dialog-accent);box-shadow:0 0 16px var(--dialog-accent);transition:width .08s linear}
dialog#articleDialog .dialog-title{font-size:clamp(38px,6.2vw,92px);line-height:.93;text-wrap:balance}
dialog#articleDialog .close-btn{width:50px;height:50px;border-radius:50%;background:rgba(0,0,0,.42)}
dialog#articleDialog .dialog-body{padding:0 0 clamp(72px,10vw,140px)}
dialog#articleDialog .dialog-media{height:min(72svh,850px);margin:0 0 clamp(38px,6vw,82px);border-bottom:1px solid color-mix(in srgb,var(--dialog-accent) 55%,transparent)}
dialog#articleDialog .dialog-media img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;filter:saturate(1.04) contrast(1.04) brightness(.88)}
dialog#articleDialog .dialog-media::after{background:linear-gradient(180deg,transparent 45%,rgba(3,1,6,.78))}
dialog#articleDialog .dialog-media figcaption{right:clamp(18px,5vw,80px);bottom:18px}
dialog#articleDialog .dialog-meta,dialog#articleDialog .dialog-summary,dialog#articleDialog .dialog-copy,dialog#articleDialog .dialog-actions{width:min(900px,calc(100% - 44px));margin-left:auto;margin-right:auto}
dialog#articleDialog .dialog-summary{margin-top:18px;margin-bottom:44px;color:#e0dbe5;font-size:clamp(22px,2.5vw,34px);line-height:1.48;letter-spacing:-.018em}
dialog#articleDialog .dialog-copy{gap:34px;color:#c2bbc8;font-size:clamp(17px,1.25vw,20px);line-height:1.88}
dialog#articleDialog .article-copy-section{padding-top:30px}
dialog#articleDialog .article-copy-section h4{margin-bottom:13px;color:#fff;font-size:clamp(21px,2vw,30px)}
dialog#articleDialog .article-fact{padding:18px}
dialog#articleDialog .article-fact span{font-size:9px}
dialog#articleDialog .article-fact strong{font-size:13px}
dialog#articleDialog .dialog-actions{margin-top:42px}

/* Clear monthly arcade scores in the room, name prompt and both HUDs. */
.room-leaderboard{opacity:1!important;pointer-events:auto!important;width:clamp(238px,16vw,304px)!important;padding:11px 13px!important;transform:translateX(0) scale(1)!important;box-shadow:0 0 27px rgba(255,36,70,.48),inset 0 0 18px rgba(255,36,70,.09)!important}
.room-leaderboard-head{padding-bottom:7px!important;font-size:clamp(8px,.58vw,11px)!important;letter-spacing:.1em!important}
.room-leaderboard .leaderboard-list{margin-top:6px!important;gap:4px!important}
.room-leaderboard .leaderboard-list li{min-height:19px!important;font-size:clamp(9px,.65vw,12px)!important;gap:7px!important}
.leader-game-chip{display:inline-block;margin-right:5px;padding:2px 4px;border:1px solid rgba(255,82,107,.45);border-radius:4px;color:#ff8294;font-size:.72em;font-weight:1000;letter-spacing:.08em}
.arcade-name-card{width:min(660px,calc(100vw - 26px))}
.arcade-name-copy{font-size:14px;line-height:1.55}
.arcade-name-board{padding:15px 17px;border-color:rgba(255,48,79,.46);box-shadow:inset 0 0 25px rgba(255,48,79,.06)}
.arcade-name-board>span{font-size:12px;line-height:1.45}
.arcade-name-board .leaderboard-list{gap:5px}
.arcade-name-board .leaderboard-list li{min-height:26px!important;font-size:clamp(13px,1.45vw,16px)!important;gap:9px!important}
.arcade-name-board .leader-score{font-size:.92em;font-weight:900}
.arcade-name-board{position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(255,48,79,.07),rgba(0,0,0,.48))}
.arcade-name-board::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 0 38%,rgba(255,255,255,.045) 48%,transparent 58%);translate:-115% 0;animation:arcadeTopFiveSweep 7s ease-in-out infinite}
.arcade-name-board>span{padding-bottom:10px;border-bottom:1px solid rgba(255,48,79,.28);color:#fff;text-shadow:0 0 13px rgba(255,48,79,.8)}
.arcade-name-board .leaderboard-list li{grid-template-columns:30px minmax(0,1fr) auto!important;padding:6px 8px;border:1px solid rgba(255,255,255,.055);border-radius:7px;background:rgba(255,255,255,.025)}
.arcade-name-board .leaderboard-list li::before{display:grid;place-items:center;width:22px;height:22px;border:1px solid rgba(255,82,107,.42);border-radius:50%;color:#ff8294;background:rgba(255,48,79,.08)}
.arcade-name-board .leaderboard-list li:nth-child(1)::before{border-color:#ffd35a;color:#ffd35a;background:rgba(255,211,90,.09);box-shadow:0 0 12px rgba(255,211,90,.25)}
.arcade-name-board .leaderboard-list li:nth-child(2)::before{border-color:#d8dce5;color:#f4f6fb;background:rgba(216,220,229,.07)}
.arcade-name-board .leaderboard-list li:nth-child(3)::before{border-color:#cf8653;color:#e8a06e;background:rgba(207,134,83,.07)}
.arcade-name-board .leaderboard-list .leader-name{font-weight:900;letter-spacing:.05em}
.arcade-name-board .leaderboard-list .leader-score{color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 0 9px rgba(255,48,79,.6)}
.arcade-name-board .leaderboard-list .leader-empty{color:#756f7a;font-size:.84em;letter-spacing:.04em}
@keyframes arcadeTopFiveSweep{0%,72%{translate:-115% 0}88%,100%{translate:115% 0}}
.arcade-hud{font-size:clamp(11px,1.05vw,14px)!important}
.arcade-hud .arcade-user{min-width:92px;color:#fff!important;font-weight:1000;text-shadow:0 0 11px #ff304f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.arcade-message-rank{font-size:clamp(12px,1.8vw,17px)!important;font-weight:1000;letter-spacing:.08em}

/* CSS-native 80s deck/glitch treatment; no third-party GIF or tracking request. */
.v13-retro-sign{position:relative!important;isolation:isolate;overflow:hidden!important;background:linear-gradient(145deg,rgba(5,2,11,.94),rgba(18,5,28,.9))!important;text-shadow:-1px 0 rgba(255,44,210,.85),1px 0 rgba(31,238,255,.9),0 0 10px var(--sign-color,var(--tab-color,#21eaff))!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--sign-color,var(--tab-color,#21eaff)) 70%,transparent),0 0 18px color-mix(in srgb,var(--sign-color,var(--tab-color,#21eaff)) 40%,transparent),inset 0 0 16px rgba(142,45,255,.13)!important;animation:v13SignFlicker 6.2s steps(1,end) infinite!important}
.v13-retro-grid{position:absolute;z-index:-1;inset:-35%;pointer-events:none;opacity:.26;background:repeating-linear-gradient(90deg,transparent 0 15px,rgba(28,230,255,.34) 16px 17px),repeating-linear-gradient(0deg,transparent 0 12px,rgba(255,43,196,.32) 13px 14px);transform:perspective(180px) rotateX(54deg) translateY(10%);transform-origin:center bottom;animation:v13GridDeck 4.8s linear infinite}
.v13-retro-grid::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 0 43%,rgba(255,255,255,.22) 49%,transparent 53%);animation:v13ScanDeck 2.7s linear infinite}
.v13-retro-sign:hover,.v13-retro-sign.active{filter:saturate(1.35) brightness(1.12);text-shadow:-2px 0 #ff2bd0,2px 0 #22edff,0 0 15px var(--sign-color,var(--tab-color,#21eaff))!important}
@keyframes v13GridDeck{from{background-position:0 0,0 0;transform:perspective(180px) rotateX(54deg) translateY(8%)}to{background-position:32px 0,0 28px;transform:perspective(180px) rotateX(54deg) translateY(18%)}}
@keyframes v13ScanDeck{from{translate:0 -70%}to{translate:0 70%}}
@keyframes v13SignFlicker{0%,7%,9%,43%,45%,78%,80%,100%{opacity:1;translate:0 0}8%,44%{opacity:.72;translate:1px 0}79%{opacity:.88;translate:-1px 0}}

/* Compact, future-ready EU privacy controls. */
.consent-banner[hidden]{display:none!important}
.consent-banner{position:fixed;z-index:15000;left:clamp(12px,3vw,42px);right:clamp(12px,3vw,42px);bottom:clamp(12px,2vw,28px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;max-width:1240px;margin:auto;padding:20px 22px;border:1px solid rgba(33,234,255,.48);border-radius:18px;background:rgba(6,3,11,.96);box-shadow:0 24px 80px rgba(0,0,0,.75),0 0 27px rgba(33,234,255,.12);backdrop-filter:blur(18px)}
.consent-copy h2{margin:0 0 7px;color:#fff;font-size:20px}
.consent-copy p{max-width:840px;margin:0;color:#bbb4c3;font-size:13px;line-height:1.55}
.consent-actions{display:grid;grid-template-columns:repeat(2,minmax(145px,1fr));gap:9px}
.consent-btn{appearance:none;min-height:42px;padding:10px 13px;border-radius:9px;text-transform:uppercase;font:1000 9px/1.2 Arial,sans-serif;letter-spacing:.11em}
.consent-btn.accept,.consent-btn.reject{border:1px solid #21eaff;background:rgba(33,234,255,.09);color:#fff}
.consent-btn.reject{border-color:#ff5c77;background:rgba(255,48,79,.09)}
.consent-btn.manage{grid-column:1/-1;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.045);color:#ddd7e4}
.consent-btn:hover,.consent-btn:focus-visible{background:#fff;color:#06030a}
dialog.consent-dialog{width:min(720px,calc(100vw - 28px));max-height:calc(100svh - 28px);border-radius:20px}
dialog.consent-dialog .dialog-shell{padding:0}
.consent-settings-body{display:grid;gap:14px;padding:22px}
.consent-note{margin:0 0 4px;color:#bcb5c4;font-size:13px;line-height:1.6}
.consent-setting{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px;border:1px solid rgba(255,255,255,.11);border-radius:12px;background:rgba(255,255,255,.035)}
.consent-setting strong{display:block;color:#fff;font-size:14px}
.consent-setting small{display:block;margin-top:5px;color:#9f98a8;line-height:1.45}
.consent-setting input{width:22px;height:22px;accent-color:#21eaff}
.consent-setting input:disabled{opacity:.6}
.consent-dialog-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:5px}
.footer-legal{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px}
.footer-legal button{appearance:none;padding:9px 11px;border:1px solid rgba(33,234,255,.42);border-radius:8px;background:rgba(33,234,255,.06);color:#dffbff;text-transform:uppercase;font-size:8px;font-weight:1000;letter-spacing:.12em}
.footer-legal span{color:#77717f;font-size:10px}

@media (max-width:900px){
  .article-card,.article-card:first-child{display:flex!important;min-height:calc(100svh - 82px)!important}
  .article-card .card-art,.article-card:first-child .card-art,.article-card .card-art.real-photo,.article-card:first-child .card-art.real-photo{min-height:min(49svh,520px)!important}
  .article-card .card-body{padding:clamp(24px,6vw,42px)}
  .article-card .card-title{font-size:clamp(30px,7vw,54px)}
  dialog#articleDialog .dialog-head{min-height:106px;padding:18px 20px}
  dialog#articleDialog .dialog-title{font-size:clamp(31px,8vw,56px)}
  dialog#articleDialog .dialog-media{height:48svh;margin-bottom:34px}
  .consent-banner{grid-template-columns:1fr;gap:14px}
  .consent-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
  .consent-btn.manage{grid-column:auto}
}
@media (max-width:620px){
  .sound-toggle{min-width:40px}
  .content-hub{padding-left:12px;padding-right:12px}
  .cards{gap:28px!important}
  .article-card,.article-card:first-child{min-height:calc(100svh - 74px)!important;border-radius:16px}
  .article-card .card-art,.article-card:first-child .card-art,.article-card .card-art.real-photo,.article-card:first-child .card-art.real-photo{min-height:42svh!important}
  .article-card .card-body{padding:24px 20px 26px}
  .article-card .card-title{font-size:clamp(28px,10vw,42px)}
  .article-card .card-summary{font-size:15px;line-height:1.55}
  .article-card .card-actions{margin-top:24px;gap:8px}
  .article-card .read-btn,.article-card .source-btn{padding:12px 11px;font-size:8px}
  dialog#articleDialog .dialog-head{min-height:92px;padding:15px 14px}
  dialog#articleDialog .dialog-kicker{font-size:8px}
  dialog#articleDialog .dialog-title{font-size:clamp(27px,8.8vw,42px)}
  dialog#articleDialog .close-btn{width:42px;height:42px}
  dialog#articleDialog .dialog-media{height:39svh;margin-bottom:28px}
  dialog#articleDialog .dialog-media figcaption{right:10px;bottom:8px;max-width:86%}
  dialog#articleDialog .dialog-meta,dialog#articleDialog .dialog-summary,dialog#articleDialog .dialog-copy,dialog#articleDialog .dialog-actions{width:calc(100% - 30px)}
  dialog#articleDialog .dialog-summary{font-size:21px;margin-bottom:30px}
  dialog#articleDialog .dialog-copy{font-size:16px;line-height:1.75}
  .room-leaderboard{width:clamp(195px,58vw,242px)!important;padding:8px 10px!important}
  .room-leaderboard-head{font-size:8px!important}
  .room-leaderboard .leaderboard-list li{font-size:9px!important;min-height:17px!important}
  .arcade-name-board .leaderboard-list li{font-size:13px!important}
  .arcade-hud{font-size:10px!important}
  .arcade-hud .arcade-user{min-width:64px}
  .consent-banner{left:8px;right:8px;bottom:8px;max-height:calc(100svh - 16px);overflow:auto;padding:16px;border-radius:14px}
  .consent-copy h2{font-size:17px}.consent-copy p{font-size:12px}
  .consent-actions{grid-template-columns:1fr 1fr}
  .consent-btn.manage{grid-column:1/-1}
  .consent-dialog-actions{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .v13-retro-sign,.v13-retro-grid,.v13-retro-grid::after{animation:none!important}
  .article-card,.article-card .card-photo{transition:none!important}
}
