/* Console library: shared launcher logos, restrained amber and carbon panels. */
:root { --library-accent:#f6bb62; --library-ink:#eeedf0; --library-muted:#a9adb5; --library-line:#33363e; }
body.og-games-portal-v2 { --nx-void:#101217; --nx-glass2:#1b1e25; --nx-stroke:#33363e; --nx-cyan:#f6bb62; --nx-violet:#cc9351; --nx-magenta:#d1a468; --nx-txt:#eeedf0; --nx-txt2:#a9adb5; --nx-disp:Inter,system-ui,sans-serif; --nx-ui:Inter,system-ui,sans-serif; background:#101217; }
body.og-games-portal-v2 .nexus-aurora, body.og-games-portal-v2 .nexus-grid, body.og-games-portal-v2 .nexus-dust { display:none; }
body.og-games-portal-v2 .cyber-bg, body.og-games-portal-v2 .nexus-bg { background:radial-gradient(ellipse at 15% 0,#f6bb6210,transparent 50%),#101217; }
body.og-games-portal-v2 .glow-orb { display:none; }
body.og-games-portal-v2 .og-hero { padding-top:44px; padding-bottom:30px; background:transparent; }
body.og-games-portal-v2 .og-hero h1 { font:800 clamp(30px,4vw,52px)/1.15 Inter,system-ui,sans-serif; letter-spacing:-1.7px; color:#faf6ed !important; background:none !important; -webkit-text-fill-color:initial !important; text-shadow:none; text-transform:none; }
body.og-games-portal-v2 .og-hero h1 span { color:var(--library-accent); }
body.og-games-portal-v2 .og-hero .lead { font-size:15px; line-height:1.7; max-width:640px; color:var(--library-muted); }
body.og-games-portal-v2 .og-stat-num { font-family:Inter,system-ui,sans-serif; font-size:28px; color:var(--library-accent); text-shadow:none; }
body.og-games-portal-v2 .og-stat { background:#1b1e25; border:1px solid var(--library-line); min-width:105px; }
body.og-games-portal-v2 .ogp-library-status { border-color:var(--library-line); background:#1b1e25; }
body.og-games-portal-v2 .og-section-title { font:700 27px/1.3 Inter,system-ui,sans-serif; text-transform:none; color:#faf6ed; text-shadow:none; }
body.og-games-portal-v2 .og-section-title span { color:var(--library-accent); }
body.og-games-portal-v2 .og-hub-grid { grid-template-columns:repeat(auto-fit,minmax(225px,1fr)); gap:16px; }
body.og-games-portal-v2 .og-hub-card { display:flex; flex-direction:column; padding:0; gap:0; }
body.og-games-portal-v2 .og-hub-card .og-hub-info p { display:block; }
body.og-games-portal-v2 .og-hub-card .og-hub-info { margin-top:auto; }
body.og-games-portal-v2 .og-hub-card .og-hub-info h3 { font-size:17px; }
body.og-games-portal-v2 .top-navbar .nav-link { white-space:nowrap; font-size:12px; }
.og-library-menu { display:none; }
@media(max-width:1100px) {
  body.og-games-portal-v2 .top-navbar { gap:6px; padding-inline:12px; }
  body.og-games-portal-v2 .og-library-menu { display:grid; place-items:center; flex:0 0 34px; height:36px; background:#242830; color:var(--library-accent); border:1px solid var(--library-line); border-radius:8px; font-size:19px; cursor:pointer; }
  body.og-games-portal-v2 .top-navbar .nav-links { display:none !important; }
  body.og-games-portal-v2 .top-navbar.og-library-menu-open .nav-links { display:flex !important; flex-direction:column; align-items:stretch; position:absolute; top:calc(100% + 8px); right:8px; min-width:220px; padding:12px; background:#1b1e25; border:1px solid var(--library-line); border-radius:12px; box-shadow:0 18px 40px #0008; }
  body.og-games-portal-v2 .top-navbar.og-library-menu-open .nav-link { padding:12px; font-size:14px; }
}
body.og-games-portal-v2 .og-hub-card .og-hub-media { width:auto; height:128px; margin:0 20px; }
body.og-games-portal-v2 .og-hub-card .og-hub-media img { width:100%; height:100%; max-width:210px; max-height:88px; }
body .og-hub-grid, #consoleGrid { display:grid; grid-template-columns:repeat(auto-fit,minmax(225px,1fr)); gap:16px; }
body .og-hub-grid-section { max-width:1320px; margin-inline:auto; }
body .og-hub-card, #consoleGrid .ccard { position:relative; min-width:0; overflow:hidden; display:flex; flex-direction:column; border:1px solid var(--library-line); border-radius:16px; background:linear-gradient(145deg,#22242b,#13161b 70%); color:var(--library-ink); box-shadow:0 8px 24px #0003; text-decoration:none; transition:border-color .18s,transform .18s; }
body .og-hub-card:hover, #consoleGrid .ccard:hover { transform:translateY(-3px); border-color:var(--library-accent); box-shadow:0 8px 26px #0005; }
body .og-hub-card:focus-visible, #consoleGrid .ccard:focus-visible { outline:3px solid var(--library-accent); outline-offset:4px; }
body .og-hub-card::before, #consoleGrid .ccard::before { content:''; position:absolute; left:20px; top:0; width:40px; height:2px; background:var(--library-accent); }
body .og-hub-card .og-hub-media, #consoleGrid .clogo { display:flex; justify-content:center; align-items:center; height:128px; width:auto; margin:0 20px; padding:16px 6px; background:radial-gradient(ellipse,#ffffff09,transparent 75%); border-bottom:1px solid #ffffff0d; border-radius:0; }
body .og-hub-card .og-hub-media img, #consoleGrid .clogo img { width:100%; height:100%; max-height:88px; max-width:210px; object-fit:contain; filter:drop-shadow(0 3px 5px #0006); }
body .og-hub-card .og-hub-info { padding:18px 20px 20px; display:flex; flex-direction:column; align-items:flex-start; gap:8px; }
body .og-hub-card h3, #consoleGrid h3 { font:700 17px/1.3 Inter,system-ui,sans-serif; letter-spacing:0; margin:0; color:#faf6ed; }
body .og-hub-card p { color:var(--library-muted); font:400 12px/1.5 Inter,system-ui,sans-serif; margin:0; }
.og-library-eyebrow { display:flex; align-items:center; justify-content:space-between; padding:18px 20px 0; gap:8px; font:600 10px/1.4 Inter,system-ui,sans-serif; letter-spacing:1.2px; text-transform:uppercase; color:var(--library-muted); }
.og-library-mode { color:var(--library-accent); font-size:9px; letter-spacing:.6px; border:1px solid #f6bb622f; padding:4px 6px; border-radius:5px; }
body .og-hub-card .og-hub-count { display:flex; justify-content:space-between; width:100%; border-top:1px solid #ffffff0d; padding-top:12px; margin-top:3px; color:var(--library-accent); font-size:12px; font-weight:600; }
body .og-hub-card .og-hub-count::after { content:'↗'; font-size:17px; line-height:1; }
.og-library-intro { color:var(--library-muted); line-height:1.7; max-width:740px; margin:10px 0 24px; font-size:14px; }
.og-library-empty { padding:28px; border:1px dashed var(--library-line); background:#15181e; border-radius:14px; color:var(--library-muted); line-height:1.7; }
.og-library-empty a { color:var(--library-accent); text-underline-offset:4px; margin-right:16px; }
#consoleGrid .ctop { display:none; }
#consoleGrid .cinfo { padding:18px 20px; gap:10px; }
#consoleGrid .cmeta { gap:6px; margin-top:12px; }
#consoleGrid .bit { color:var(--library-muted); font-size:12px; margin-top:6px; }
#consoleGrid .cmeta span { border:0; background:#ffffff07; color:var(--library-accent); padding:4px 7px; }
#consoleGrid .playgo { display:none; }
body.og-games-portal-v2 .og-console-header { background:linear-gradient(120deg,#24252b,#16191f); border:1px solid var(--library-line); border-radius:16px; padding:24px; }
body.og-games-portal-v2 .og-console-header h2 { font-family:Inter,system-ui,sans-serif; font-size:24px; letter-spacing:-.4px; }
body.og-games-portal-v2 .og-console-icon { width:130px; height:70px; flex:0 0 130px; background:transparent; border:0; }
body.og-games-portal-v2 .og-console-icon img { width:100%; height:100%; object-fit:contain; }
body.og-games-portal-v2 .og-console-header .og-hub-link { margin-left:auto; color:var(--library-accent); white-space:nowrap; }
body[data-console] { background:#101217; color:var(--library-ink); }
body[data-console] .cyber-bg { background:radial-gradient(ellipse at 10% 0,#f6bb620a,transparent 55%),#101217; }
body[data-console] .glow-orb { display:none; }
body[data-console] .og-hero { background:linear-gradient(150deg,#24262d,#12151b); border-bottom:1px solid var(--library-line); }
body[data-console] .og-hero h1 { color:#faf6ed; font-family:Inter,system-ui,sans-serif; text-shadow:none; }
body[data-console] .og-about-block { border:1px solid var(--library-line); border-radius:14px; background:#181b21; }
body[data-console] .og-nav-pill { border-color:var(--library-line); background:#181b21; }
body[data-console] .og-nav-pill.active { border-color:var(--library-accent); color:var(--library-accent); }
body[data-console] .og-game-card { border-color:var(--library-line); border-radius:14px; background:#1b1e25; }
.og-library-page { margin:0; font-family:Inter,system-ui,sans-serif; }
.og-library-page .og-topbar { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; padding:22px max(24px,calc((100vw - 1250px)/2)); border-bottom:1px solid var(--library-line); gap:20px; }
.og-library-page .og-topbar a { color:var(--library-ink); text-decoration:none; }
.og-library-page .og-topbar strong { color:var(--library-accent); letter-spacing:2px; }
.og-library-page .og-hero { padding:50px 24px; text-align:center; }
.og-library-page .og-hero-cover { width:280px; height:110px; object-fit:contain; margin-bottom:20px; }
.og-library-page .og-hero h1 { font-size:clamp(26px,4vw,42px); margin:8px 0; }
.og-library-page .og-hero p { color:var(--library-muted); }
.og-library-page .og-games-section, .og-library-page .og-about-block { max-width:1200px; margin:32px auto; padding:24px; }
.og-library-page .og-games-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:20px; }
.og-library-page .og-game-card { color:var(--library-ink); text-decoration:none; overflow:hidden; border:1px solid var(--library-line); }
.og-library-page .og-card-cover { position:relative; aspect-ratio:4/5; background:#242830; }
.og-library-page .og-card-cover img { width:100%; height:100%; object-fit:cover; }
.og-library-page .og-card-play { position:absolute; bottom:0; left:0; right:0; padding:12px; background:#000b; color:var(--library-accent); }
.og-library-page .og-card-title { font-size:14px; line-height:1.4; padding:14px; margin:0; }
.og-library-page .og-console-nav { display:flex; flex-wrap:wrap; gap:8px; max-width:1200px; margin:24px auto; padding:0 24px; }
.og-library-page .og-nav-pill { display:flex; gap:8px; align-items:center; color:var(--library-ink); padding:8px 12px; border:1px solid var(--library-line); border-radius:8px; text-decoration:none; font-size:12px; }
.og-library-page .og-nav-pill img { width:34px; height:24px; object-fit:contain; }
.og-library-page input[type=search] { display:block; width:min(100%,460px); padding:14px; background:#12151b; border:1px solid var(--library-line); border-radius:10px; color:#fff; margin:20px 0; font:inherit; }
.og-library-page .og-empty-state { display:none; }
.og-library-page .og-empty-state.visible { display:block; }
@media(max-width:600px) {
  body.og-games-portal-v2 .og-hub-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  body.og-games-portal-v2 .og-hub-card .og-hub-media { height:98px; margin:0 12px; }
  body.og-games-portal-v2 .og-hub-card .og-hub-info h3 { font-size:14px; }
  body.og-games-portal-v2 .og-hero-stats { flex-wrap:wrap; gap:10px; }
  body .og-hub-grid, #consoleGrid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  body .og-hub-card .og-hub-media, #consoleGrid .clogo { height:98px; margin:0 12px; padding:14px 2px; }
  body .og-hub-card .og-hub-info, #consoleGrid .cinfo { padding:14px 12px; }
  body .og-hub-card h3, #consoleGrid h3 { font-size:14px; }
  .og-library-eyebrow { padding:14px 12px 0; font-size:9px; letter-spacing:.5px; flex-wrap:wrap; }
  body.og-games-portal-v2 .og-console-header { flex-wrap:wrap; padding:18px; }
  body.og-games-portal-v2 .og-console-header h2 { font-size:20px; }
  body.og-games-portal-v2 .og-console-header .og-hub-link { margin-left:0; }
}
@media(prefers-reduced-motion:reduce) { body .og-hub-card, #consoleGrid .ccard { transition:none; } }
