/* ProRetro 3.25 · bundle único (sin @import en cadena) */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;min-height:100%;background:#0d100f}
body{font-family:var(--font-ui);color:var(--text);font-size:14px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
img,svg{display:block;max-width:100%}
h1,h2,h3,p{margin:0}
ul{margin:0;padding:0;list-style:none}
[hidden]{display:none!important}
::selection{background:rgba(255,255,255,.18)}
:root{--font-ui:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-display:'Manrope',var(--font-ui);
  --bg:#0c0f0e;--bg-2:#121614;--window:rgba(34,39,36,.78);--window-solid:#252b28;--panel:rgba(54,60,56,.48);--panel-strong:rgba(42,47,44,.78);
  --line:rgba(255,255,255,.10);--line-strong:rgba(255,255,255,.18);--text:#f6f7f5;--muted:#a8afaa;--soft:#727a75;
  --accent:#f5f6f4;--accent-2:#aeb5b0;--success:#72e39b;--warning:#ffd36c;
  --shadow:0 30px 90px rgba(0,0,0,.48);--shadow-soft:0 12px 34px rgba(0,0,0,.28);
  --radius-window:30px;--radius-xl:22px;--radius-lg:17px;--radius-md:13px;--radius-sm:10px;
  --ease:cubic-bezier(.2,.72,.22,1);--sidebar:178px;--dock:54px;--topbar:64px;}
body{min-width:320px;overflow-x:hidden;background:#0b0e0d}
.app-atmosphere{position:fixed;inset:0;z-index:0;background:#121715;overflow:hidden;pointer-events:none}
.app-atmosphere::before{content:"";position:absolute;inset:-8%;background-image:var(--ambient-image,none);background-size:cover;background-position:center;transform:scale(1.12);opacity:.54;transition:background-image .5s ease,opacity .35s ease,filter .35s ease}
.app-atmosphere::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,17,15,.24),rgba(7,9,8,.72)),radial-gradient(circle at 74% 14%,rgba(216,225,206,.11),transparent 28%),linear-gradient(90deg,rgba(11,14,13,.72),transparent 34%,rgba(8,10,9,.28));}
.app-stage{position:relative;z-index:1;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:34px 32px 38px}
.quick-dock{width:var(--dock);flex:0 0 var(--dock);margin-right:14px;padding:12px 7px;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(31,36,33,.62);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;align-items:center;gap:8px}
.quick-dock a{width:39px;height:39px;border-radius:13px;display:grid;place-items:center;color:#c4cac5;transition:background .2s var(--ease),color .2s var(--ease),transform .2s var(--ease)}
.quick-dock a:hover,.quick-dock a:focus-visible{background:rgba(255,255,255,.09);color:#fff;transform:translateY(-1px);outline:none}
.quick-dock a.is-active{background:#f6f7f5;color:#161916;box-shadow:0 8px 22px rgba(0,0,0,.30),0 0 0 1px rgba(255,255,255,.16)}
.quick-dock svg{width:18px;height:18px}
.media-shell{width:min(1420px,calc(100vw - 126px));height:min(900px,calc(100dvh - 68px));min-height:min(680px,calc(100dvh - 24px));display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-window);background:rgba(32,37,34,.82);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.08)}
.library-sidebar{position:relative;display:flex;min-width:0;flex-direction:column;padding:24px 16px 18px;border-right:1px solid rgba(255,255,255,.075);background:linear-gradient(180deg,rgba(34,39,36,.74),rgba(26,31,28,.88));overflow:hidden}
.brand{display:flex;align-items:center;gap:9px;min-height:36px}
.brand-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.10)}
.brand-mark img{width:22px;height:22px;object-fit:contain}
.brand-name{font-family:var(--font-display);font-size:20px;font-weight:800;letter-spacing:-.045em}
.brand-name strong{color:#fff}
.brand-name{color:#c7cdc8}
.sidebar-showcase{margin-top:34px;min-height:0;display:flex;flex-direction:column;gap:10px}
.sidebar-title{display:flex;align-items:center;justify-content:space-between;color:#eef1ee;font-size:12px;font-weight:700}
.sidebar-title small{font-size:9px;color:var(--soft);font-weight:600}
.sidebar-featured{display:grid;gap:10px;overflow:hidden}
.sidebar-mini-card{position:relative;display:block;aspect-ratio:1.56;border-radius:13px;overflow:hidden;background:#181d1a;border:1px solid rgba(255,255,255,.07);box-shadow:0 8px 18px rgba(0,0,0,.18)}
.sidebar-mini-art{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .35s var(--ease)}
.sidebar-mini-card:hover .sidebar-mini-art{transform:scale(1.035)}
.sidebar-mini-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 28%,rgba(0,0,0,.72))}
.sidebar-mini-card span{position:absolute;z-index:2;left:9px;right:9px;bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:9px;font-weight:600;color:#fff}
.recent-activity-card{aspect-ratio:1.82}
.recent-activity-card em{position:absolute;z-index:2;left:9px;top:8px;padding:4px 6px;border-radius:7px;background:rgba(10,13,11,.58);color:#cdd2ce;font-size:6px;font-weight:800;font-style:normal;letter-spacing:.08em}
.recent-page .sidebar-mini-art{background:radial-gradient(circle at 72% 25%,rgba(255,255,255,.13),transparent 30%),linear-gradient(135deg,#39423d,#171c19)}
.sidebar-mini-empty{aspect-ratio:1.9;background:rgba(255,255,255,.025);box-shadow:none}
.sidebar-mini-empty::after{background:none}
.sidebar-mini-empty span{top:50%;bottom:auto;transform:translateY(-50%);color:#7f8781;text-align:center}
.sidebar-bottom{margin-top:auto;padding-top:14px;color:#737b75;font-size:9px;line-height:1.5;border-top:1px solid rgba(255,255,255,.06)}
.media-workspace{position:relative;isolation:isolate;min-width:0;display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(46,52,48,.52),rgba(28,33,30,.72));overflow:hidden}
.media-workspace::before{content:"";position:absolute;z-index:0;inset:-34px;background-image:var(--ambient-image,none);background-size:cover;background-position:center;transform:scale(1.08);opacity:0;transition:opacity .45s ease,background-image .5s ease}
.media-workspace::after{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(180deg,rgba(26,31,28,.62),rgba(21,26,23,.80));opacity:0;pointer-events:none;transition:opacity .35s ease}
.has-page-ambient .media-workspace::after{opacity:1}
.has-page-ambient .media-workspace::before{opacity:.28}
body[data-system].has-page-ambient .media-workspace::before,body[data-game-system].has-page-ambient .media-workspace::before{opacity:.43}
body[data-system].has-page-ambient .media-workspace::after,body[data-game-system].has-page-ambient .media-workspace::after{background:linear-gradient(180deg,rgba(24,29,26,.50),rgba(18,23,20,.72))}
.has-page-ambient .app-atmosphere::before{opacity:.82;}
.site-header{position:relative;z-index:40;flex:0 0 var(--topbar);border-bottom:1px solid rgba(255,255,255,.055);background:rgba(40,45,42,.42);}
.topbar{height:100%;display:flex;align-items:center;gap:14px;padding:0 20px}
.topbar-mobile-brand{display:none}
.history-controls{display:flex;gap:5px}
.history-button{width:34px;height:34px;border:0;border-radius:50%;display:grid;place-items:center;background:transparent;color:#aeb5b0}
.history-button:hover{background:rgba(255,255,255,.07);color:#fff}
.history-button svg{width:15px;height:15px}
.topbar-tabs{display:flex;align-items:center;gap:5px;min-width:0;margin-right:auto;overflow-x:auto;scrollbar-width:none}
.topbar-tabs::-webkit-scrollbar{display:none}
.topbar-tab{flex:0 0 auto;min-height:34px;display:flex;align-items:center;padding:0 12px;border:1px solid transparent;border-radius:11px;color:#929a94;font-size:9px;font-weight:700;white-space:nowrap;transition:background .18s var(--ease),color .18s var(--ease),border-color .18s var(--ease)}
.topbar-tab:hover,.topbar-tab:focus-visible{background:rgba(255,255,255,.06);color:#fff;outline:none}
.topbar-tab.is-active{background:rgba(255,255,255,.095);border-color:rgba(255,255,255,.055);color:#fff}
.topbar-tab.is-static{cursor:default}
.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.gamepad-chip{height:32px;display:flex;align-items:center;gap:7px;padding:0 10px;border-radius:16px;background:rgba(255,255,255,.055);color:#aeb5b0;font-size:9px;font-weight:700}
.status-dot{width:6px;height:6px;border-radius:50%;background:#7c857f}
[data-gamepad-status][data-connected="true"] .status-dot{background:var(--success);box-shadow:0 0 0 3px rgba(114,227,155,.10)}
.community-discord{height:36px;border-radius:18px;display:flex;align-items:center;gap:8px;padding:0 10px;background:rgba(255,255,255,.06);color:#d7dbd8;font-size:10px;font-weight:600}
.account-chip{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;padding:0;background:rgba(255,255,255,.06);color:#d7dbd8}
.community-discord:hover,.account-chip:hover{background:rgba(255,255,255,.10)}
.community-discord svg{width:15px}
.account-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#7c867e,#38403b);color:white;font-size:9px;font-weight:800;background-size:cover;background-position:center}
.workspace-scroll{position:relative;z-index:1;flex:1 1 auto;height:calc(100% - var(--topbar));min-height:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.14) transparent}
.workspace-scroll::-webkit-scrollbar{width:8px}
.workspace-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:8px}
.workspace-scroll>main{width:100%;flex:1 0 auto;min-height:calc(100% - 72px)}
.site-footer{padding:26px 30px 20px;color:#7f8781}
.footer-main{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.065);padding-top:18px}
.footer-col{display:flex;gap:15px}
.footer-col strong{display:none}
.footer-col a{font-size:9px;color:#7f8781}
.footer-col a:hover{color:#fff}
.footer-bottom{font-size:9px;margin-left:auto}
.shell{width:auto;max-width:none;margin:0}
.section{padding:24px 30px 30px}
.reveal{opacity:0;transform:translateY(10px);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.reveal.is-visible{opacity:1;transform:none}
.community-discord-label{white-space:nowrap}
.account-surface .topbar-tabs,.social-surface .topbar-tabs{flex:0 0 auto;margin-right:auto;padding:3px;border:1px solid rgba(255,255,255,.065);border-radius:13px;background:rgba(10,13,11,.22);overflow:visible}
.account-surface .topbar-tab,.social-surface .topbar-tab{min-height:30px;border-radius:9px;padding:0 13px}
.account-surface .topbar-tab.is-active,.social-surface .topbar-tab.is-active{background:#f6f7f5;color:#171a18;border-color:#f6f7f5;box-shadow:0 5px 16px rgba(0,0,0,.22)}
body[data-system].has-page-ambient .app-atmosphere::before,body[data-game-system].has-page-ambient .app-atmosphere::before{opacity:.66;}
body[data-system].has-page-ambient .app-atmosphere::after,body[data-game-system].has-page-ambient .app-atmosphere::after{background:linear-gradient(180deg,rgba(5,8,6,.58),rgba(4,6,5,.82)),radial-gradient(circle at 70% 14%,rgba(255,255,255,.055),transparent 28%)}
.account-chip{border-radius:12px}
.account-avatar{border-radius:9px}
.eyebrow{font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#aab1ab}
.button{min-height:36px;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,.08);color:#fff;font-size:10px;font-weight:700;transition:.18s var(--ease);box-shadow:none}
.button:hover{transform:translateY(-1px);background:rgba(255,255,255,.13)}
.button.primary{background:#f6f7f5;color:#171a18;border-color:#f6f7f5}
.button.primary:hover{background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.20)}
.button.accent{background:var(--accent);border-color:var(--accent)}
.button.subtle{background:rgba(255,255,255,.055)}
.favorite-detail{width:38px;min-width:38px;height:38px;border:1px solid rgba(255,255,255,.13);border-radius:13px;padding:0;background:rgba(18,22,20,.62);color:#aeb5b0;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;box-shadow:inset 0 1px 0 rgba(255,255,255,.055);transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease)}
.favorite-detail:hover{background:rgba(255,255,255,.13);color:#fff;border-color:rgba(255,255,255,.22);transform:translateY(-1px)}
.favorite-detail.is-favorite{background:#f6f7f5;color:#171a18;border-color:#f6f7f5;box-shadow:0 8px 24px rgba(0,0,0,.26)}
.favorite-symbol{font-size:17px;line-height:1;transform:translateY(-.5px)}
.button.accent{background:#f6f7f5;color:#171a18;border-color:#f6f7f5}
.button.accent:hover{background:#fff}
.catalog-loading,.empty-state,.account-empty{min-height:160px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(255,255,255,.035);display:grid;place-items:center;text-align:center;color:#9aa29c}
.catalog-loading-inner{display:grid;justify-items:center;gap:10px}
.catalog-loading strong,.empty-state strong{font-size:10px;letter-spacing:.08em}
.loading-bars{display:flex;gap:3px}
.loading-bars i{width:3px;height:16px;border-radius:2px;background:#d8ddd9;animation:bars .8s ease-in-out infinite alternate}
.loading-bars i:nth-child(2){animation-delay:.12s}
.loading-bars i:nth-child(3){animation-delay:.24s}
@keyframes bars{to{transform:scaleY(.35);opacity:.45}}
.gamepad-cursor{position:fixed;z-index:320;left:-11px;top:-11px;width:22px;height:22px;border-radius:50%;pointer-events:none;opacity:0;transform:translate3d(-100px,-100px,0);transition:opacity .12s ease;filter:drop-shadow(0 3px 8px rgba(0,0,0,.45))}
.gamepad-cursor.is-visible{opacity:1}
.gamepad-cursor::before{content:"";position:absolute;inset:3px;border:2px solid rgba(255,255,255,.96);border-radius:50%;background:rgba(20,24,21,.26);}
.gamepad-cursor::after{content:"";position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}
.gamepad-cursor.is-over-action::before{background:rgba(255,255,255,.22);box-shadow:0 0 0 5px rgba(255,255,255,.08)}
.gamepad-hover{outline:1px solid rgba(255,255,255,.18);outline-offset:2px}
.page-hero{position:relative}
.hero-meta{min-width:0}
.pr-avatar,.pr-avatar-host{--avatar-color:#5865f2;--avatar-x:0%;--avatar-y:0%;--avatar-scale:1;position:relative;display:grid;place-items:center;overflow:hidden;background:var(--avatar-color);isolation:isolate}
.pr-avatar-backdrop{position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.34),transparent 42%),linear-gradient(145deg,rgba(255,255,255,.12),rgba(0,0,0,.12));pointer-events:none}
.pr-avatar::after,.pr-avatar-host::after{content:"";position:absolute;inset:auto -18% -34% 12%;z-index:0;height:56%;border-radius:50%;background:rgba(255,255,255,.12);filter:blur(14px);pointer-events:none}
.pr-avatar-character{position:absolute;z-index:2;left:50%;top:50%;width:92%;height:92%;object-fit:contain;object-position:center;transform:translate(calc(-50% + var(--avatar-x)),calc(-50% + var(--avatar-y))) scale(var(--avatar-scale));transform-origin:center;filter:drop-shadow(0 9px 11px rgba(0,0,0,.22));pointer-events:none}
.pr-avatar-fallback{position:relative;z-index:1;font-size:.34em;font-weight:900;letter-spacing:.03em;color:#fff}
.pr-avatar.has-character .pr-avatar-fallback,.pr-avatar-host.has-image .pr-avatar-fallback{display:none}
.account-avatar.pr-avatar-host{background:var(--avatar-color);background-image:none!important}
.account-avatar.pr-avatar-host .pr-avatar-character{width:94%;height:94%}
.account-avatar.pr-avatar-host .pr-avatar-fallback{font-size:8px}
.profile-avatar-composite{width:100%;height:100%;border-radius:inherit}
.profile-avatar-composite .pr-avatar-character{width:94%;height:94%}
.social-user-avatar.pr-avatar{border-radius:inherit}
.social-user-avatar.pr-avatar .pr-avatar-character{width:94%;height:94%}
.profile-character-editor{display:grid;grid-template-columns:230px minmax(0,1fr);gap:16px}
.profile-avatar-preview-panel{position:sticky;top:0;display:grid;align-content:start;gap:12px;padding:14px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(255,255,255,.025)}
.profile-avatar-preview{width:100%;aspect-ratio:1;border-radius:24px;font-size:42px;box-shadow:0 18px 34px rgba(0,0,0,.22)}
.profile-avatar-preview-copy strong,.profile-avatar-preview-copy span{display:block}
.profile-avatar-preview-copy strong{font-size:11px}
.profile-avatar-preview-copy span{margin-top:3px;color:#8f9891;font-size:8px;line-height:1.45}
.profile-character-controls{min-width:0}
.profile-editor-section+.profile-editor-section{margin-top:16px}
.profile-editor-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.profile-editor-label span{font-size:8px;font-weight:800;letter-spacing:.14em;color:#919a93}
.profile-editor-label small{font-size:7px;color:#747d76;text-align:right}
.profile-character-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;max-height:354px;overflow:auto;padding:2px 5px 6px 2px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.14) transparent}
.profile-character-option{position:relative;aspect-ratio:1;border:1px solid rgba(255,255,255,.055);border-radius:16px;background:rgba(255,255,255,.025);overflow:hidden;padding:0;color:#fff}
.profile-character-option:hover{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.045);transform:translateY(-1px)}
.profile-character-option.is-selected{border-color:#fff;background:rgba(255,255,255,.075);box-shadow:0 0 0 2px rgba(255,255,255,.18)}
.profile-character-option::after{content:"";position:absolute;inset:6px;border-radius:11px;background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.07),transparent 65%);pointer-events:none}
.profile-character-option img{position:absolute;z-index:1;left:50%;top:50%;width:84%;height:84%;object-fit:contain;object-position:center;transform:translate(-50%,-50%);filter:drop-shadow(0 8px 9px rgba(0,0,0,.22));pointer-events:none}
.profile-character-option.is-selected::before{content:"✓";position:absolute;z-index:3;right:6px;top:6px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#151815;font-size:9px;font-weight:900;box-shadow:0 5px 14px rgba(0,0,0,.26)}
.profile-color-row{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:10px;align-items:stretch}
.profile-color-palette{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 10px;border:1px solid rgba(255,255,255,.055);border-radius:14px;background:rgba(255,255,255,.02)}
.profile-color-swatch{width:30px;height:30px;border:2px solid rgba(255,255,255,.08);border-radius:10px;background:var(--swatch);box-shadow:inset 0 1px 0 rgba(255,255,255,.2);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.profile-color-swatch:hover{transform:scale(1.06)}
.profile-color-swatch.is-selected{border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.14)}
.profile-color-custom{display:grid;grid-template-columns:42px minmax(0,1fr);gap:9px;align-items:center;padding:8px 10px;border:1px solid rgba(255,255,255,.06);border-radius:14px;background:rgba(255,255,255,.025)}
.profile-color-picker-wrap{position:relative;width:42px;height:42px;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:var(--custom-color,#5865f2)}
.profile-color-picker-wrap input[type="color"]{position:absolute;inset:-10px;width:62px;height:62px;border:0;padding:0;opacity:0;cursor:pointer}
.profile-color-custom-copy{min-width:0}
.profile-color-custom-copy strong,.profile-color-custom-copy small{display:block}
.profile-color-custom-copy strong{font-size:8px;color:#e7ebe8}
.profile-color-custom-copy small{margin-top:2px;font-size:7px;color:#7e8780}
.profile-color-hex{width:100%;margin-top:5px;height:26px;padding:0 8px;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:rgba(0,0,0,.13);color:#fff;font-size:8px;text-transform:uppercase}
.profile-transform-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.profile-transform-control{padding:10px;border:1px solid rgba(255,255,255,.055);border-radius:14px;background:rgba(255,255,255,.022)}
.profile-transform-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.profile-transform-head span{font-size:8px;font-weight:700;color:#cbd1cd}
.profile-transform-head output{min-width:42px;text-align:right;font-size:8px;color:#8f9891}
.profile-transform-control input[type="range"]{width:100%;height:4px;accent-color:#fff;cursor:pointer}
.profile-transform-reset{margin-top:9px;min-height:30px;border:0;border-radius:9px;padding:0 10px;background:rgba(255,255,255,.055);color:#d4d9d5;font-size:7px;font-weight:800}
.profile-transform-reset:hover{background:rgba(255,255,255,.09)}
.profile-editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
@media(max-width:980px){.profile-character-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.profile-color-row{grid-template-columns:1fr}
.profile-transform-grid{grid-template-columns:1fr 1fr}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.profile-character-editor{grid-template-columns:1fr}
.profile-avatar-preview-panel{position:static;grid-template-columns:110px minmax(0,1fr);align-items:center}
.profile-avatar-preview{width:110px}
.profile-character-grid{grid-template-columns:repeat(5,minmax(0,1fr));max-height:330px}}
@media(max-width:600px){.profile-character-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.profile-transform-grid{grid-template-columns:1fr}}
@media(max-width:500px){.profile-avatar-preview-panel{grid-template-columns:86px minmax(0,1fr)}
.profile-avatar-preview{width:86px;border-radius:20px}
.profile-character-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.profile-character-option{border-radius:14px}
.profile-color-palette{gap:6px}
.profile-color-swatch{width:28px;height:28px}
.profile-editor-actions{display:grid;grid-template-columns:1fr}
.profile-editor-actions .button{width:100%}}
.media-section{padding:0 24px 24px}
.media-section+.media-section{padding-top:3px}
.media-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:11px}
.media-section-head h2{font-family:var(--font-display);font-size:17px;letter-spacing:-.025em}
.media-section-head span,.media-section-head a{font-size:9px;color:#9aa19c}
.media-row,.carousel-track,.profile-favorites-grid{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;padding:3px 3px 10px;scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain}
.media-row::-webkit-scrollbar,.carousel-track::-webkit-scrollbar,.profile-favorites-grid::-webkit-scrollbar{display:none}
.favorite-card-shell,.media-card-shell{flex:0 0 clamp(190px,22vw,255px);min-width:0;scroll-snap-align:start}
.game-card,.system-card{position:relative;display:block;aspect-ratio:1.62;border-radius:15px;overflow:hidden;background:#151916;border:1px solid rgba(255,255,255,.07);box-shadow:0 10px 24px rgba(0,0,0,.20);transform:perspective(900px) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg)) translateZ(0);transition:transform .22s var(--ease),border-color .22s ease,box-shadow .22s ease}
.game-card:hover,.game-card:focus-visible,.system-card:hover,.system-card:focus-visible{transform:perspective(900px) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg)) translateY(-3px) scale(1.015);border-color:rgba(255,255,255,.20);box-shadow:0 18px 38px rgba(0,0,0,.34);outline:none}
.game-art,.system-card-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .45s var(--ease)}
.game-card:hover .game-art,.system-card:hover .system-card-bg{transform:scale(1.035)}
.game-art::after,.system-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 20%,rgba(0,0,0,.08) 48%,rgba(0,0,0,.78) 100%)}
.game-system{position:absolute;z-index:3;top:10px;left:10px;display:inline-flex;align-items:center;min-height:20px;padding:0 7px;border-radius:8px;background:rgba(15,18,16,.52);font-size:7px;font-weight:800;letter-spacing:.08em;color:#f5f6f4}
.game-logo,.system-logo-wrap{position:absolute;z-index:3;left:11px;right:11px;bottom:27px;height:42px;display:flex;align-items:flex-end}
.game-logo img,.system-logo-wrap img{max-width:72%;max-height:40px;object-fit:contain;object-position:left bottom;filter:drop-shadow(0 4px 12px rgba(0,0,0,.38))}
.game-logo-fallback,.system-logo-fallback{font-family:var(--font-display);font-size:15px;font-weight:800;line-height:1.05;text-shadow:0 2px 8px rgba(0,0,0,.55)}
.game-open,.system-arrow{position:absolute;z-index:3;left:11px;bottom:9px;color:#d1d6d2;font-size:7px;font-weight:700}
.system-card-inner{position:absolute;inset:0;z-index:2}
.system-card-content{position:absolute;inset:0}
.system-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.01),rgba(0,0,0,.64));z-index:1}
.system-logo-wrap{bottom:24px}
.system-arrow{bottom:9px}
.media-row.large .favorite-card-shell{flex-basis:clamp(235px,28vw,330px)}
.media-row.compact .favorite-card-shell{flex-basis:clamp(165px,18vw,210px)}
.game-art.has-artwork{background-image:var(--game-art)!important}
.system-card-bg.has-artwork{background-image:var(--system-art)!important}
.game-logo.has-logo .game-logo-fallback,.system-logo-wrap.has-logo .system-logo-fallback{display:none!important}
.media-card-shell{contain:layout style}
.system-card-badges{position:absolute;z-index:4;top:10px;left:10px;right:10px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;pointer-events:none}
.system-short-badge,.system-game-count{display:inline-flex;align-items:center;min-height:22px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(12,15,13,.58);color:#f5f6f4;font-size:7px;font-weight:800;letter-spacing:.07em}
.system-short-badge{padding:0 8px}
.system-game-count{gap:4px;padding:0 7px}
.system-game-count b{font-size:8px}
.system-game-count small{color:#bdc4be;font-size:6px;text-transform:uppercase;letter-spacing:.04em}
.system-era-label{position:absolute;z-index:3;right:11px;bottom:9px;color:#aeb5b0;font-size:7px;font-weight:650}
.system-logo-wrap{bottom:28px;right:70px}
.system-arrow{left:11px;bottom:9px}
.system-card:hover .system-game-count,.system-card:focus-visible .system-game-count{background:rgba(20,24,21,.76)}
.feature-carousel{position:relative;min-height:315px;margin-bottom:18px;border:1px solid rgba(255,255,255,.08);border-radius:20px;background:#151917;overflow:hidden;box-shadow:0 18px 38px rgba(0,0,0,.22);isolation:isolate}
.feature-carousel-viewport{position:relative;overflow:hidden;min-height:inherit;border-radius:inherit}
.feature-carousel-track{display:flex;min-height:inherit;will-change:transform;transition:transform .72s cubic-bezier(.22,.72,.22,1)}
.feature-carousel-slide{position:relative;flex:0 0 100%;min-width:100%;min-height:315px;overflow:hidden;background:#151917;isolation:isolate}
.feature-carousel-slide-bg{position:absolute;inset:-1px;background:radial-gradient(circle at 70% 24%,rgba(255,255,255,.10),transparent 28%),linear-gradient(135deg,#222923,#111512);background-size:cover;background-position:center 38%;transform:scale(1.015);transition:transform 8s ease-out,filter .45s ease;z-index:-2}
.feature-carousel-slide::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,11,9,.92) 0%,rgba(8,11,9,.72) 34%,rgba(8,11,9,.30) 58%,rgba(8,11,9,.10) 76%,rgba(8,11,9,.24) 100%),linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.34))}
.feature-carousel-slide.is-active .feature-carousel-slide-bg{transform:scale(1.045)}
.feature-carousel-copy{position:relative;z-index:2;display:flex;width:min(520px,62%);min-height:315px;flex-direction:column;justify-content:center;align-items:flex-start;padding:32px 56px 36px 62px;opacity:.72;transform:translateX(12px);transition:opacity .42s ease .15s,transform .5s cubic-bezier(.22,.72,.22,1) .12s}
.feature-carousel-slide.is-active .feature-carousel-copy{opacity:1;transform:none}
.feature-carousel-kicker{display:inline-flex;min-height:22px;align-items:center;padding:0 8px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(12,15,13,.36);color:#c5cbc6;font-size:7px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.feature-carousel-logo{display:flex;height:72px;align-items:flex-end;margin:12px 0 8px}
.feature-carousel-logo img{max-width:320px;max-height:68px;object-fit:contain;object-position:left bottom;filter:drop-shadow(0 7px 16px rgba(0,0,0,.44))}
.feature-carousel-logo .fallback{font-family:var(--font-display);font-size:38px;font-weight:800;line-height:.98;letter-spacing:-.055em;text-wrap:balance;text-shadow:0 5px 20px rgba(0,0,0,.34)}
.feature-carousel-meta{color:#c2c8c3;font-size:9px;font-weight:650}
.feature-carousel-description{max-width:440px;margin-top:8px;color:#b9c0bb;font-size:10px;line-height:1.55}
.feature-carousel-actions{display:flex;gap:7px;margin-top:17px;flex-wrap:wrap}
.feature-carousel-status{position:absolute;z-index:7;right:17px;bottom:14px;left:17px;display:flex;align-items:center;justify-content:flex-end;gap:10px;pointer-events:none}
.feature-carousel-dots{display:flex;align-items:center;gap:5px;padding:7px 9px;border-radius:13px;background:rgba(11,14,12,.34);pointer-events:auto}
.feature-carousel-dot{width:6px;height:6px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.30);transition:width .2s var(--ease),background .2s ease}
.feature-carousel-dot.is-active{width:20px;background:#fff}
.feature-carousel-counter{min-width:38px;padding:6px 8px;border-radius:10px;background:rgba(11,14,12,.34);color:#c6ccc7;font-size:7px;font-weight:800;letter-spacing:.04em;text-align:center}
.feature-carousel[data-size="1"] .feature-carousel-status{display:none}
.content-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:3px 3px 10px}
.content-card-grid .favorite-card-shell,.content-card-grid .media-card-shell{min-width:0;flex:none}
.content-card-grid .game-card,.content-card-grid .system-card{width:100%}
.home-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.emulator-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1180px){.content-card-grid,.home-card-grid,.emulator-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.feature-carousel,.feature-carousel-slide,.feature-carousel-copy{min-height:330px}
.feature-carousel-copy{width:86%;padding:36px 44px 38px 18px;justify-content:flex-end}
.feature-carousel-logo{height:64px}
.feature-carousel-logo img{max-width:250px;max-height:60px}
.feature-carousel-logo .fallback{font-size:32px}
.feature-carousel-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.feature-carousel-status{right:12px;bottom:10px;left:12px}
.content-card-grid,.home-card-grid,.emulator-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}}
@media (max-width:470px){.feature-carousel,.feature-carousel-slide,.feature-carousel-copy{min-height:320px}
.feature-carousel-copy{width:90%;padding:28px 34px 42px 16px}
.feature-carousel-logo .fallback{font-size:28px}
.feature-carousel-description{font-size:9px}
.feature-carousel-status{justify-content:flex-end}
.feature-carousel-counter{display:none}
.content-card-grid,.home-card-grid,.emulator-card-grid{grid-template-columns:1fr}
.content-card-grid .game-card,.content-card-grid .system-card{aspect-ratio:1.68}}
@media (prefers-reduced-motion:reduce){.feature-carousel-track{transition:none}
.feature-carousel-slide-bg,.feature-carousel-copy{transition:none}}
input,select,textarea{border:1px solid rgba(255,255,255,.09);background:rgba(7,10,8,.28);outline:none;border-radius:12px;color:#f6f7f5}
input:focus,select:focus,textarea:focus{border-color:rgba(255,255,255,.22);box-shadow:0 0 0 3px rgba(255,255,255,.035)}
.account-form{display:grid;gap:13px}
.account-form label{display:grid;gap:6px}
.account-form label>span{font-size:8px;font-weight:800;color:#a2aaa4;letter-spacing:.08em}
.account-form input{height:44px;padding:0 13px}
.account-form-message{padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.055);color:#e3e7e4;font-size:10px}
.account-form-message[data-type="success"]{background:rgba(114,227,155,.10);color:#b9f5cd}
.description-modal{position:fixed;inset:0;width:100dvw;height:100dvh;z-index:260;display:grid;place-items:center;padding:20px;opacity:0;transition:opacity .18s ease;isolation:isolate}
.description-modal.is-open{opacity:1}
.description-modal-backdrop{position:absolute;inset:0;background:rgba(4,6,5,.72);-webkit-backdrop-filter:blur(22px) saturate(.72) brightness(.62);backdrop-filter:blur(22px) saturate(.72) brightness(.62)}
.description-dialog{position:relative;width:min(570px,calc(100vw - 32px));max-height:min(720px,calc(100dvh - 36px));overflow:auto;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(39,44,41,.94);box-shadow:0 30px 90px rgba(0,0,0,.55);transform:translateY(8px) scale(.985);transition:transform .2s var(--ease)}
.is-open .description-dialog{transform:none}
.description-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 20px 12px}
.description-dialog-head span{font-size:8px;color:#8f9791;font-weight:800;letter-spacing:.08em}
.description-dialog-head h2{font-family:var(--font-display);font-size:24px;letter-spacing:-.04em;margin-top:3px}
.description-dialog-body{padding:0 20px 22px;color:#bec5c0;line-height:1.7}
.description-close{width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.07);color:#fff;font-size:18px}
.account-required-modal{position:fixed;inset:0;z-index:245;display:grid;place-items:center;padding:20px;opacity:0;transition:opacity .18s ease}
.account-required-modal[hidden]{display:none}
.account-required-modal.is-open{opacity:1}
.account-required-backdrop{position:absolute;inset:0;background:rgba(4,6,5,.68);backdrop-filter:blur(12px)}
.account-required-dialog{position:relative;width:min(440px,calc(100vw - 32px));padding:22px;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(39,44,41,.96);box-shadow:0 30px 90px rgba(0,0,0,.55);transform:translateY(8px) scale(.985);transition:transform .2s var(--ease)}
.account-required-modal.is-open .account-required-dialog{transform:none}
.account-required-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.account-required-dialog h2{margin:15px 0 7px;font-family:var(--font-display);font-size:23px;line-height:1.06;letter-spacing:-.04em}
.account-required-dialog p{color:#aeb6b0;font-size:10px;line-height:1.6}
.account-required-actions{display:flex;gap:7px;margin-top:17px}
.account-required-close{width:34px;height:34px;border:0;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.07);color:#fff}
.account-required-close:hover{background:rgba(255,255,255,.12)}
.account-toast{position:fixed;z-index:270;left:50%;bottom:26px;max-width:min(420px,calc(100vw - 32px));padding:10px 14px;border:1px solid rgba(255,255,255,.11);border-radius:14px;background:rgba(38,43,40,.92);box-shadow:0 14px 38px rgba(0,0,0,.38);color:#edf0ee;font-size:9px;font-weight:700;opacity:0;pointer-events:none;transform:translate(-50%,10px);transition:opacity .2s ease,transform .2s var(--ease)}
.account-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.account-toast[data-type="success"]{box-shadow:0 14px 38px rgba(0,0,0,.38),inset 3px 0 0 var(--success)}
.account-toast[data-type="error"]{box-shadow:0 14px 38px rgba(0,0,0,.38),inset 3px 0 0 var(--accent)}
@media(max-width:520px){.account-required-actions{flex-direction:column}
.account-required-actions .button{width:100%}}
.player-panel{border:1px solid rgba(255,255,255,.10);border-radius:20px;overflow:hidden;background:rgba(15,19,17,.64);box-shadow:var(--shadow-soft)}
.player-bar{height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid rgba(255,255,255,.07);color:#8d958f;font-size:8px;font-weight:800;letter-spacing:.08em}
.player-stage{position:relative;aspect-ratio:16/9;background:#060806;overflow:hidden}
.player-stage #game{position:absolute;inset:0}
.player-placeholder,.loading{position:absolute;inset:0;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.04),transparent 34%),#080b09}
.player-placeholder strong,.loading strong{display:block;font-size:10px;letter-spacing:.08em;margin:9px 0 5px}
.player-placeholder p,.loading small{color:#7e8780;font-size:9px}
.pixel-play{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;margin:auto;background:rgba(255,255,255,.08);color:#fff;padding-left:2px}
.player-fullscreen-button{position:absolute;top:10px;right:10px;z-index:12;height:32px;border:1px solid rgba(255,255,255,.10);border-radius:11px;background:rgba(10,13,11,.55);color:#fff;padding:0 10px;font-size:8px}
.player-actions{min-height:38px;padding:8px 12px}
.message{font-size:9px;color:#c4cac5}
.loading-dots{display:flex;gap:4px;justify-content:center}
.loading-dots i{width:6px;height:6px;border-radius:50%;background:#fff;animation:pulse .8s ease-in-out infinite alternate}
.loading-dots i:nth-child(2){animation-delay:.15s}
.loading-dots i:nth-child(3){animation-delay:.3s}
@keyframes pulse{to{opacity:.25;transform:translateY(3px)}}
#game canvas,#game video{max-width:100%;max-height:100%;margin:auto}
.report-fab{position:fixed!important;right:24px!important;bottom:22px!important;z-index:170!important;width:42px!important;height:42px!important;border-radius:50%!important;border:1px solid rgba(255,255,255,.12)!important;background:rgba(42,47,44,.84)!important;color:#fff!important;box-shadow:0 10px 28px rgba(0,0,0,.34)!important}
.report-fab:hover{background:rgba(255,255,255,.13)!important}
.report-modal{z-index:210!important}
.report-dialog{border-radius:22px!important;background:rgba(39,44,41,.96)!important;border-color:rgba(255,255,255,.13)!important;box-shadow:0 30px 90px rgba(0,0,0,.55)!important}
.report-dialog input,.report-dialog textarea,.report-dialog select{border-radius:12px!important;background:rgba(8,11,9,.32)!important}
.report-fab-label{display:none}
.report-modal{position:fixed;inset:0;z-index:210;display:grid;place-items:center;padding:18px}
.report-modal-backdrop{position:absolute;inset:0;background:rgba(4,6,5,.68);backdrop-filter:blur(12px)}
.report-dialog{position:relative;width:min(650px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;padding:0!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:22px!important;background:rgba(38,43,40,.96)!important}
.report-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 20px 13px;border-bottom:1px solid rgba(255,255,255,.06)}
.report-topline{font-size:7px;font-weight:800;letter-spacing:.11em;color:#8e9690}
.report-live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:5px}
.report-dialog h2{font-family:var(--font-display);font-size:23px;letter-spacing:-.04em;margin:5px 0}
.report-dialog-title p{font-size:9px;color:#979f99;line-height:1.5}
.report-close{width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.07);color:#fff;font-size:18px}
.report-form{padding:17px 20px 20px}
.report-types{border:0;padding:0;margin:0}
.report-types legend,.report-section-label{font-size:8px;font-weight:800;color:#a0a8a2;margin-bottom:9px}
.report-step{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:7px;background:rgba(255,255,255,.06);margin-right:5px}
.report-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.report-type{position:relative}
.report-type input{position:absolute;opacity:0;pointer-events:none}
.report-type>span{display:block}
.report-type{min-height:58px;padding:9px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.035);font-size:8px;color:#a8afa9}
.report-type:has(input:checked){background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18);color:#fff}
.report-type-icon{font-size:7px!important;color:#7f8781;margin-bottom:8px}
.report-divider{height:1px;background:rgba(255,255,255,.055);margin:16px 0}
.report-field{display:grid;gap:6px;margin-top:10px}
.report-field>span:first-child{font-size:8px;font-weight:800;color:#a0a8a2}
.report-field small{font-weight:500;color:#6f7771;margin-left:5px}
.report-field input,.report-field textarea{width:100%;padding:11px 12px;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(8,11,9,.28);resize:vertical}
.report-field-hint{display:flex;justify-content:space-between;gap:10px;color:#737b75!important;font-size:7px!important}
.report-form-message{padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.05);font-size:8px;margin-top:12px}
.report-form-message[data-type="success"]{color:#b9f5cd;background:rgba(114,227,155,.10)}
.report-form-message[data-type="warning"]{color:#ffe6a7;background:rgba(255,211,108,.10)}
.report-form-message[data-type="error"]{color:#e3e7e4;background:rgba(255,255,255,.055)}
.report-form-actions{display:flex;justify-content:flex-end;margin-top:14px}
.report-form-actions>div{display:flex;gap:7px}
.report-cancel,.report-submit{height:36px;border:0;border-radius:11px;padding:0 13px;font-size:8px;font-weight:800}
.report-cancel{background:rgba(255,255,255,.05);color:#a7aea8}
.report-submit{background:#fff;color:#161916;display:flex;gap:8px;align-items:center}
.report-submit:disabled{opacity:.5}
@media(max-width:620px){.report-type-grid{grid-template-columns:repeat(2,1fr)}
.report-dialog{max-height:calc(100dvh - 16px)}
.report-dialog-head,.report-form{padding-left:14px;padding-right:14px}}
.report-fab-mark{width:100%;height:100%;display:grid;place-items:center}
.report-topline-separator{padding:0 4px;color:#5f6861}
.report-dock-button{width:39px;height:39px;flex:0 0 39px;display:grid;place-items:center;padding:0;border:0;border-radius:13px;background:transparent;color:#c4cac5;transition:background .2s var(--ease),color .2s var(--ease),transform .2s var(--ease)}
.report-dock-button:hover,.report-dock-button:focus-visible{background:rgba(255,255,255,.09);color:#fff;transform:translateY(-1px);outline:none}
.report-dock-button .report-fab-mark{width:18px;height:18px}
.report-dock-button .report-fab-mark svg{width:18px;height:18px}
.report-dock-button .report-fab-label{display:none}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.report-dock-button{width:40px;height:40px;flex-basis:40px;border-radius:12px}}
.dock-separator{display:block;width:30px;height:1px;margin:4px 0 2px;background:rgba(255,255,255,.12);border-radius:999px}
.report-dock-button{border:0;background:transparent;box-shadow:none}
.report-dock-button:hover,.report-dock-button:focus-visible{background:rgba(255,255,255,.09);color:#fff;box-shadow:none}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.dock-separator{width:1px;height:28px;margin:0 2px}
.report-dock-button{border-radius:12px}}
.home-view{padding:16px 18px 8px}
.home-rows{padding-top:2px}
.home-view .media-section{padding:0 4px 24px}
.home-view .media-section+.media-section{padding-top:4px}
.home-system-carousel{overflow-x:auto;overflow-y:hidden;padding:3px 3px 10px;scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain}
.home-system-carousel::-webkit-scrollbar{display:none}
.home-system-carousel-track{display:flex;gap:12px;width:max-content;min-width:100%}
.home-system-carousel-track .favorite-card-shell,.home-system-carousel-track .media-card-shell{flex:0 0 clamp(210px,22vw,285px);scroll-snap-align:start}
.home-system-carousel-track .system-card{width:100%}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.home-system-carousel-track{gap:9px}
.home-system-carousel-track .favorite-card-shell,.home-system-carousel-track .media-card-shell{flex-basis:min(70vw,260px)}}
@media (max-width:470px){.home-system-carousel-track .favorite-card-shell,.home-system-carousel-track .media-card-shell{flex-basis:min(78vw,280px)}}
.catalog-view,.emulators-view{padding:16px 18px 22px}
.catalog-toolbar{position:sticky;top:0;z-index:12;display:grid;grid-template-columns:minmax(230px,340px) 1fr;gap:10px;margin:0 0 15px;padding:10px;border:1px solid rgba(255,255,255,.075);border-radius:17px;background:rgba(35,40,37,.76);transition:border-radius .16s var(--ease),background .16s var(--ease),box-shadow .16s var(--ease)}
.catalog-toolbar.is-stuck{border-radius:0 0 17px 17px;border-top-color:transparent;background:rgba(30,35,32,.94);box-shadow:0 12px 24px rgba(0,0,0,.18)}
.search-box{position:relative;display:flex;min-height:40px;align-items:center;border-radius:12px;background:rgba(255,255,255,.055)}
.search-icon{display:grid;width:34px;place-items:center;color:#919993}
.search-box label{flex:1}
.search-box label>span{display:none}
.search-box input{width:100%;height:40px;padding:0 12px 0 0;border:0;background:transparent;font-size:10px}
.filter-panel{display:flex;min-width:0;align-items:center;gap:9px}
.filter-label{flex:0 0 auto;color:#838b85;font-size:8px;font-weight:800}
.filter-chips{display:flex;overflow:auto;gap:5px;scrollbar-width:none}
.filter-chips::-webkit-scrollbar{display:none}
.filter-chip{height:30px;flex:0 0 auto;padding:0 10px;border:0;border-radius:10px;background:rgba(255,255,255,.045);color:#9da49f;font-size:8px;font-weight:700}
.filter-chip:hover,.filter-chip.is-active{background:rgba(255,255,255,.12);color:#fff}
.catalog-stream{min-height:180px}
.catalog-page-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.catalog-page-grid .favorite-card-shell,.catalog-page-grid .media-card-shell{min-width:0;flex:none}
.catalog-page-grid .game-card{width:100%}
.catalog-empty{padding:40px 0}
.catalog-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:12px 2px 2px}
.pagination-summary{color:#858d87;font-size:8px;font-weight:700}
.pagination-controls{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}
.pagination-page,.pagination-arrow{display:grid;min-width:30px;height:30px;place-items:center;padding:0 8px;border:1px solid rgba(255,255,255,.065);border-radius:9px;background:rgba(255,255,255,.045);color:#9fa6a1;font-size:8px;font-weight:800;transition:background .18s var(--ease),color .18s var(--ease),border-color .18s var(--ease),transform .18s var(--ease)}
.pagination-page:hover,.pagination-arrow:hover:not(:disabled),.pagination-page:focus-visible,.pagination-arrow:focus-visible{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.09);color:#fff;outline:none;transform:translateY(-1px)}
.pagination-page.is-active{border-color:rgba(255,255,255,.16);background:#f3f5f3;color:#171a18}
.pagination-arrow:disabled{opacity:.32;cursor:default}
.pagination-ellipsis{display:grid;width:22px;height:30px;place-items:center;color:#737b75;font-size:10px}
@media (max-width:1180px){.catalog-page-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.catalog-page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.catalog-pagination{align-items:flex-start;flex-direction:column}
.pagination-controls{justify-content:flex-start}
.pagination-summary{padding-left:2px}}
@media (max-width:430px){.catalog-page-grid{grid-template-columns:1fr}
.catalog-page-grid .game-card{aspect-ratio:1.75}}
.system-view,.game-view{padding:16px 18px 24px}
.system-hero,.game-hero{position:relative;border-radius:20px;overflow:hidden;background:#151916;background-clip:padding-box;border:1px solid rgba(255,255,255,.06);box-shadow:0 18px 38px rgba(0,0,0,.20),inset 0 0 0 1px rgba(0,0,0,.18)}
.system-hero{min-height:315px}
.game-hero{min-height:330px}
.system-hero::after,.game-hero::after{content:"";position:absolute;inset:-1px;background:linear-gradient(90deg,rgba(8,11,9,.88),rgba(8,11,9,.36) 56%,rgba(8,11,9,.12)),linear-gradient(180deg,transparent 48%,rgba(0,0,0,.38))}
.system-hero[style*="background-image"],.game-hero[style*="background-image"]{background-size:cover!important;background-position:center!important}
.system-hero-inner,.game-hero-inner{position:relative;z-index:3;padding:32px 30px;display:flex;align-items:flex-end}
.system-hero-inner{min-height:315px}
.game-hero-inner{min-height:330px}
.system-hero-copy{max-width:520px}
.system-page-logo,.detail-logo{height:78px;display:flex;align-items:flex-end;margin-bottom:9px}
.system-page-logo img,.detail-logo img{max-height:74px;max-width:350px;object-fit:contain;object-position:left bottom;filter:drop-shadow(0 5px 14px rgba(0,0,0,.38))}
.system-page-logo .fallback,.game-detail-logo-fallback{font-family:var(--font-display);font-size:38px;font-weight:800;letter-spacing:-.055em}
.system-count{display:inline-flex;min-height:22px;align-items:center;padding:0 8px;border-radius:8px;background:rgba(255,255,255,.08);font-size:8px;font-weight:800;margin-bottom:8px}
.system-hero p{max-width:480px;color:#b7beb9;font-size:10px;line-height:1.6}
.system-hero-links{display:flex;align-items:center;gap:8px;margin-top:15px}
.system-games-section{padding:18px 4px 2px}
.system-games-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;padding:3px 3px 4px}
.system-games-grid .favorite-card-shell,.system-games-grid .media-card-shell{min-width:0;flex:none}
.system-games-grid .game-card{width:100%}
.system-pagination{padding-inline:3px}
.game-hero-inner{justify-content:space-between;gap:28px}
.game-hero-left{align-self:flex-end;max-width:520px}
.game-hero .hero-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.hero-description{align-self:flex-end;width:min(330px,36%);padding:15px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(20,24,21,.48);}
.hero-description-kicker{display:block;font-size:8px;font-weight:800;color:#a6aea8;margin-bottom:6px}
.hero-description p{font-size:9px;line-height:1.55;color:#c0c6c2}
.description-more{border:0;background:transparent;color:#fff;padding:8px 0 0;font-size:8px;font-weight:700}
.play-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(230px,.45fr);gap:12px;padding:14px 0 0}
.game-data{border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:16px;background:rgba(255,255,255,.035)}
.game-data-title{font-size:8px;font-weight:800;color:#858d87;letter-spacing:.1em;margin-bottom:10px}
.game-data dl{margin:0}
.game-data dl>div{display:grid;grid-template-columns:88px 1fr;gap:10px;align-items:center;padding:10px 0;border-top:1px solid rgba(255,255,255,.06)}
.game-data dt{font-size:7px;font-weight:800;color:#7f8881}
.game-data dd{margin:0;color:#e1e4e1;font-size:9px;line-height:1.35}
.system-meta-logo{display:flex;height:26px;align-items:center}
.system-meta-logo img{max-height:25px;max-width:120px;object-fit:contain;object-position:left}
.rating-badge{display:flex;align-items:center;gap:5px}
.rating-system{font-size:7px;color:#89918b}
.rating-label{color:#9fa6a1}
.empty-terminal.big{margin:40px;padding:40px;border-radius:20px;background:rgba(255,255,255,.04)}
[data-system-hero-rail]{position:absolute;z-index:5;right:18px;top:18px}
.favorite-detail-hero{background:rgba(18,22,20,.64);}
.favorite-game-action{flex:0 0 auto}
.game-download-action{background:rgba(255,255,255,.075)}
.metadata-row,.system-meta-row{min-width:0}
@media (max-width:1180px){.system-games-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.system-games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}}
@media (max-width:430px){.system-games-grid{grid-template-columns:1fr}
.system-games-grid .game-card{aspect-ratio:1.75}}
.system-hero.has-artwork{background-image:var(--system-art)!important;background-size:cover!important;background-position:center 38%!important}
.game-hero.has-artwork{background-image:var(--game-art)!important;background-size:cover!important;background-position:center 38%!important}
.system-page-logo.has-logo .fallback,.detail-logo.has-logo .game-detail-logo-fallback{display:none!important}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.system-hero,.system-hero-inner{min-height:330px}}
@media (max-width:470px){.system-hero,.system-hero-inner{min-height:320px}}
.account-page,.public-profile-page{padding:12px 18px 24px}
.account-hero{padding:0!important;background:none!important}
.account-hero-inner{display:grid;grid-template-columns:minmax(0,.85fr) minmax(360px,1.15fr);gap:12px}
.account-hero-copy,.account-hero-panel{min-height:300px;border:1px solid rgba(255,255,255,.075);border-radius:20px;background:rgba(255,255,255,.035);overflow:hidden}
.account-hero-copy{padding:30px;display:flex;flex-direction:column;justify-content:center}
.account-hero-copy h1{font-family:var(--font-display);font-size:clamp(30px,4vw,48px);line-height:1;letter-spacing:-.055em;margin:10px 0}
.gradient-text{color:#fff}
.account-hero-copy p{max-width:500px;color:#abb3ad;line-height:1.6;font-size:10px}
.account-hero-copy .hero-actions{display:flex;gap:7px;margin-top:16px}
.account-hero-meta{display:flex;gap:8px;margin-top:18px}
.account-hero-meta>div{padding:9px 10px;border-radius:11px;background:rgba(255,255,255,.045)}
.account-hero-meta b,.account-hero-meta span{display:block}
.account-hero-meta b{font-size:10px}
.account-hero-meta span{font-size:7px;color:#7f8881;margin-top:2px}
.account-highlight-grid{height:100%;display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:1fr 1fr;gap:6px;padding:6px}
.account-highlight-card{position:relative;overflow:hidden;border-radius:15px;background:#161a17}
.account-highlight-card:first-child{grid-row:1/3}
.account-highlight-bg,.profile-banner-media{position:absolute;inset:0;background-size:cover;background-position:center}
.account-highlight-shade,.profile-banner-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.72))}
.account-highlight-copy{position:absolute;z-index:2;left:12px;right:12px;bottom:11px}
.account-highlight-copy>span,.account-highlight-copy small{font-size:7px;color:#c3c9c4}
.account-highlight-logo{height:35px;margin:4px 0}
.account-highlight-logo img{max-height:34px;max-width:90%;object-fit:contain;object-position:left bottom}
.account-highlight-logo strong{font-size:14px}
.profile-hero{position:relative;min-height:275px;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#161a17}
.profile-hero-inner{position:relative;z-index:3;min-height:275px;padding:24px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.profile-identity{display:flex;align-items:end;gap:14px}
.profile-avatar-wrap{width:86px;height:86px;border-radius:22px;padding:4px;background:rgba(255,255,255,.14);}
.profile-avatar{width:100%;height:100%;border-radius:18px;overflow:hidden;background:#252b27;display:grid;place-items:center;background-size:cover;background-position:center}
.profile-avatar img{width:100%;height:100%;object-fit:cover}
.profile-kicker{font-size:8px;color:#a7aea9;font-weight:800}
.profile-identity-copy h1{font-family:var(--font-display);font-size:34px;letter-spacing:-.05em}
.profile-identity-meta{display:flex;gap:8px;color:#bac0bb;font-size:8px;margin-top:4px}
.profile-online-dot{width:7px;height:7px;border-radius:50%;background:var(--success)}
.profile-playtime-card{min-width:220px;padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(20,24,21,.52);}
.profile-playtime-head,.profile-playtime-foot{display:flex;justify-content:space-between;color:#8f9791;font-size:7px}
.profile-playtime-value{font-family:var(--font-display);font-size:27px;font-weight:800;margin:6px 0}
.profile-page-content{padding:12px 0 0}
.profile-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.profile-stat,.profile-panel,.profile-collection-section{border:1px solid rgba(255,255,255,.07);border-radius:16px;background:rgba(255,255,255,.035)}
.profile-stat{padding:14px}
.profile-stat span,.profile-stat small{display:block;font-size:7px;color:#858d87}
.profile-stat strong{display:block;font-family:var(--font-display);font-size:21px;margin:5px 0}
.profile-overview-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:8px;margin-top:8px}
.profile-panel{padding:16px}
.profile-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.profile-panel-head span{font-size:7px;color:#89918b}
.profile-panel-head h2{font-size:15px;margin-top:2px}
.profile-session-pill{padding:5px 7px;border-radius:8px;background:rgba(114,227,155,.10);color:#a8f2c0!important}
.profile-activity-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.profile-activity-title{display:flex;justify-content:space-between;font-size:7px;color:#868e88;margin-bottom:6px}
.profile-activity-list{display:grid;gap:5px}
.profile-activity-item{display:grid;grid-template-columns:46px 1fr;gap:9px;align-items:center;padding:6px;border-radius:11px;background:rgba(255,255,255,.035)}
.profile-activity-thumb{width:46px;height:34px;border-radius:8px;background:#202521;background-size:cover;background-position:center;display:grid;place-items:center;overflow:hidden}
.profile-activity-thumb img{max-width:80%;max-height:70%;object-fit:contain}
.profile-activity-copy{min-width:0}
.profile-activity-copy small,.profile-activity-copy em{display:block;font-size:7px;color:#7f8881;font-style:normal}
.profile-activity-copy strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:9px;margin:2px 0}
.profile-account-list{margin:0}
.profile-account-list>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid rgba(255,255,255,.055)}
.profile-account-list dt{font-size:8px;color:#858d87}
.profile-account-list dd{margin:0;font-size:9px}
.profile-account-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.profile-collection-section{padding:16px;margin-top:8px}
.profile-section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:10px}
.profile-section-head span,.profile-section-head a{font-size:7px;color:#888f89}
.profile-section-head h2{font-size:15px}
.profile-section-head em{font-style:normal}
.profile-favorite-card{position:relative;display:block;flex:0 0 210px;aspect-ratio:1.55;border-radius:14px;overflow:hidden;background:#171b18}
.profile-favorite-art{position:absolute;inset:0;background-size:cover;background-position:center}
.profile-favorite-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.78))}
.profile-card-kicker{position:absolute;z-index:2;top:9px;left:9px;font-size:7px;font-weight:800}
.profile-card-logo{position:absolute;z-index:2;left:10px;right:10px;bottom:30px;height:36px;display:flex;align-items:flex-end}
.profile-card-logo img{max-height:34px;max-width:75%;object-fit:contain;object-position:left bottom}
.profile-card-fallback{font-size:12px;font-weight:800}
.profile-card-foot{position:absolute;z-index:2;left:10px;right:10px;bottom:9px;display:flex;justify-content:space-between;gap:8px;font-size:7px}
.profile-card-foot strong{max-width:72%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.profile-empty{padding:20px;min-width:300px;color:#9ba29d}
.profile-empty strong{display:block;color:#fff;font-size:10px}
.profile-empty p,.profile-empty a{font-size:8px;margin-top:4px}
.profile-badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.profile-badge{display:flex;align-items:center;gap:7px;padding:6px 8px;border-radius:10px;background:rgba(255,255,255,.055)}
.profile-badge-icon{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;overflow:hidden}
.profile-badge-icon img{width:100%;height:100%;object-fit:contain}
.profile-badge-copy strong,.profile-badge-copy small{display:block}
.profile-badge-copy strong{font-size:8px}
.profile-badge-copy small{font-size:6px;color:#858d87}
.account-setup-state{padding:30px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(255,255,255,.035)}
.account-modal-copy{margin:0 0 16px;color:#aeb6b0;font-size:10px;line-height:1.6}
.account-submit{width:100%;margin-top:2px}
.profile-avatar{position:relative}
.profile-online-dot{position:absolute;right:2px;bottom:2px;z-index:3;border:2px solid #202522}
.profile-avatar-wrap{position:relative}
.profile-activity-column{min-width:0}
.profile-activity-empty{min-height:92px;padding:16px;border-radius:12px;background:rgba(255,255,255,.025);display:grid;place-items:center;color:#879089;font-size:8px;text-align:center}
.profile-badges-empty{align-items:center;color:#929a94}
.profile-badge-empty-mark{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:rgba(255,255,255,.06);font-size:8px;font-weight:800}
.profile-badges-empty>div strong,.profile-badges-empty>div small{display:block}
.profile-badges-empty>div strong{font-size:8px;color:#dce0dd}
.profile-badges-empty>div small{margin-top:2px;font-size:7px;color:#7f8781}
.profile-games-grid,.profile-systems-grid{min-width:0}
.profile-account-panel{min-width:0}
.public-profile-copy{color:#aeb6b0}
.public-profile-error{padding:24px}
.public-profile-error strong{color:#fff;font-size:14px}
.public-profile-error p{margin:6px 0 14px;color:#919a93;font-size:9px}
.profile-edit-modal,.account-auth-popup{z-index:240}
.profile-activity-panel{min-width:0}
.profile-edit-button{flex:0 0 auto}
.profile-edit-dialog,.account-auth-dialog{isolation:isolate}
.profile-edit-form{width:100%}
.account-auth-dialog-body{min-width:0}
.profile-game-card:hover,.profile-system-card:hover{box-shadow:0 15px 30px rgba(0,0,0,.28)}
.public-profile-hero{isolation:isolate}
@media (min-width:821px){.account-page,.social-page{min-height:calc(clamp(680px,calc(100dvh - 68px),900px) - var(--topbar) - 82px)}}
.account-surface .account-page{padding:18px 20px 30px}
.account-surface .account-hero-inner{position:relative;display:grid;grid-template-columns:minmax(0,.92fr) minmax(440px,1.08fr);gap:0;min-height:370px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018));box-shadow:0 20px 48px rgba(0,0,0,.18)}
.account-surface .account-hero-copy,.account-surface .account-hero-panel{min-height:370px;border:0;border-radius:0;background:transparent}
.account-surface .account-hero-copy{position:relative;z-index:2;padding:42px 38px;border-right:1px solid rgba(255,255,255,.065)}
.account-surface .account-hero-copy::before{content:"";position:absolute;width:250px;height:250px;left:-90px;top:-110px;border-radius:50%;background:rgba(255,255,255,.055);filter:blur(55px);pointer-events:none}
.account-surface .account-hero-copy h1{font-size:clamp(38px,4.5vw,60px);max-width:520px}
.account-surface .account-hero-copy p{font-size:11px;max-width:490px}
.account-surface .account-hero-copy .hero-actions{margin-top:22px}
.account-surface .account-hero-meta{margin-top:auto;padding-top:25px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.account-surface .account-hero-meta>div{padding:12px;border:1px solid rgba(255,255,255,.055);background:rgba(10,13,11,.18)}
.account-surface .account-hero-meta b{font-size:12px}
.account-surface .account-highlight-grid{padding:8px;gap:7px;background:rgba(8,11,9,.16)}
.account-surface .account-highlight-card{border:1px solid rgba(255,255,255,.055);border-radius:17px}
.account-surface .account-highlight-card:first-child{grid-row:1/3}
.account-surface .account-highlight-copy{left:14px;right:14px;bottom:13px}
.account-surface .account-highlight-logo{height:44px}
.account-surface .account-highlight-logo img{max-height:42px}
.account-surface .profile-hero{min-height:345px;border-radius:24px;box-shadow:0 20px 48px rgba(0,0,0,.20)}
.account-surface .profile-banner-shade{background:linear-gradient(90deg,rgba(8,11,9,.88) 0%,rgba(8,11,9,.54) 45%,rgba(8,11,9,.22) 78%),linear-gradient(180deg,rgba(8,11,9,.05),rgba(8,11,9,.76))}
.account-surface .profile-hero-inner{min-height:345px;padding:30px;align-items:flex-end}
.account-surface .profile-identity{gap:18px}
.account-surface .profile-avatar-wrap{width:104px;height:104px;border-radius:28px;padding:5px;background:rgba(255,255,255,.18);box-shadow:0 14px 28px rgba(0,0,0,.25)}
.account-surface .profile-avatar{border-radius:23px}
.account-surface .profile-identity-copy h1{font-size:42px;margin-top:3px}
.account-surface .profile-identity-copy p{margin-top:4px;color:#c4cac6;font-size:10px}
.profile-hero-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
.account-surface .profile-badges{margin-top:10px}
.account-surface .profile-playtime-card{min-width:260px;padding:17px;border-radius:18px;background:rgba(14,18,15,.58);box-shadow:0 16px 30px rgba(0,0,0,.18)}
.account-surface .profile-playtime-value{font-size:33px}
.account-surface .profile-page-content{padding-top:10px}
.account-surface .profile-stats-grid{gap:7px}
.account-surface .profile-stat{position:relative;overflow:hidden;padding:16px 17px;border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.022))}
.account-surface .profile-stat::after{content:"";position:absolute;width:80px;height:80px;right:-35px;top:-35px;border-radius:50%;background:rgba(255,255,255,.04)}
.account-surface .profile-stat strong{font-size:24px}
.account-surface .profile-overview-grid{grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:8px;margin-top:8px}
.account-surface .profile-panel{border-radius:18px;background:rgba(255,255,255,.028)}
.account-surface .profile-activity-item{min-height:58px;padding:8px;background:rgba(255,255,255,.032);border:1px solid rgba(255,255,255,.035)}
.account-surface .profile-account-panel{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018))}
.account-surface .profile-account-actions{display:grid;grid-template-columns:1fr 1fr}
.account-surface .profile-account-actions .button:last-child{grid-column:1/-1}
.account-surface .profile-collection-section{padding:18px;border-radius:18px;background:rgba(255,255,255,.025)}
.account-surface .profile-section-head h2{font-size:18px}
.account-surface .profile-favorites-grid{gap:9px}
.account-surface .profile-favorite-card{flex-basis:230px;border:1px solid rgba(255,255,255,.055);box-shadow:0 10px 24px rgba(0,0,0,.20)}
@media(max-width:1100px){.account-surface .account-hero-inner{grid-template-columns:1fr 1fr}
.account-surface .profile-overview-grid{grid-template-columns:1fr}
.account-surface .profile-account-actions{display:flex}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.account-surface .account-page{padding:10px 10px 20px}
.account-surface .topbar-tabs{max-width:none}
.account-surface .account-hero-inner{display:block;min-height:0}
.account-surface .account-hero-copy{min-height:360px;padding:30px 22px;border-right:0}
.account-surface .account-hero-panel{display:none}
.account-surface .profile-hero{min-height:390px}
.account-surface .profile-hero-inner{min-height:390px;padding:22px 18px;display:block}
.account-surface .profile-identity{position:absolute;left:18px;right:18px;bottom:20px;align-items:flex-end}
.account-surface .profile-avatar-wrap{width:78px;height:78px;border-radius:21px}
.account-surface .profile-avatar{border-radius:17px}
.account-surface .profile-identity-copy h1{font-size:29px}
.account-surface .profile-identity-copy p,.account-surface .profile-identity-meta{display:none}
.account-surface .profile-badges{max-height:42px;overflow:hidden}
.account-surface .profile-hero-actions{margin-top:8px}
.account-surface .profile-playtime-card{display:none}
.account-surface .profile-stats-grid{grid-template-columns:1fr 1fr}
.account-surface .profile-overview-grid{grid-template-columns:1fr}
.account-surface .profile-account-actions{display:grid;grid-template-columns:1fr 1fr}
.account-surface .profile-account-actions .button:last-child{grid-column:1/-1}}
@media(max-width:470px){.account-surface .account-hero-copy h1{font-size:38px}
.account-surface .account-hero-meta{display:none}
.account-surface .profile-stats-grid{grid-template-columns:1fr 1fr}
.account-surface .profile-stat{padding:12px}
.account-surface .profile-stat strong{font-size:19px}
.account-surface .profile-identity{gap:10px}
.profile-hero-actions .button{min-height:32px;padding:0 10px;font-size:8px}}
.footer-bottom{display:flex;align-items:center;gap:8px}
.footer-brand-mark{width:18px;height:18px;object-fit:contain;opacity:.95;filter:drop-shadow(0 3px 8px rgba(0,0,0,.22))}
.public-profile-page .profile-hero{overflow:hidden;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.016));box-shadow:0 20px 48px rgba(0,0,0,.18)}
.public-profile-page .profile-page-content{padding:12px 0 0}
.public-profile-page .profile-stats-grid,.public-profile-page .profile-overview-grid{gap:10px}
.public-profile-page .profile-panel,.public-profile-page .profile-collection-section,.public-profile-page .profile-stat{border:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));box-shadow:0 12px 28px rgba(0,0,0,.14)}
.public-profile-page .profile-collection-section{padding:20px;border-radius:18px}
.public-profile-page .profile-favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.public-profile-page .profile-favorite-card{position:relative;min-height:180px;border-radius:18px;overflow:hidden;display:block}
.public-profile-page .profile-favorite-art,.public-profile-page .profile-favorite-shade{position:absolute;inset:0}
.public-profile-page .profile-favorite-art{background-image:var(--game-art, var(--system-art));background-size:cover;background-position:center;transform:scale(1.03)}
.public-profile-page .profile-favorite-shade{background:linear-gradient(180deg,rgba(5,7,9,.08),rgba(5,7,9,.84))}
.public-profile-page .profile-card-kicker,.public-profile-page .profile-card-logo,.public-profile-page .profile-card-foot{position:relative;z-index:1}
.public-profile-page .profile-card-kicker{position:absolute;left:14px;top:12px;display:inline-flex;align-items:center;padding:6px 8px;border-radius:999px;background:rgba(12,16,14,.52);font-size:7px;font-weight:800;letter-spacing:.16em}
.public-profile-page .profile-card-logo{position:absolute;left:14px;right:14px;top:52px;display:flex;align-items:center;min-height:42px}
.public-profile-page .profile-card-logo img{max-width:76%;max-height:46px;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(0,0,0,.25))}
.public-profile-page .profile-card-fallback{font-size:12px;font-weight:800;line-height:1.15;text-wrap:balance}
.public-profile-page .profile-card-foot{position:absolute;left:14px;right:14px;bottom:12px;display:flex;align-items:flex-end;justify-content:space-between;gap:8px}
.public-profile-page .profile-card-foot strong{font-size:10px;line-height:1.2;max-width:70%}
.public-profile-page .profile-card-foot span{font-size:8px;color:#c8cfca;text-align:right}
.public-profile-page .profile-account-actions{display:flex;flex-wrap:wrap;gap:8px}
.public-profile-page .profile-playtime-card{border:1px solid rgba(255,255,255,.08)}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.footer-brand-mark{width:16px;height:16px}
.public-profile-page .profile-favorites-grid{grid-template-columns:1fr}
.public-profile-page .profile-card-logo img{max-width:68%}}
.profile-hero-character{--profile-accent:#5865f2;background:linear-gradient(135deg,color-mix(in srgb,var(--profile-accent) 58%,#141815),#161a17 68%)}
.profile-color-banner{background:
  radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--profile-accent) 76%,white 12%),transparent 30%),
  radial-gradient(circle at 15% 85%,color-mix(in srgb,var(--profile-accent) 58%,black 18%),transparent 42%),
  linear-gradient(135deg,color-mix(in srgb,var(--profile-accent) 72%,#111 28%),#141815 72%);overflow:hidden}
.profile-color-banner::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.12) 1px,transparent 0);background-size:18px 18px;mask-image:linear-gradient(90deg,transparent,black 45%,black);opacity:.22}
.profile-banner-character{position:absolute;right:4%;bottom:-9%;height:116%;max-width:42%;object-fit:contain;object-position:right bottom;filter:drop-shadow(0 20px 28px rgba(0,0,0,.26));opacity:.62;transform:rotate(2deg)}
.profile-hero-character .profile-banner-shade{background:linear-gradient(90deg,rgba(8,11,9,.88) 0%,rgba(8,11,9,.58) 43%,rgba(8,11,9,.16) 78%),linear-gradient(180deg,rgba(8,11,9,.03),rgba(8,11,9,.75))}
.profile-avatar.profile-avatar-composite{background:var(--avatar-color)!important;background-image:none!important}
.profile-avatar.profile-avatar-composite img{object-fit:contain!important;object-position:center!important}
.profile-avatar.profile-avatar-composite .pr-avatar-fallback{font-size:24px}
.profile-character-form{gap:0}
.profile-edit-dialog{width:min(980px,calc(100vw - 28px));max-width:980px}
.profile-edit-dialog .description-dialog-body{padding:16px}
.profile-edit-dialog .account-form-message{margin-top:12px}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.profile-banner-character{right:-2%;height:92%;max-width:52%;opacity:.42}
.profile-edit-dialog{width:min(94vw,720px)}
.profile-hero-character .profile-banner-shade{background:linear-gradient(180deg,rgba(8,11,9,.10),rgba(8,11,9,.86))}}
.account-entry-v2{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(310px,.72fr);min-height:430px;overflow:hidden;border:1px solid rgba(255,255,255,.085);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.018));box-shadow:0 20px 52px rgba(0,0,0,.18)}
.account-entry-main{position:relative;display:flex;flex-direction:column;justify-content:center;padding:44px 46px;overflow:hidden;border-right:1px solid rgba(255,255,255,.065)}
.account-entry-main::before{content:"";position:absolute;left:-80px;top:-120px;width:310px;height:310px;border-radius:50%;background:rgba(255,255,255,.055);filter:blur(72px);pointer-events:none}
.account-entry-main::after{content:"PR";position:absolute;right:22px;bottom:-38px;font-family:var(--font-display);font-size:190px;font-weight:900;letter-spacing:-.1em;color:rgba(255,255,255,.025);pointer-events:none}
.account-entry-brandline{position:relative;z-index:1;display:flex;align-items:center;gap:9px;font-size:8px;font-weight:850;letter-spacing:.18em;color:#9ba39d}
.account-entry-brandmark{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.06)}
.account-entry-brandmark img{width:21px;height:21px;object-fit:contain}
.account-entry-copy{position:relative;z-index:1;margin-top:28px;max-width:690px}
.account-entry-copy h1{margin:0;font-family:var(--font-display);font-size:clamp(42px,5vw,70px);line-height:.96;letter-spacing:-.065em;text-wrap:balance}
.account-entry-copy h1 span{color:#fff}
.account-entry-copy p{max-width:570px;margin:18px 0 0;color:#aeb6b0;font-size:11px;line-height:1.7}
.account-entry-actions{position:relative;z-index:1;display:flex;gap:8px;margin-top:24px}
.account-entry-stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:590px;margin-top:30px}
.account-entry-stats article{padding:13px 14px;border:1px solid rgba(255,255,255,.055);border-radius:15px;background:rgba(10,13,11,.18)}
.account-entry-stats strong,.account-entry-stats span{display:block}
.account-entry-stats strong{font-size:16px}
.account-entry-stats span{margin-top:2px;color:#838c85;font-size:8px}
.account-entry-side{display:flex;flex-direction:column;padding:28px;background:rgba(10,13,11,.13)}
.account-entry-side-head span{display:block;font-size:7px;font-weight:850;letter-spacing:.17em;color:#838c86}
.account-entry-side-head strong{display:block;margin-top:7px;font-family:var(--font-display);font-size:24px;line-height:1.05;letter-spacing:-.04em}
.account-entry-benefits{display:grid;gap:8px;margin-top:24px}
.account-entry-benefits article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:start;padding:14px;border:1px solid rgba(255,255,255,.055);border-radius:15px;background:rgba(255,255,255,.026)}
.account-entry-benefits b{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#f5f6f4;color:#171a18;font-size:7px}
.account-entry-benefits strong,.account-entry-benefits span{display:block}
.account-entry-benefits strong{font-size:10px}
.account-entry-benefits span{margin-top:4px;color:#88918a;font-size:8px;line-height:1.5}
.account-entry-side-foot{display:flex;align-items:center;gap:7px;margin-top:auto;padding-top:22px;color:#7f8881;font-size:7px}
.account-entry-side-foot i{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px rgba(114,227,155,.08)}
@media(max-width:1050px){.account-entry-v2{grid-template-columns:1fr}
.account-entry-main{border-right:0;border-bottom:1px solid rgba(255,255,255,.055)}
.account-entry-side{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);gap:18px}
.account-entry-benefits{grid-template-columns:repeat(3,1fr);margin-top:0}
.account-entry-side-foot{grid-column:1/-1;margin-top:0;padding-top:0}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.account-entry-v2{min-height:0;border-radius:20px}
.account-entry-main{padding:30px 22px}
.account-entry-main::after{font-size:125px;right:12px}
.account-entry-copy{margin-top:22px}
.account-entry-copy h1{font-size:42px}
.account-entry-copy p{font-size:10px}
.account-entry-stats{margin-top:22px}
.account-entry-side{display:block;padding:18px}
.account-entry-benefits{grid-template-columns:1fr;margin-top:16px}
.account-entry-side-foot{margin-top:15px}
.account-entry-actions .button{flex:1}}
@media(max-width:480px){.account-entry-copy h1{font-size:36px}
.account-entry-stats{grid-template-columns:1fr 1fr}
.account-entry-stats article:last-child{grid-column:1/-1}
.account-entry-actions{display:grid;grid-template-columns:1fr}
.account-entry-main{padding:26px 18px}}
.social-page{padding:12px 18px 24px}
.social-surface .social-page{padding:18px 20px 30px}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.social-surface .social-page{padding:10px 10px 20px}}
.social-glass-panel{border:1px solid rgba(255,255,255,.08);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.022));box-shadow:0 18px 40px rgba(0,0,0,.16)}
.social-room-v2,.friends-room-v2{display:grid;gap:10px;padding:12px 18px 24px}
.social-hero-v2{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:22px}
.social-hero-copy-v2 small,.social-section-head-v2 small,.social-subsection-head-v2{display:block;font-size:8px;font-weight:800;color:#8e9791;letter-spacing:.18em;text-transform:uppercase}
.social-hero-copy-v2 h1{margin:6px 0 8px;font-family:var(--font-display);font-size:32px;letter-spacing:-.05em}
.social-hero-copy-v2 p{max-width:650px;color:#a9b0ac;font-size:10px;line-height:1.65}
.social-hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr));gap:8px;align-self:stretch}
.social-hero-metrics article{display:grid;align-content:center;padding:14px;border-radius:16px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.05)}
.social-hero-metrics strong{font-size:20px}
.social-hero-metrics span{font-size:8px;color:#8c948e}
.social-grid-v2{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:10px}
.social-search-panel-v2,.social-request-panel-v2,.social-leaderboard-v2,.social-friends-panel-v2,.social-activity-panel-v2{padding:18px}
.social-section-head-v2 h2{margin:4px 0 0;font-size:20px}
.social-search-form-v2{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:14px}
.social-search-field-v2{display:flex;align-items:center;height:42px;padding:0 14px;border-radius:14px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.03)}
.social-search-field-v2 input{width:100%;border:0;background:transparent;color:#fff;font-size:10px}
.social-search-results-v2,.social-stack-v2,.social-leader-grid,.social-friend-grid-v2{display:grid;gap:8px;margin-top:12px}
.social-user-card,.social-inline-card,.social-leader-card{border:1px solid rgba(255,255,255,.055);border-radius:18px;background:rgba(255,255,255,.028)}
.social-user-card{position:relative;overflow:hidden;min-height:148px}
.social-user-card-media{position:absolute;inset:0}
.social-user-banner,.social-user-banner-shade{position:absolute;inset:0}
.social-user-banner{background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.02));background-size:cover;background-position:center}
.social-user-banner.has-image{filter:saturate(1.05)}
.social-user-banner-shade{background:linear-gradient(180deg,rgba(5,7,9,.08),rgba(5,7,9,.82))}
.social-user-card-content{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;min-height:148px;padding:14px}
.social-user-line{display:flex;align-items:center;gap:10px;min-width:0}
.social-user-line>div{min-width:0}
.social-user-line strong,.social-user-line span{display:block}
.social-user-line strong{font-size:11px}
.social-user-line span{font-size:8px;color:#b0b7b2}
.social-user-avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;flex:0 0 auto;background:rgba(255,255,255,.08);background-size:cover;background-position:center;overflow:hidden}
.social-user-avatar b{font-size:10px}
.social-user-card-footer{display:flex;justify-content:flex-start;gap:7px;flex-wrap:wrap;margin-top:14px}
.social-card-actions{display:flex;gap:7px;flex-wrap:wrap}
.social-inline-card,.social-leader-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px}
.social-leader-card{grid-template-columns:auto minmax(0,1fr) auto}
.social-leader-rank{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#f5f6f4;color:#141714;font-size:10px;font-weight:900}
.social-leader-main{min-width:0}
.social-leader-action,.social-inline-card .button{justify-self:end}
.social-subsection-head-v2{margin:14px 0 8px}
.social-empty-state{display:grid;place-items:center;min-height:82px;padding:18px;border-radius:16px;border:1px dashed rgba(255,255,255,.08);background:rgba(255,255,255,.02);color:#939b95;font-size:9px;text-align:center}
.friends-layout-v2{grid-template-columns:minmax(0,1.18fr) minmax(290px,.82fr)}
.social-friend-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))}
.social-locked-view{padding:12px 18px 24px}
.social-locked-panel{padding:26px}
.social-locked-panel small{display:block;font-size:8px;font-weight:800;color:#97a099;letter-spacing:.18em}
.social-locked-panel h1{margin:8px 0 10px;font-family:var(--font-display);font-size:34px;letter-spacing:-.05em;max-width:650px}
.social-locked-panel p{max-width:630px;color:#aab2ac;font-size:10px;line-height:1.65}
.social-locked-panel .hero-actions{margin-top:16px}
@media(max-width:1100px){.social-grid-v2,.friends-layout-v2{grid-template-columns:1fr}
.social-friend-grid-v2{grid-template-columns:1fr 1fr}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.social-room-v2,.friends-room-v2,.social-locked-view{padding:10px 10px 18px}
.social-hero-v2{grid-template-columns:1fr;padding:18px}
.social-hero-copy-v2 h1,.social-locked-panel h1{font-size:26px}
.social-hero-metrics{grid-template-columns:repeat(3,1fr)}
.social-search-form-v2{grid-template-columns:1fr}
.social-friend-grid-v2{grid-template-columns:1fr}
.social-inline-card,.social-leader-card{grid-template-columns:1fr;justify-items:start}
.social-leader-action,.social-inline-card .button{justify-self:start;width:auto}
.social-user-card-content{padding:12px}}
@media(max-width:520px){.social-hero-metrics{grid-template-columns:1fr 1fr}
.social-hero-metrics article:last-child{grid-column:1/-1}
.social-user-card{min-height:132px}
.social-user-card-content{min-height:132px}
.social-search-panel-v2,.social-request-panel-v2,.social-leaderboard-v2,.social-friends-panel-v2,.social-activity-panel-v2{padding:14px}}
.social-user-banner{background:linear-gradient(135deg,color-mix(in srgb,var(--social-color,#5865f2) 76%,white 8%),color-mix(in srgb,var(--social-color,#5865f2) 54%,black 28%))!important;overflow:hidden}
.social-user-banner::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 22% 18%,rgba(255,255,255,.26),transparent 36%)}
.social-user-banner>img{position:absolute;z-index:1;right:-2%;bottom:-18%;height:125%;width:58%;object-fit:contain;object-position:right bottom;filter:drop-shadow(0 16px 24px rgba(0,0,0,.28));opacity:.72}
.social-user-avatar.pr-avatar{width:42px;height:42px;border-radius:14px}
.social-user-avatar.pr-avatar .pr-avatar-fallback{font-size:9px}
.social-inline-card .social-user-avatar.pr-avatar{width:38px;height:38px;border-radius:12px}
.social-leader-card .social-user-avatar.pr-avatar{width:40px;height:40px;border-radius:13px}
.downloads-page,.legal-page{padding:16px 18px 24px}
.downloads-hero,.legal-hero{padding:28px;border:1px solid rgba(255,255,255,.07);border-radius:20px;background:rgba(255,255,255,.035);margin-bottom:10px}
.downloads-hero h1,.legal-hero h1{font-family:var(--font-display);font-size:38px;line-height:1;letter-spacing:-.055em;margin:8px 0}
.downloads-hero p,.legal-hero p{max-width:720px;color:#a9b1ab;font-size:10px;line-height:1.65}
.downloads-content{padding:0}
.downloads-game-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;border:1px solid rgba(255,255,255,.07);border-radius:17px;background:rgba(255,255,255,.035)}
.download-kicker{font-size:8px;font-weight:800;color:#8c948e}
.downloads-game-strip h2,.downloads-section-head h2{font-size:18px;margin:4px 0}
.downloads-game-strip p,.downloads-section-head p{color:#909892;font-size:9px;line-height:1.5}
.downloads-section{margin-top:10px;padding:18px;border:1px solid rgba(255,255,255,.07);border-radius:17px;background:rgba(255,255,255,.025)}
.downloads-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:12px}
.downloads-section-head p{max-width:460px}
.download-bios-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.download-bios-card{position:relative;overflow:hidden;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.022));border:1px solid rgba(255,255,255,.075);box-shadow:0 12px 28px rgba(0,0,0,.16);transition:transform .2s var(--ease),border-color .2s ease,box-shadow .2s ease}
.download-bios-card:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.14);box-shadow:0 18px 34px rgba(0,0,0,.24)}
.download-bios-visual{position:relative;min-height:145px;overflow:hidden;background:#141815}
.download-bios-art{position:absolute;inset:0;background:radial-gradient(circle at 72% 22%,rgba(255,255,255,.11),transparent 28%),linear-gradient(135deg,#313833,#151916);background-size:cover;background-position:center;transition:transform .45s var(--ease)}
.download-bios-art.has-artwork{background-image:var(--system-art)!important}
.download-bios-card:hover .download-bios-art{transform:scale(1.025)}
.download-bios-shade{position:absolute;inset:-1px;background:linear-gradient(90deg,rgba(8,11,9,.84),rgba(8,11,9,.34) 58%,rgba(8,11,9,.20)),linear-gradient(180deg,transparent 35%,rgba(0,0,0,.54));pointer-events:none}
.download-bios-system-logo{position:absolute;z-index:2;left:16px;right:16px;bottom:16px;height:54px;display:flex;align-items:flex-end}
.download-bios-system-logo img{max-width:68%;max-height:50px;object-fit:contain;object-position:left bottom;filter:drop-shadow(0 5px 14px rgba(0,0,0,.38))}
.download-bios-system-logo .system-logo-fallback{font-family:var(--font-display);font-size:25px;font-weight:800;letter-spacing:-.045em;text-shadow:0 4px 14px rgba(0,0,0,.45)}
.download-bios-visual-meta{position:absolute;z-index:3;top:11px;left:11px;right:11px;display:flex;justify-content:space-between;gap:8px}
.download-system-chip,.download-file-size{display:inline-flex;min-height:23px;align-items:center;padding:0 8px;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(10,13,11,.52);font-size:7px;font-weight:800;color:#d7dcd8}
.download-bios-body{padding:15px 16px 16px}
.download-bios-copy h3{font-family:var(--font-display);font-size:16px;margin:4px 0 5px;letter-spacing:-.02em}
.download-bios-copy p{min-height:38px;font-size:8px;color:#9da59f;line-height:1.55}
.download-bios-files{display:flex;gap:5px;flex-wrap:wrap;margin:12px 0}
.download-bios-files span{padding:5px 7px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:rgba(255,255,255,.04);font-size:7px;color:#b0b7b2}
.download-bios-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:2px}
.download-bios-button{min-height:34px;padding-inline:12px}
.download-availability{display:flex;align-items:center;gap:5px;color:#7f8781;font-size:7px;text-align:right}
.download-availability::before{content:"";width:6px;height:6px;border-radius:50%;background:#6f7771;box-shadow:0 0 0 3px rgba(255,255,255,.025)}
.download-availability[data-state="ready"]{color:#a6ddb8}
.download-availability[data-state="ready"]::before{background:#72e39b}
.download-availability[data-state="missing"]{color:#ef9aa5}
.download-availability[data-state="missing"]::before{background:#ef7080}
.legal-inner{padding:0}
.legal-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.legal-meta span{padding:6px 8px;border-radius:8px;background:rgba(255,255,255,.05);font-size:7px;color:#929a94}
.legal-layout{display:grid;grid-template-columns:185px minmax(0,1fr);gap:10px}
.legal-nav,.legal-callout,.legal-card{border:1px solid rgba(255,255,255,.07);border-radius:16px;background:rgba(255,255,255,.03)}
.legal-nav{position:sticky;top:10px;align-self:start;padding:12px}
.legal-nav strong{display:block;font-size:7px;color:#8b938d;margin-bottom:6px}
.legal-nav a{display:block;padding:8px 7px;border-radius:8px;color:#a0a7a1;font-size:8px}
.legal-nav a:hover{background:rgba(255,255,255,.06);color:#fff}
.legal-stack{display:grid;gap:8px}
.legal-callout,.legal-card{padding:18px}
.legal-callout strong{font-size:11px}
.legal-callout p,.legal-card p,.legal-card li{font-size:9px;line-height:1.7;color:#a5ada7}
.legal-card section+section{margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.055)}
.legal-card h2{font-size:15px;margin-bottom:6px}
.legal-card ul{list-style:disc;padding-left:16px}
@media(max-width:620px){.download-bios-visual{min-height:132px}
.download-bios-footer{align-items:flex-start;flex-direction:column}
.download-bios-button{width:100%}
.download-availability{text-align:left}}
.downloads-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.7fr);gap:14px;align-items:stretch;padding:0;background:transparent;border:0}
.downloads-hero-copy{padding:30px;border:1px solid rgba(255,255,255,.075);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.018));box-shadow:0 16px 36px rgba(0,0,0,.16)}
.downloads-hero-copy h1{font-family:var(--font-display);font-size:40px;line-height:.98;letter-spacing:-.055em;margin:9px 0 10px}
.downloads-hero-copy p{max-width:690px;color:#adb5af;font-size:10px;line-height:1.65}
.downloads-hero-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}
.downloads-hero-panel{display:grid;grid-template-columns:1fr;gap:7px;padding:9px;border:1px solid rgba(255,255,255,.075);border-radius:20px;background:rgba(255,255,255,.025)}
.downloads-stat{position:relative;overflow:hidden;min-height:82px;padding:13px 15px;border:1px solid rgba(255,255,255,.055);border-radius:14px;background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018))}
.downloads-stat::after{content:"";position:absolute;width:86px;height:86px;right:-32px;top:-36px;border-radius:50%;background:rgba(255,255,255,.035)}
.downloads-stat span,.downloads-stat small{display:block;color:#848d86;font-size:7px}
.downloads-stat strong{display:block;margin:3px 0 1px;font-family:var(--font-display);font-size:22px;letter-spacing:-.035em;color:#f5f6f4}
.downloads-game-strip{position:relative;overflow:hidden;padding:16px 18px}
.downloads-game-icon{width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:#f6f7f5;color:#171a18;display:grid;place-items:center;font-size:18px;font-weight:800;box-shadow:0 8px 20px rgba(0,0,0,.18)}
.downloads-game-strip>div:nth-child(2){margin-right:auto}
.downloads-section{padding:20px;border-radius:19px}
.downloads-section-head{margin-bottom:15px}
.downloads-section-head h2{font-family:var(--font-display);font-size:20px;letter-spacing:-.025em}
@media(max-width:900px){.downloads-hero{grid-template-columns:1fr}
.downloads-hero-panel{grid-template-columns:repeat(3,1fr)}
.downloads-stat{min-height:76px}}
@media(max-width:620px){.downloads-hero-copy{padding:22px 18px}
.downloads-hero-copy h1{font-size:34px}
.downloads-hero-panel{grid-template-columns:1fr 1fr 1fr;gap:5px}
.downloads-stat{padding:11px;min-height:70px}
.downloads-stat strong{font-size:18px}
.downloads-game-strip{display:grid;grid-template-columns:42px 1fr;align-items:start}
.downloads-game-strip .button{grid-column:1/-1;width:100%;margin-top:4px}
.downloads-section{padding:14px}}
@media (max-width:1100px){:root{--sidebar:162px}
.app-stage{padding:20px}
.media-shell{width:calc(100vw - 105px);height:calc(100dvh - 40px);min-height:min(680px,calc(100dvh - 24px))}
.quick-dock{margin-right:10px}
.gamepad-chip{display:none}
.favorite-card-shell,.media-card-shell{flex-basis:220px}
.account-hero-inner{grid-template-columns:1fr}
.account-hero-panel{min-height:250px}
.profile-stats-grid{grid-template-columns:repeat(2,1fr)}
.profile-overview-grid{grid-template-columns:1fr}
.play-layout{grid-template-columns:1fr}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){:root{--topbar:58px}
.app-stage{padding:0}
.quick-dock{display:flex;position:fixed;z-index:80;left:50%;bottom:max(10px,env(safe-area-inset-bottom));width:auto;max-width:calc(100vw - 24px);height:54px;flex-direction:row;gap:5px;margin:0;padding:7px 8px;border-radius:18px;transform:translateX(-50%);background:rgba(27,32,29,.86);box-shadow:0 14px 34px rgba(0,0,0,.34)}
.quick-dock a{width:40px;height:40px;border-radius:12px}
.media-shell{width:100vw;height:100dvh;min-height:0;border:0;border-radius:0;grid-template-columns:1fr;background:#202522}
.media-workspace{height:100dvh}
.library-sidebar{position:fixed;inset:0 auto 0 0;z-index:90;width:min(290px,86vw);transform:translateX(-104%);transition:transform .24s var(--ease);box-shadow:20px 0 50px rgba(0,0,0,.45);padding-top:20px}
.library-sidebar.is-open{transform:none}
.sidebar-showcase{display:flex;margin-top:30px}
.site-header{position:sticky;top:0}
.topbar{padding:0 12px;gap:8px}
.topbar-mobile-brand{display:flex;align-items:center;margin-right:2px}
.topbar-mobile-brand img{width:24px;height:24px}
.history-controls{display:none}
.topbar-tabs{flex:1;margin-right:0}
.topbar-tab{min-height:32px;padding:0 10px}
.community-discord{display:none!important}
.account-chip{width:34px;height:34px;padding:0}
.account-avatar{width:26px;height:26px}
.workspace-scroll{height:calc(100dvh - var(--topbar));padding-bottom:72px}
.home-view,.catalog-view,.emulators-view,.system-view,.game-view,.account-page,.social-page,.downloads-page,.legal-page{padding:10px 10px 18px}
.system-hero{min-height:330px}
.system-hero-inner{min-height:330px}
.game-hero{min-height:360px}
.game-hero-inner{min-height:360px;padding:22px 18px}
.system-hero-inner{padding:22px 18px}
.media-section{padding:0 0 20px}
.favorite-card-shell,.media-card-shell{flex-basis:min(72vw,260px)}
.catalog-toolbar{position:sticky;top:0;grid-template-columns:1fr;padding:7px}
.filter-panel{overflow:hidden}
.system-hero-copy{max-width:86%}
.game-hero-inner{align-items:flex-end}
.game-hero-left{max-width:85%}
.play-layout{padding-top:10px}
.player-stage{aspect-ratio:16/10}
.account-hero-inner{display:block}
.account-hero-copy{min-height:310px}
.account-hero-panel{display:none}
.profile-hero-inner{align-items:flex-end}
.profile-identity{align-items:center}
.profile-playtime-card{display:none}
.profile-avatar-wrap{width:70px;height:70px;border-radius:18px}
.profile-avatar{border-radius:15px}
.profile-identity-copy h1{font-size:27px}
.profile-stats-grid{grid-template-columns:1fr 1fr}
.profile-activity-columns{grid-template-columns:1fr}
.download-bios-grid{grid-template-columns:1fr}
.downloads-game-strip,.downloads-section-head{display:block}
.downloads-game-strip .button{margin-top:12px}
.legal-layout{grid-template-columns:1fr}
.legal-nav{position:static;display:flex;overflow:auto;gap:4px}
.legal-nav strong{display:none}
.legal-nav a{flex:0 0 auto}
.site-footer{padding:20px 12px}
.footer-main{display:block}
.footer-col{flex-wrap:wrap}
.footer-bottom{margin-top:10px}}
@media (max-width:520px){.topbar-tabs{max-width:190px}
.topbar-tab{padding:0 9px}
.system-hero{min-height:320px}
.system-hero-inner{min-height:320px}
.game-hero{min-height:335px}
.game-hero-inner{min-height:335px}
.system-page-logo .fallback,.game-detail-logo-fallback{font-size:31px}
.profile-stats-grid{grid-template-columns:1fr 1fr}
.profile-stat{padding:11px}
.profile-stat strong{font-size:18px}
.account-hero-copy{padding:22px}
.account-hero-copy h1{font-size:34px}
.account-hero-meta{display:none}
.downloads-hero h1,.legal-hero h1{font-size:32px}
.footer-col{gap:10px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
.game-card,.system-card{transform:none!important}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.profile-favorites-grid{padding-right:8px}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.site-footer{padding:18px 12px 22px}
.footer-main{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:9px}
.footer-col:first-child{display:none}
.footer-col{gap:12px;flex-wrap:wrap}
.footer-col a{font-size:8px}
.footer-bottom{width:100%;margin:0;font-size:8px}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.library-sidebar{z-index:112;top:0;bottom:0;height:100dvh;max-height:100dvh;background:linear-gradient(180deg,rgba(28,33,30,.985),rgba(20,25,22,.995));box-shadow:26px 0 70px rgba(0,0,0,.58)}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.quick-dock{max-width:calc(100vw - 14px);gap:4px;padding-inline:7px}
.quick-dock a,.report-dock-button{width:38px;height:38px;flex-basis:38px}}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){.account-chip{border-radius:11px}
.account-avatar{border-radius:8px}}
/* ===== 3.25 · Rendimiento,movimiento y móvil ===== */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
a,button,input,select{touch-action:manipulation}
.workspace-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
@view-transition{navigation:auto}
::view-transition-old(root),::view-transition-new(root){animation-duration:.2s}
/* Ambiente: capa pequeña con blur ampliada por transform (sin blur gigante ni backdrop-filter) */
.app-atmosphere::before,.media-workspace::before{content:"";position:absolute;left:0;top:0;right:auto;bottom:auto;width:20%;height:20%;transform:scale(5);transform-origin:0 0;background-image:var(--ambient-image,none);background-size:cover;background-position:center;filter:blur(9px) saturate(.85) brightness(.5);transition:opacity .6s ease}
/* Superficies translúcidas sin backdrop-filter */
.media-shell{background:rgba(27,32,29,.93);box-shadow:0 24px 60px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.07)}
.site-header{background:rgba(36,41,38,.72)}
.quick-dock{background:rgba(27,32,29,.88)}
.catalog-toolbar{background:rgba(35,40,37,.94)}
.game-system,.system-short-badge,.system-game-count,.feature-carousel-kicker,.recent-activity-card em{background:rgba(12,15,13,.72)}
.feature-carousel-dots,.feature-carousel-counter{background:rgba(11,14,12,.55)}
/* Tarjetas: brillo de barrido + resplandor del color de la consola */
.game-card,.system-card{backface-visibility:hidden}
.game-card::before,.system-card::before{content:"";position:absolute;inset:0;z-index:5;pointer-events:none;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.13) 50%,transparent 62%);transform:translateX(-130%);transition:transform .8s var(--ease)}
.game-card:hover::before,.game-card:focus-visible::before,.system-card:hover::before,.system-card:focus-visible::before{transform:translateX(130%)}
.game-card:hover,.game-card:focus-visible,.system-card:hover,.system-card:focus-visible{border-color:color-mix(in srgb,var(--a,#fff) 55%,rgba(255,255,255,.2));box-shadow:0 18px 38px rgba(0,0,0,.36),0 0 28px -8px color-mix(in srgb,var(--a,#fff) 50%,transparent)}
.button:active{transform:scale(.97)}
/* Entrada escalonada y esqueleto mientras carga el arte */
@keyframes card-in{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
@keyframes shimmer{to{transform:translateX(100%)}}
.content-card-grid>.media-card-shell,.catalog-page-grid>.media-card-shell{animation:card-in .5s var(--ease) both;animation-delay:calc(var(--i,12)*32ms)}
.game-art:not(.has-artwork)::before,.system-card-bg:not(.has-artwork)::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.055) 50%,transparent 70%);transform:translateX(-100%);animation:shimmer 1.5s linear 6}
/* Carrusel: texto escalonado y barra de progreso en el punto activo */
@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes dot-fill{to{transform:scaleX(1)}}
.feature-carousel-slide.is-active .feature-carousel-copy>*{animation:rise .6s var(--ease) both}
.feature-carousel-slide.is-active .feature-carousel-copy>:nth-child(2){animation-delay:.08s}
.feature-carousel-slide.is-active .feature-carousel-copy>:nth-child(3){animation-delay:.16s}
.feature-carousel-slide.is-active .feature-carousel-copy>:nth-child(4){animation-delay:.24s}
.feature-carousel-slide.is-active .feature-carousel-copy>:nth-child(5){animation-delay:.32s}
.feature-carousel-dot{position:relative;overflow:hidden}
.feature-carousel-dot.is-active{background:rgba(255,255,255,.32)}
.feature-carousel-dot.is-active::after{content:"";position:absolute;inset:0;background:#fff;transform:scaleX(1);transform-origin:0 50%}
.feature-carousel.is-timing .feature-carousel-dot.is-active::after{transform:scaleX(0);animation:dot-fill var(--carousel-delay,9s) linear forwards}
/* Táctil: sin efectos de hover,tarjetas con respuesta al toque */
@media (hover:none){
  .game-card:hover,.system-card:hover{transform:none;box-shadow:0 10px 24px rgba(0,0,0,.2)}
  .game-card::before,.system-card::before{display:none}
  .game-card:active,.system-card:active{transform:scale(.975)}
  .feature-carousel-slide-bg,.feature-carousel-slide.is-active .feature-carousel-slide-bg{transition:none;transform:none}
}
@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}
.filter-chip{height:36px}
.pagination-page,.pagination-arrow{min-width:38px;height:38px}}
@media (prefers-reduced-motion:reduce){.game-card::before,.system-card::before{display:none}
.content-card-grid>.media-card-shell,.catalog-page-grid>.media-card-shell{animation:none}}
/* Móvil (vertical y horizontal): texto legible y áreas seguras */
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){
  .media-section-head span,.media-section-head a,.game-open,.system-arrow,.system-era-label,.sidebar-mini-card span,.filter-label,.filter-chip,.pagination-page,.pagination-arrow,.pagination-summary,.topbar-tab,.feature-carousel-meta,.footer-col a,.footer-bottom,.gamepad-chip,.feature-carousel-counter,.sidebar-bottom{font-size:11px}
  .game-system,.system-short-badge,.system-game-count small,.feature-carousel-kicker,.recent-activity-card em{font-size:10px}
  .system-game-count b{font-size:11px}
  .feature-carousel-description{font-size:12px}
  .button{font-size:12px;min-height:40px}
  .site-header{padding-top:env(safe-area-inset-top,0px);flex-basis:calc(var(--topbar) + env(safe-area-inset-top,0px))}
  .workspace-scroll{height:auto;flex:1 1 0;min-height:0}
}
@media (max-height:520px) and (orientation:landscape) and (pointer:coarse){:root{--topbar:50px}
.quick-dock{left:max(8px,env(safe-area-inset-left));top:50%;bottom:auto;transform:translateY(-50%);flex-direction:column;height:auto;width:54px;max-width:none;padding:8px 7px}
.media-shell{padding-left:calc(70px + env(safe-area-inset-left,0px));padding-right:env(safe-area-inset-right,0px)}
.workspace-scroll{padding-bottom:0}
.feature-carousel,.feature-carousel-slide,.feature-carousel-copy{min-height:230px}
.feature-carousel-copy{width:62%;padding:22px 52px 30px 22px;justify-content:center}
.feature-carousel-description{-webkit-line-clamp:2}
.system-hero,.system-hero-inner,.game-hero,.game-hero-inner{min-height:230px}
.content-card-grid,.home-card-grid,.emulator-card-grid,.catalog-page-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.player-stage{aspect-ratio:auto;height:calc(100dvh - 120px)}}
.content-card-grid>:nth-child(1),.catalog-page-grid>:nth-child(1){--i:0}
.content-card-grid>:nth-child(2),.catalog-page-grid>:nth-child(2){--i:1}
.content-card-grid>:nth-child(3),.catalog-page-grid>:nth-child(3){--i:2}
.content-card-grid>:nth-child(4),.catalog-page-grid>:nth-child(4){--i:3}
.content-card-grid>:nth-child(5),.catalog-page-grid>:nth-child(5){--i:4}
.content-card-grid>:nth-child(6),.catalog-page-grid>:nth-child(6){--i:5}
.content-card-grid>:nth-child(7),.catalog-page-grid>:nth-child(7){--i:6}
.content-card-grid>:nth-child(8),.catalog-page-grid>:nth-child(8){--i:7}
.content-card-grid>:nth-child(9),.catalog-page-grid>:nth-child(9){--i:8}
.content-card-grid>:nth-child(10),.catalog-page-grid>:nth-child(10){--i:9}
.content-card-grid>:nth-child(11),.catalog-page-grid>:nth-child(11){--i:10}
.content-card-grid>:nth-child(12),.catalog-page-grid>:nth-child(12){--i:11}
@media (min-width:471px) and (max-width:820px){.feature-carousel-copy{padding-left:56px}}
@media (max-height:520px) and (orientation:landscape) and (pointer:coarse){.feature-carousel-copy{padding-left:58px}}
@media (max-width:820px){.library-sidebar{display:none}}

/* ===== 3.26 · Vida visual, notificaciones, pantalla completa, perfil ===== */
@keyframes orb-a{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(7vw,5vh,0) scale(1.18)}}
@keyframes orb-b{0%,100%{transform:translate3d(0,0,0) scale(1.1)}50%{transform:translate3d(-8vw,-6vh,0) scale(.92)}}
@keyframes page-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes ping{0%{transform:scale(.8);opacity:.9}80%,100%{transform:scale(2.2);opacity:0}}
@keyframes toast-bar{to{transform:scaleX(0)}}
@keyframes sheet-up{from{transform:translateY(100%)}to{transform:none}}

/* Fondo vivo: dos luces de color que se mueven (solo transform, sin blur) */
.app-stage::before,.app-stage::after{content:"";position:fixed;z-index:-1;border-radius:50%;pointer-events:none;will-change:transform}
.app-stage::before{width:70vmax;height:70vmax;left:-26vmax;top:-34vmax;background:radial-gradient(circle,rgba(255,255,255,.06),transparent 62%);animation:none}
.app-stage::after{width:64vmax;height:64vmax;right:-24vmax;bottom:-30vmax;background:radial-gradient(circle,rgba(88,101,242,.17),transparent 62%);animation:orb-b 36s ease-in-out infinite}
.media-shell{position:relative}
.media-shell::after{display:none}
.workspace-scroll>main{animation:page-in .5s var(--ease) both}

/* Marca, títulos y detalles de color */
.brand-name strong{background:none;-webkit-background-clip:initial;background-clip:initial;color:#fff}
.media-section-head h2::before,.profile-section-head h2::before,.catalog-results-head h2::before{content:"";display:inline-block;width:4px;height:.9em;margin-right:9px;border-radius:3px;vertical-align:-.08em;background:linear-gradient(180deg,var(--accent),var(--accent-2))}
.media-section-head a,.profile-section-head a{transition:color .2s ease,transform .2s var(--ease)}
.media-section-head a:hover,.profile-section-head a:hover{color:#fff;transform:translateX(3px)}
.quick-dock a{position:relative}
.quick-dock a.is-active{box-shadow:0 8px 22px rgba(0,0,0,.3),0 0 18px -2px rgba(255,255,255,.35)}
.quick-dock a.is-active::after{content:"";position:absolute;left:-9px;top:50%;width:3px;height:16px;margin-top:-8px;border-radius:3px;background:linear-gradient(180deg,var(--accent),var(--accent-2))}
.topbar-tab.is-active{box-shadow:inset 0 -2px 0 var(--accent)}
.button.primary{background:linear-gradient(135deg,#fff,#e4e8e5);color:#161916;border-color:transparent;transition:transform .18s var(--ease),box-shadow .25s ease,filter .2s ease}
.button.primary:hover{transform:translateY(-1px);box-shadow:0 10px 26px -8px rgba(255,255,255,.34)}
.button.primary:active{transform:scale(.97)}
.feature-carousel{box-shadow:0 22px 50px rgba(0,0,0,.34),0 0 0 1px rgba(255,255,255,.04)}
.feature-carousel-kicker::before{content:"";width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 var(--accent)}
.feature-carousel-slide.is-active .feature-carousel-kicker::before{animation:ping 2s ease-out infinite}
.status-dot{position:relative}
[data-gamepad-status][data-connected="true"] .status-dot::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--success);animation:ping 1.8s ease-out infinite}

/* Tarjetas: color de la consola aunque no haya arte */
.game-art:not(.has-artwork),.system-card-bg:not(.has-artwork){background-image:radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--a,#778) 48%,transparent),transparent 56%),linear-gradient(135deg,color-mix(in srgb,var(--a,#778) 24%,#101312),#0b0e0c)}
.profile-favorite-art{background-image:radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--a,#778) 48%,transparent),transparent 56%),linear-gradient(135deg,color-mix(in srgb,var(--a,#778) 24%,#101312),#0b0e0c)}
.profile-favorite-art.has-artwork{background-image:var(--game-art,var(--system-art))}
.profile-card-logo.has-logo .profile-card-fallback,.profile-card-logo:has(img[data-art-logo]) .profile-card-fallback{display:none}
.profile-favorite-card:has(.profile-card-logo.has-logo) .profile-card-foot strong{display:none}
.profile-favorite-card:has(.profile-card-logo.has-logo) .profile-card-foot{justify-content:flex-end}
.profile-card-logo img{filter:drop-shadow(0 4px 12px rgba(0,0,0,.5))}
.profile-favorite-card{transition:transform .22s var(--ease),border-color .22s ease,box-shadow .22s ease}
.profile-favorite-card::before{content:"";position:absolute;inset:0;z-index:5;pointer-events:none;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.13) 50%,transparent 62%);transform:translateX(-130%);transition:transform .8s var(--ease)}
.profile-favorite-card:hover,.profile-favorite-card:focus-visible{transform:translateY(-3px);outline:none;border-color:color-mix(in srgb,var(--a,#fff) 55%,rgba(255,255,255,.2));box-shadow:0 18px 38px rgba(0,0,0,.36),0 0 26px -8px color-mix(in srgb,var(--a,#fff) 50%,transparent)}
.profile-favorite-card:hover::before{transform:translateX(130%)}
.profile-favorite-art{transition:transform .5s var(--ease)}
.profile-favorite-card:hover .profile-favorite-art{transform:scale(1.04)}
@media (hover:none){.profile-favorite-card::before{display:none}.profile-favorite-card:hover{transform:none}}

/* ===== Notificaciones ===== */
.pr-toasts{position:fixed;z-index:3000;right:max(16px,env(safe-area-inset-right));top:max(16px,env(safe-area-inset-top));display:flex;flex-direction:column;gap:10px;width:min(380px,calc(100vw - 32px));pointer-events:none}
.pr-toast{--tone:#8fb3ff;position:relative;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 10px 16px 13px;border:1px solid color-mix(in srgb,var(--tone) 34%,rgba(255,255,255,.07));border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--tone) 17%,#1e2420),#161a18 72%);box-shadow:0 18px 40px rgba(0,0,0,.5),0 0 30px -12px var(--tone);color:#f3f5f3;pointer-events:auto;opacity:0;transform:translate3d(32px,0,0) scale(.96);transition:opacity .26s ease,transform .38s cubic-bezier(.2,.9,.25,1.12)}
.pr-toast.is-in{opacity:1;transform:none}
.pr-toast.is-out{opacity:0;transform:translate3d(32px,0,0) scale(.96);transition-duration:.22s}
.pr-toast[data-type="success"]{--tone:#72e39b}.pr-toast[data-type="error"]{--tone:#ff5b6e}.pr-toast[data-type="warn"]{--tone:#ffd36c}
.pr-toast-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;color:var(--tone);background:color-mix(in srgb,var(--tone) 17%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tone) 28%,transparent)}
.pr-toast-icon svg{width:18px;height:18px}
.pr-toast-copy{display:grid;gap:2px;min-width:0}
.pr-toast-copy strong{font-size:13px;font-weight:700;letter-spacing:-.01em}
.pr-toast-copy span{font-size:12px;line-height:1.4;color:#b9c0bb;overflow-wrap:anywhere}
.pr-toast-close{width:28px;height:28px;border:0;border-radius:9px;background:transparent;color:#8d958f;font-size:18px;line-height:1;transition:background .18s ease,color .18s ease}
.pr-toast-close:hover{background:rgba(255,255,255,.08);color:#fff}
.pr-toast-bar{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--tone);transform-origin:0 50%;animation:toast-bar var(--toast-time,3400ms) linear forwards}
.pr-toast.is-paused .pr-toast-bar{animation-play-state:paused}
@media (max-width:820px){.pr-toasts{left:50%;right:auto;transform:translateX(-50%);top:max(10px,env(safe-area-inset-top))}.pr-toast{transform:translate3d(0,-24px,0) scale(.96)}.pr-toast.is-out{transform:translate3d(0,-24px,0) scale(.96)}}
@media (prefers-reduced-motion:reduce){.pr-toast,.pr-toast.is-out{transition:opacity .01s}.pr-toast-bar{animation:none}}

/* Mensajes del reproductor */
.player-actions .message{display:flex;align-items:flex-start;gap:10px;width:100%;padding:12px 14px;border:1px solid rgba(255,211,108,.3);border-radius:14px;background:linear-gradient(135deg,rgba(255,211,108,.12),rgba(255,211,108,.04));color:#f1e6c4;font-size:13px;line-height:1.5}
.player-actions .message::before{content:"!";flex:0 0 22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#ffd36c;color:#2a2410;font-weight:900;font-size:13px}
.player-actions .message[data-type="error"]{border-color:rgba(255,255,255,.18);background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.025));color:#e6e9e7}
.player-actions .message[data-type="error"]::before{background:#ff5b6e;color:#2b0b10}

/* ===== Pantalla completa del reproductor ===== */
html.player-fs-lock,html.player-fs-lock body{overflow:hidden;overscroll-behavior:none}
body.player-fullscreen-fallback .quick-dock,body.player-fullscreen-fallback .site-header,body.player-fullscreen-fallback .media-shell::after,body.player-fullscreen-fallback .pr-toasts{display:none}
body.player-fullscreen-fallback .workspace-scroll{overflow:hidden}
body.player-fullscreen-fallback .app-stage::before,body.player-fullscreen-fallback .app-stage::after{display:none}
.player-stage.is-mobile-fullscreen{position:fixed;inset:0;z-index:5000;width:100vw;height:100vh;height:100dvh;aspect-ratio:auto;border-radius:0;background:#000}
.player-stage.is-mobile-fullscreen #game{inset:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}
.player-stage:fullscreen{width:100vw;height:100dvh;aspect-ratio:auto;background:#000}
.player-stage:-webkit-full-screen{width:100vw;height:100%;aspect-ratio:auto;background:#000}
.player-fullscreen-button{display:inline-flex;align-items:center;gap:7px;min-width:36px;height:36px;padding:0 12px;font-size:12px;font-weight:700;background:rgba(10,13,11,.7);transition:opacity .2s ease,transform .18s var(--ease),background .2s ease}
.player-fullscreen-button:active{transform:scale(.94)}
.player-stage.is-mobile-fullscreen .player-fullscreen-button,.player-stage:fullscreen .player-fullscreen-button{top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));width:40px;height:40px;padding:0;justify-content:center;border-radius:50%;opacity:.45;font-size:16px}
.player-stage.is-mobile-fullscreen .player-fullscreen-button:hover,.player-stage:fullscreen .player-fullscreen-button:hover{opacity:1}
.player-stage.is-mobile-fullscreen [data-fullscreen-text],.player-stage:fullscreen [data-fullscreen-text]{display:none}
@media (max-width:820px){.player-fullscreen-button [data-fullscreen-text]{display:none}.player-fullscreen-button{width:38px;padding:0;justify-content:center;font-size:16px}}
@media (max-width:820px) and (orientation:portrait){body[data-game-system="nds"] .player-stage:not(.is-mobile-fullscreen){aspect-ratio:3/4}}

/* ===== Información del juego visible en móvil ===== */
@media (max-width:1100px){
  .game-data{display:block!important}
  .game-data-title{font-size:11px;margin-bottom:12px}
  .game-data dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .game-data dl>div{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:12px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(255,255,255,.035)}
  .game-data dl>div:first-child,.game-data dl>div[data-meta-row="genre"]{grid-column:1/-1}
  .game-data dt{font-size:10px;letter-spacing:.08em;text-transform:uppercase}
  .game-data dd{font-size:14px;font-weight:600;line-height:1.35}
  .game-data .is-empty dd{color:#7c847e;font-weight:500}
}
@media (max-width:820px){
  .game-hero-inner{flex-direction:column;align-items:stretch;justify-content:flex-end;gap:14px}
  .game-hero-left{max-width:100%;align-self:stretch}
  .hero-description{display:block!important;align-self:stretch;width:100%;padding:13px 14px}
  .hero-description p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:13px}
  .hero-description-kicker{font-size:10px}
  .description-more{font-size:12px;min-height:34px}
}

/* ===== Perfil: hero, estadísticas y paneles ===== */
.profile-avatar-wrap{position:relative;isolation:isolate;background:transparent}
@property --ang{syntax:"<angle>";initial-value:0deg;inherits:false}@keyframes ring{to{--ang:360deg}}
.profile-avatar-wrap::before{content:"";position:absolute;inset:-3px;z-index:-1;border-radius:inherit;background:conic-gradient(from var(--ang),#f7f8f6,var(--profile-accent,#8b938e),#747c77,#f7f8f6);animation:ring 8s linear infinite;opacity:.95}
.profile-avatar-wrap::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit}
.profile-avatar-wrap::after{background:#131714}
.profile-hero-character{box-shadow:0 24px 60px -20px color-mix(in srgb,var(--profile-accent) 55%,transparent),0 20px 48px rgba(0,0,0,.28)}
.profile-hero-inner h1,.profile-identity-copy h1{letter-spacing:-.04em;text-shadow:0 4px 24px rgba(0,0,0,.45)}
.profile-kicker{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;background:rgba(10,13,11,.5);letter-spacing:.14em}
.profile-kicker span{width:6px;height:6px;border-radius:50%;background:var(--success);animation:ping 2s ease-out infinite}
.profile-playtime-card{position:relative;background:linear-gradient(145deg,rgba(20,24,21,.74),rgba(14,17,15,.62));border-color:color-mix(in srgb,var(--profile-accent,#5865f2) 40%,rgba(255,255,255,.1))}
.profile-playtime-value strong{font-size:38px;letter-spacing:-.05em;background:linear-gradient(180deg,#fff,#c9d0cb);-webkit-background-clip:text;background-clip:text;color:transparent}
.profile-stats-grid{gap:10px}
.account-surface .profile-stat,.profile-stat{--tone:#d9ddda;position:relative;overflow:hidden;padding:16px 16px 15px;border-radius:18px;border:1px solid rgba(255,255,255,.07);background:linear-gradient(160deg,color-mix(in srgb,var(--tone) 11%,rgba(255,255,255,.04)),rgba(255,255,255,.02) 70%);transition:transform .22s var(--ease),border-color .22s ease,box-shadow .22s ease}
.profile-stat:nth-child(2),.profile-stat:nth-child(3),.profile-stat:nth-child(4){--tone:#d9ddda}
.profile-stat::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:var(--tone)}
.profile-stat:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--tone) 40%,rgba(255,255,255,.1));box-shadow:0 16px 34px -14px color-mix(in srgb,var(--tone) 55%,#000)}
.profile-stat span{font-size:10px;letter-spacing:.1em;font-weight:800}
.account-surface .profile-stat strong,.profile-stat strong{font-size:28px;letter-spacing:-.04em;margin:7px 0 4px}
.profile-stat small{font-size:11px}
.account-surface .profile-panel,.profile-panel{border-radius:20px;border:1px solid rgba(255,255,255,.07);background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018))}
.profile-panel-head span,.profile-section-head span{font-size:10px;letter-spacing:.14em;font-weight:800;color:#8c958e}
.profile-panel-head h2,.account-surface .profile-section-head h2{font-size:19px;letter-spacing:-.03em}
.profile-section-head em{font-style:normal;background:linear-gradient(90deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}
.profile-section-head a{font-size:11px}
.profile-activity-title span{font-size:10px}
.account-surface .profile-activity-item{border-radius:14px;transition:transform .2s var(--ease),background .2s ease,border-color .2s ease}
.profile-activity-item:hover{transform:translateX(4px);background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12)}
.profile-activity-copy small{font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--accent-2)}
.profile-activity-copy strong{font-size:13px}.profile-activity-copy em{font-size:11px;font-style:normal;color:#8f9891}
.profile-account-list dt{font-size:10px}.profile-account-list dd{font-size:13px}
.profile-session-pill{font-size:9px;padding:5px 9px;border-radius:999px;background:rgba(114,227,155,.12);color:var(--success);font-weight:800;letter-spacing:.1em}
.account-surface .profile-collection-section{border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012))}
.profile-card-kicker{font-size:10px;padding:4px 8px;border-radius:8px;background:rgba(10,13,11,.62);top:10px;left:10px}
.profile-card-foot{font-size:11px}
.profile-card-foot strong{font-size:12px}
.profile-card-fallback{font-size:14px}
@media (max-width:820px){
  .account-surface .profile-hero,.account-surface .profile-hero-inner{min-height:330px}
  .profile-stat strong{font-size:22px}
  .profile-stat span,.profile-stat small{font-size:10px}
  .profile-hero-actions .button{min-height:40px;font-size:12px;padding:0 14px}
  .profile-favorite-card{flex-basis:min(74vw,250px)}
  .profile-card-foot,.profile-card-foot strong{font-size:12px}
}

/* ===== Editor de perfil: compacto y profesional ===== */
.profile-edit-modal .description-modal-backdrop{backdrop-filter:blur(8px) brightness(.6);-webkit-backdrop-filter:blur(8px) brightness(.6)}
.profile-edit-dialog{display:flex;flex-direction:column;width:min(860px,calc(100vw - 32px));max-height:min(680px,calc(100dvh - 32px));overflow:hidden;border-radius:24px;background:linear-gradient(180deg,#2a302c,#202522);border-color:rgba(255,255,255,.12)}
.profile-edit-dialog .description-dialog-head{flex:0 0 auto;align-items:center;padding:16px 18px 12px;border-bottom:1px solid rgba(255,255,255,.06)}
.profile-edit-dialog .description-dialog-head span{font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--accent-2)}
.profile-edit-dialog .description-dialog-head h2{font-size:20px;letter-spacing:-.03em;margin-top:2px}
.profile-edit-dialog .description-close{width:36px;height:36px;border-radius:12px}
.profile-edit-dialog .description-dialog-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px 18px 0;scrollbar-width:thin}
.profile-edit-form{display:flex;flex-direction:column}
.profile-character-editor{grid-template-columns:200px minmax(0,1fr);gap:14px;align-items:start}
.profile-edit-dialog .profile-avatar-preview-panel{top:0;gap:10px;padding:12px;border-radius:18px;text-align:center;justify-items:center;background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.015))}
.profile-edit-dialog .profile-avatar-preview{width:128px;border-radius:30px;box-shadow:0 0 0 3px rgba(255,255,255,.1),0 16px 32px rgba(0,0,0,.35)}
.profile-edit-dialog .profile-avatar-preview-copy strong{font-size:13px}
.profile-edit-dialog .profile-avatar-preview-copy span{font-size:11px}
.profile-editor-section{padding:12px;border:1px solid rgba(255,255,255,.06);border-radius:16px;background:rgba(255,255,255,.02)}
.profile-editor-section+.profile-editor-section{margin-top:10px}
.profile-editor-label{margin-bottom:9px}
.profile-editor-label span{font-size:10px}.profile-editor-label small{font-size:10px}
.profile-character-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;max-height:200px;padding:2px 4px 4px 1px}
.profile-character-option{border-radius:13px}
.profile-color-row{grid-template-columns:minmax(0,1fr) 200px;gap:8px}
.profile-color-palette{gap:6px;padding:8px}
.profile-color-swatch{width:26px;height:26px;border-radius:9px}
.profile-color-custom-copy strong{font-size:11px}.profile-color-custom-copy small{font-size:10px}.profile-color-hex{font-size:11px;height:28px}
.profile-transform-grid{gap:6px}
.profile-transform-control{padding:8px 10px;border-radius:12px}
.profile-transform-head{margin-bottom:6px}
.profile-transform-head span{font-size:11px}.profile-transform-head output{font-size:11px}
.profile-transform-control input[type="range"]{accent-color:var(--accent);height:18px}
.profile-transform-reset{margin-top:8px;min-height:32px;font-size:10px;border-radius:10px}
.profile-edit-dialog .profile-editor-actions{position:sticky;bottom:0;z-index:5;margin:14px -18px 0;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(0deg,#222723 72%,rgba(34,39,35,0));border-top:1px solid rgba(255,255,255,.06)}
.profile-edit-dialog .profile-editor-actions .button{min-height:40px;font-size:13px}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){
  .profile-edit-modal{align-items:end;padding:0}
  .profile-edit-modal.is-open .profile-edit-dialog{animation:sheet-up .34s var(--ease) both}
  .profile-edit-dialog{width:100%;max-width:none;max-height:92dvh;border-radius:24px 24px 0 0;border-bottom:0}
  .profile-edit-dialog::before{content:"";display:block;flex:0 0 4px;width:38px;height:4px;margin:8px auto 0;border-radius:4px;background:rgba(255,255,255,.22)}
  .profile-edit-dialog .description-dialog-head{padding:10px 16px 10px}
  .profile-edit-dialog .description-dialog-head h2{font-size:18px}
  .profile-edit-dialog .description-dialog-body{padding:12px 14px 0}
  .profile-character-editor{grid-template-columns:1fr;gap:10px}
  .profile-edit-dialog .profile-avatar-preview-panel{position:static;grid-template-columns:78px minmax(0,1fr);justify-items:start;align-items:center;text-align:left;padding:10px}
  .profile-edit-dialog .profile-avatar-preview{width:78px;border-radius:22px;font-size:26px}
  .profile-edit-dialog .profile-avatar-preview-copy span{font-size:12px}
  .profile-editor-section{padding:10px}
  .profile-character-grid{grid-template-columns:repeat(5,minmax(0,1fr));max-height:176px}
  .profile-color-row{grid-template-columns:1fr}
  .profile-color-swatch{width:30px;height:30px}
  .profile-transform-grid{grid-template-columns:1fr;gap:5px}
  .profile-transform-control{display:grid;grid-template-columns:62px minmax(0,1fr) 44px;align-items:center;gap:8px;padding:6px 10px}
  .profile-transform-head{display:contents}
  .profile-transform-head span{order:1}.profile-transform-control input[type="range"]{order:2}.profile-transform-head output{order:3;min-width:0}
  .profile-transform-control input[type="range"]{height:28px}
  .profile-edit-dialog .profile-editor-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:8px;margin:12px -14px 0;padding:10px 14px calc(10px + env(safe-area-inset-bottom))}
}
@media (max-height:520px) and (orientation:landscape) and (pointer:coarse){
  .profile-edit-dialog{max-height:100dvh;border-radius:18px 18px 0 0}
  .profile-character-editor{grid-template-columns:150px minmax(0,1fr)}
  .profile-edit-dialog .profile-avatar-preview-panel{grid-template-columns:1fr;justify-items:center;text-align:center}
  .profile-edit-dialog .profile-avatar-preview{width:88px}
  .profile-edit-dialog .profile-avatar-preview-copy span{display:none}
}
.description-modal-backdrop{backdrop-filter:blur(10px) saturate(.8) brightness(.6);-webkit-backdrop-filter:blur(10px) saturate(.8) brightness(.6)}

.profile-playtime-value{display:flex;align-items:baseline;gap:5px;margin:8px 0 6px}
.profile-playtime-value span{font-size:13px;font-weight:700;color:#9aa19c;margin-right:8px}
.profile-playtime-card p{font-size:12px;line-height:1.5;color:#aab1ac;margin-bottom:12px}
.profile-playtime-head span,.profile-playtime-head b{font-size:10px;letter-spacing:.12em}
.profile-playtime-foot{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#8f9891;padding-top:10px;border-top:1px solid rgba(255,255,255,.07)}
.player-stage.is-mobile-fullscreen .player-fullscreen-button,.player-stage:fullscreen .player-fullscreen-button{opacity:.7;background:rgba(10,13,11,.78);border-color:rgba(255,255,255,.22)}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){
  .profile-editor-label small{display:none}
  .profile-color-custom{grid-template-columns:44px minmax(0,1fr);padding:8px 10px}
  .profile-color-custom-copy small{display:none}
  .profile-color-custom-copy{display:flex;align-items:center;gap:10px}
  .profile-color-custom-copy strong{font-size:12px;white-space:nowrap}
  .profile-color-hex{margin-top:0;height:36px;font-size:16px}
  .profile-color-picker-wrap{width:44px;height:36px;border-radius:10px}
}
.profile-character-grid{max-height:168px}
.profile-color-swatch{width:24px;height:24px;border-radius:8px}
.profile-color-palette{gap:5px;padding:7px 8px}
.profile-editor-section{padding:10px 12px}
@media (max-width:820px){
  .quick-dock a.is-active::after{left:50%;top:auto;bottom:-6px;width:16px;height:3px;margin:0 0 0 -8px}
  .profile-stat strong{font-size:clamp(17px,5.6vw,22px);white-space:nowrap}
  .profile-character-grid{max-height:176px}
  .profile-color-swatch{width:30px;height:30px}
}
@media (hover:hover){.home-system-carousel{cursor:grab}}
.home-system-carousel.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.home-system-carousel.is-dragging a{pointer-events:none}

/* ===== 3.27 · Final visual polish: neutral UI + dynamic library color ===== */
:root{
  --accent:#f5f6f4;
  --accent-2:#aeb5b0;
  --ambient-a:#7d8580;
  --ambient-b:#4c544f;
}

/* Remove CRT / TV scanlines and the fixed pink/blue animated backdrop. */
.media-shell::after{display:none!important}
.app-stage::before,.app-stage::after{animation:none!important;will-change:auto;transition:background .35s ease,opacity .35s ease}
.app-stage::before{width:72vmax;height:72vmax;left:-30vmax;top:-38vmax;background:radial-gradient(circle,color-mix(in srgb,var(--ambient-a) 24%,transparent),transparent 64%);opacity:.75}
.app-stage::after{width:66vmax;height:66vmax;right:-26vmax;bottom:-34vmax;background:radial-gradient(circle,color-mix(in srgb,var(--ambient-b) 22%,transparent),transparent 64%);opacity:.72}
.brand-name strong{background:none!important;-webkit-background-clip:initial;background-clip:initial;color:#fff!important}
.media-section-head h2::before,.profile-section-head h2::before,.catalog-results-head h2::before{background:#f3f5f3!important}
.profile-section-head em{background:none!important;-webkit-background-clip:initial;background-clip:initial;color:#f4f6f4!important}
.quick-dock a.is-active::after{background:#f5f6f4!important;box-shadow:0 0 12px rgba(255,255,255,.32)}
.topbar-tab.is-active{box-shadow:inset 0 -2px 0 rgba(255,255,255,.72)!important}
.button.primary:hover,.button.accent:hover{box-shadow:0 10px 26px -8px rgba(255,255,255,.34)!important}
.feature-carousel-kicker::before{background:#f5f6f4!important;box-shadow:0 0 0 0 rgba(255,255,255,.55)!important}
.profile-activity-copy small{color:#aeb5b0!important}
.profile-edit-dialog .description-dialog-head span{color:#b9c0bb!important}
.profile-transform-control input[type="range"]{accent-color:#f5f6f4!important}

/* Card focus follows each console/game palette. */
.game-card,.system-card{transition:transform .22s var(--ease),box-shadow .24s ease,border-color .24s ease}
.game-card:hover,.game-card:focus-visible,.system-card:hover,.system-card:focus-visible,.game-card.gamepad-hover,.system-card.gamepad-hover{
  outline:none;
  border-color:color-mix(in srgb,var(--a,#fff) 48%,rgba(255,255,255,.16));
  box-shadow:0 18px 38px rgba(0,0,0,.34),0 0 32px -8px color-mix(in srgb,var(--a,#fff) 62%,transparent),0 0 20px -12px color-mix(in srgb,var(--b,#fff) 70%,transparent);
}
.profile-favorite-card:hover,.profile-favorite-card:focus-visible{
  border-color:color-mix(in srgb,var(--a,#fff) 48%,rgba(255,255,255,.16));
  box-shadow:0 18px 38px rgba(0,0,0,.34),0 0 32px -8px color-mix(in srgb,var(--a,#fff) 62%,transparent),0 0 20px -12px color-mix(in srgb,var(--b,#fff) 70%,transparent);
}

/* If SteamGridDB has no hero/grid, an icon is still used as a clean fallback. */
.game-art.has-icon-artwork{background-image:radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--a,#777) 28%,transparent),transparent 56%),var(--game-art)!important;background-size:cover,46%!important;background-repeat:no-repeat!important;background-position:center!important}
.system-card-bg.has-icon-artwork{background-image:radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--a,#777) 28%,transparent),transparent 56%),var(--system-art)!important;background-size:cover,46%!important;background-repeat:no-repeat!important;background-position:center!important}
.profile-favorite-art.has-icon-artwork{background-image:radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--a,#777) 28%,transparent),transparent 56%),var(--game-art,var(--system-art))!important;background-size:cover,46%!important;background-repeat:no-repeat!important;background-position:center!important}

/* One responsive favorite grid everywhere: own profile and public profiles. */
.profile-favorites-grid,.account-surface .profile-favorites-grid,.public-profile-page .profile-favorites-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  overflow:visible!important;
  padding:0!important;
  scroll-snap-type:none!important;
}
.profile-favorite-card,.account-surface .profile-favorite-card,.public-profile-page .profile-favorite-card{
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  flex:none!important;
  aspect-ratio:1.68!important;
  border-radius:16px!important;
  border:1px solid rgba(255,255,255,.065);
}
.public-profile-page .profile-favorite-art{transform:none!important}
.profile-card-logo{top:auto!important;left:12px!important;right:12px!important;bottom:30px!important;height:42px!important;align-items:flex-end!important}
.profile-card-logo img{max-width:72%!important;max-height:40px!important;object-position:left bottom!important}
.profile-card-foot{left:12px!important;right:12px!important;bottom:10px!important}
@media(max-width:1180px){.profile-favorites-grid,.account-surface .profile-favorites-grid,.public-profile-page .profile-favorites-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:820px){.profile-favorites-grid,.account-surface .profile-favorites-grid,.public-profile-page .profile-favorites-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}}
@media(max-width:430px){.profile-favorites-grid,.account-surface .profile-favorites-grid,.public-profile-page .profile-favorites-grid{grid-template-columns:1fr!important}}

/* Profile hero: editable solid-color banner and cleaner top controls. */
.profile-hero-character{--profile-banner:#303632;background:linear-gradient(135deg,color-mix(in srgb,var(--profile-banner) 88%,#111512),#151917 76%)!important}
.profile-color-banner{background:radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--profile-banner) 70%,white 10%),transparent 34%),radial-gradient(circle at 16% 88%,color-mix(in srgb,var(--profile-banner) 72%,black 18%),transparent 46%),linear-gradient(135deg,color-mix(in srgb,var(--profile-banner) 92%,#111 8%),#151917 78%)!important}
.profile-color-banner::before{opacity:.10!important;background-size:24px 24px!important}
.profile-banner-character{display:none!important}
.profile-hero-toolbar{position:absolute;z-index:7;left:24px;right:24px;top:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}
.profile-hero-toolbar>*{pointer-events:auto}
.profile-hero-toolbar .profile-kicker{margin:0;background:rgba(10,13,11,.46);backdrop-filter:blur(10px)}
.profile-hero-edit{min-height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(14,18,15,.54);color:#f5f6f4;font-size:9px;font-weight:800;backdrop-filter:blur(12px);transition:background .18s ease,transform .18s var(--ease)}
.profile-hero-edit:hover,.profile-hero-edit:focus-visible{background:rgba(255,255,255,.13);transform:translateY(-1px);outline:none}
.profile-hero-inner{padding-top:72px!important}
.profile-identity-copy>.profile-kicker,.profile-hero-actions{display:none!important}
.profile-kicker span{background:#f5f6f4!important;animation:none!important;box-shadow:0 0 10px rgba(255,255,255,.32)}

/* Animated frame uses the same implementation on own + public profile and header avatar. */
.profile-avatar-wrap::before{background:conic-gradient(from var(--ang),#f7f8f6,var(--profile-accent,#8b938e),#747c77,#f7f8f6)!important;animation:ring 7s linear infinite!important}
.public-profile-page .profile-avatar-wrap::before{animation:ring 7s linear infinite!important}
.account-chip{position:relative;isolation:isolate;width:40px;height:40px;padding:3px;border-radius:13px;background:conic-gradient(from var(--ang),#f7f8f6,var(--account-accent,#8b938e),#747c77,#f7f8f6)!important;animation:ring 7s linear infinite!important;box-shadow:0 8px 20px rgba(0,0,0,.22)}
.account-chip:hover{background:conic-gradient(from var(--ang),#fff,var(--account-accent,#8b938e),#8c948f,#fff)!important}
.account-avatar{width:34px!important;height:34px!important;border-radius:9px!important;border:2px solid #252b28;background-color:#252b28}

/* Unified profile information cards: neutral ProRetro palette. */
.account-surface .profile-stat,.profile-stat,.public-profile-page .profile-stat{--tone:#d9ddda!important;padding:16px 17px!important;border-radius:17px!important;border:1px solid rgba(255,255,255,.075)!important;background:linear-gradient(160deg,rgba(255,255,255,.055),rgba(255,255,255,.018) 72%)!important;box-shadow:none!important}
.profile-stat:nth-child(2),.profile-stat:nth-child(3),.profile-stat:nth-child(4){--tone:#d9ddda!important}
.profile-stat::before{background:#d9ddda!important;opacity:.72}
.profile-stat:hover{border-color:rgba(255,255,255,.14)!important;box-shadow:0 14px 30px rgba(0,0,0,.18)!important}
.profile-stat span{color:#929a94!important}.profile-stat small{color:#838c85!important}
.public-profile-page .profile-panel,.public-profile-page .profile-collection-section{box-shadow:none!important}

/* Activity artwork is a square SteamGridDB icon, with grid art as fallback. */
.profile-activity-item{grid-template-columns:48px minmax(0,1fr)!important;min-height:62px!important;gap:10px!important}
.profile-activity-thumb{width:48px!important;height:48px!important;aspect-ratio:1;border-radius:11px!important;background:#1b201d;background-size:cover!important;background-position:center!important;flex:0 0 48px}
.profile-activity-thumb img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;padding:4px}
.profile-activity-thumb.has-art{background-size:cover!important}
.profile-activity-thumb.has-icon{box-shadow:inset 0 0 0 1px rgba(255,255,255,.055)}

/* Help button + compact help panel. */
.report-dock-button .help-mark,.report-fab .help-mark{font-family:var(--font-display);font-size:20px!important;font-weight:700;line-height:1;color:currentColor}
.report-dialog{width:min(680px,calc(100vw - 28px))!important}
.help-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:14px 20px 0}
.help-shortcuts button{min-height:74px;padding:11px;text-align:left;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.035);color:#f3f5f3;transition:background .18s ease,border-color .18s ease,transform .18s var(--ease)}
.help-shortcuts button:hover,.help-shortcuts button:focus-visible{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.14);transform:translateY(-1px);outline:none}
.help-shortcuts strong,.help-shortcuts span{display:block}.help-shortcuts strong{font-size:9px}.help-shortcuts span{margin-top:4px;color:#8e9790;font-size:7px;line-height:1.45}
@media(max-width:620px){.help-shortcuts{grid-template-columns:1fr;padding:10px 14px 0}.help-shortcuts button{min-height:58px}}
.profile-edit-dialog .profile-avatar-preview-panel{--preview-banner:#303632;background:radial-gradient(circle at 82% 12%,color-mix(in srgb,var(--preview-banner) 58%,white 12%),transparent 42%),linear-gradient(145deg,color-mix(in srgb,var(--preview-banner) 64%,#252a27),rgba(255,255,255,.015))!important}


/* 3.28 polish: avatar-aware frames, cleaner editor, artwork-based ambient and banner frames. */
.pr-avatar,.pr-avatar-host{background:linear-gradient(160deg,var(--avatar-color),color-mix(in srgb,var(--avatar-banner,#303632) 26%,var(--avatar-color)))}
.pr-avatar-backdrop{background:radial-gradient(circle at 28% 20%,color-mix(in srgb,var(--avatar-ring-a,#fff) 40%,white 8%),transparent 42%),linear-gradient(145deg,rgba(255,255,255,.10),rgba(0,0,0,.14));pointer-events:none}
.account-avatar,.account-avatar.pr-avatar-host{border-radius:10px!important}
.account-chip{background:conic-gradient(from var(--ang),#f7f8f6,var(--account-accent,#8b938e),var(--account-accent-2,#747c77),var(--account-accent-3,#49504b),#f7f8f6)!important}
.account-chip::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 0 1px rgba(255,255,255,.08) inset,0 0 18px color-mix(in srgb,var(--account-accent,#8b938e) 26%,transparent);pointer-events:none}
.profile-avatar-wrap::before{background:conic-gradient(from var(--ang),#f7f8f6,var(--profile-accent,#8b938e),var(--profile-accent-2,#747c77),var(--profile-accent-3,#49504b),#f7f8f6)!important;animation:ring 7s linear infinite!important}
.profile-avatar-wrap::after{background:color-mix(in srgb,var(--profile-banner,#303632) 42%,#131714)!important}
.profile-hero-character{background:linear-gradient(135deg,color-mix(in srgb,var(--profile-banner,#303632) 90%,#111512),#151917 76%)!important}
.profile-color-banner{background:radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--profile-banner,#303632) 68%,white 10%),transparent 34%),radial-gradient(circle at 16% 88%,color-mix(in srgb,var(--profile-accent,#5865f2) 32%,transparent),transparent 48%),linear-gradient(135deg,color-mix(in srgb,var(--profile-banner,#303632) 92%,#111 8%),#151917 78%)!important}
.profile-playtime-card{box-shadow:0 18px 34px rgba(0,0,0,.18),0 0 0 1px color-mix(in srgb,var(--profile-accent,#5865f2) 22%,rgba(255,255,255,.08)) inset}
.social-user-card,.social-inline-card,.social-leader-card{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));overflow:hidden}
.social-user-card{box-shadow:0 12px 28px rgba(0,0,0,.14),0 0 0 1px rgba(255,255,255,.04) inset}
.social-user-banner{background:radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--social-banner,#303632) 70%,white 9%),transparent 32%),radial-gradient(circle at 18% 88%,color-mix(in srgb,var(--social-accent,#5865f2) 36%,transparent),transparent 46%),linear-gradient(135deg,color-mix(in srgb,var(--social-banner,#303632) 92%,#101311 8%),#151917)!important;overflow:hidden}
.social-user-banner::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.09) 1px,transparent 0);background-size:18px 18px;opacity:.16;mask-image:linear-gradient(90deg,transparent,black 26%,black)}
.social-user-banner>img{opacity:.82}
.social-avatar-frame{--social-accent:#5865f2;--social-accent-2:#6f769a;--social-accent-3:#303632;position:relative;display:inline-grid;padding:3px;border-radius:16px;background:conic-gradient(from var(--ang),#f8f9f7,var(--social-accent),var(--social-accent-2),var(--social-accent-3),#f8f9f7);animation:ring 7s linear infinite;box-shadow:0 0 18px color-mix(in srgb,var(--social-accent) 20%,transparent)}
.social-avatar-frame::after{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;background:color-mix(in srgb,var(--social-banner,#303632) 40%,#121513)}
.social-avatar-frame>.social-user-avatar{position:relative;z-index:1}
.social-user-avatar.pr-avatar{width:42px;height:42px;border-radius:13px;background:linear-gradient(150deg,var(--avatar-color),color-mix(in srgb,var(--avatar-banner,#303632) 28%,var(--avatar-color)))}
.social-inline-card .social-avatar-frame{border-radius:14px}.social-inline-card .social-user-avatar.pr-avatar{width:38px;height:38px;border-radius:11px}.social-leader-card .social-user-avatar.pr-avatar{width:40px;height:40px;border-radius:12px}
.feature-frame,.system-hero,.game-hero,.download-bios-card{position:relative;isolation:isolate}
.feature-frame::before,.system-hero::before,.game-hero::before,.download-bios-card::before{content:"";position:absolute;inset:0;z-index:3;padding:1px;border-radius:inherit;background:conic-gradient(from var(--ang),color-mix(in srgb,var(--frame-a,var(--a,#79837d)) 42%,white 22%),var(--frame-a,var(--a,#79837d)),var(--frame-b,var(--b,#49514c)),var(--frame-a,var(--a,#79837d)),color-mix(in srgb,var(--frame-b,var(--b,#49514c)) 40%,white 16%));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.9;animation:ring 12s linear infinite}
.feature-frame::after,.system-hero::after,.game-hero::after,.download-bios-card::after{box-shadow:0 0 30px color-mix(in srgb,var(--frame-a,var(--a,#79837d)) 15%,transparent),0 0 56px color-mix(in srgb,var(--frame-b,var(--b,#49514c)) 10%,transparent)}
.feature-carousel-slide{border-radius:28px;overflow:hidden}
.feature-carousel-slide-bg{background-position:center 34%}
.feature-carousel-slide.is-active{box-shadow:0 18px 48px rgba(0,0,0,.22),0 0 26px color-mix(in srgb,var(--a,#7f8c85) 12%,transparent)}
.system-hero,.game-hero{box-shadow:0 24px 52px rgba(0,0,0,.2),0 0 30px color-mix(in srgb,var(--frame-a,var(--system-accent,var(--game-accent,#7f8c85))) 12%,transparent)}
.system-hero{--frame-a:var(--system-accent,#7f8c85);--frame-b:var(--system-accent-2,#cad0cb)}
.game-hero{--frame-a:var(--game-accent,#7f8c85);--frame-b:var(--game-accent-2,#cad0cb)}
.download-bios-card{background:linear-gradient(180deg,color-mix(in srgb,var(--a,#7f8c85) 8%,rgba(255,255,255,.04)),rgba(255,255,255,.018) 68%)}
.download-bios-visual{min-height:156px;background:linear-gradient(135deg,color-mix(in srgb,var(--a,#7f8c85) 16%,#141815),#141815 66%)}
.download-bios-shade{background:linear-gradient(90deg,rgba(8,11,9,.82),rgba(8,11,9,.34) 58%,rgba(8,11,9,.18)),linear-gradient(180deg,transparent 30%,rgba(0,0,0,.56))}
.download-bios-files span{border-color:color-mix(in srgb,var(--a,#7f8c85) 24%,rgba(255,255,255,.08));background:color-mix(in srgb,var(--a,#7f8c85) 14%,rgba(255,255,255,.04));color:#dde2dd}
.download-bios-button{background:linear-gradient(135deg,color-mix(in srgb,var(--a,#7f8c85) 44%,#fff 10%),color-mix(in srgb,var(--b,#cad0cb) 42%,#141815));color:#fff;border-color:transparent}
.download-bios-button:hover{filter:brightness(1.04)}
.report-dock-button .help-mark,.report-fab .help-mark{display:grid;place-items:center}
.report-dock-button .help-mark svg,.report-fab .help-mark svg{width:18px;height:18px;display:block}
.profile-editor-tabs{display:flex;gap:8px;margin-bottom:10px;padding:4px;border:1px solid rgba(255,255,255,.06);border-radius:14px;background:rgba(255,255,255,.025)}
.profile-editor-tab{flex:1;min-height:38px;padding:0 12px;border:0;border-radius:11px;background:transparent;color:#adb4af;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:background .18s ease,color .18s ease,box-shadow .18s ease}
.profile-editor-tab.is-active{background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.04));color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.08) inset}
.profile-editor-pane{display:grid;gap:10px}.profile-editor-pane[hidden]{display:none!important}
.profile-edit-dialog .profile-avatar-preview-panel{background:radial-gradient(circle at 82% 12%,color-mix(in srgb,var(--preview-banner) 58%,white 12%),transparent 42%),linear-gradient(145deg,color-mix(in srgb,var(--preview-banner) 64%,#252a27),rgba(255,255,255,.015))!important}
.profile-edit-dialog .description-dialog-body{overflow:auto;padding-bottom:0}
.profile-character-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:8px!important;max-height:280px!important;padding:2px 4px 6px 2px!important}
.profile-character-option{border-radius:13px!important;background:rgba(255,255,255,.03)!important}
.profile-character-option img{width:80%!important;height:80%!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;object-position:center!important}
.profile-color-row{grid-template-columns:minmax(0,1fr) 190px!important;gap:8px!important}
.profile-banner-swatches{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}
@media(max-width:900px){.profile-color-row{grid-template-columns:1fr!important}.profile-banner-swatches{grid-template-columns:repeat(5,minmax(0,1fr))}.profile-character-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;max-height:280px!important}}
@media(max-width:620px){.profile-edit-dialog{width:min(100vw - 16px,640px)!important;max-height:min(100dvh - 12px,900px)!important;border-radius:22px!important}.profile-edit-dialog .description-dialog-body{padding:12px!important}.profile-character-editor{display:grid;grid-template-columns:1fr!important;gap:12px!important}.profile-edit-dialog .profile-avatar-preview-panel{grid-template-columns:84px minmax(0,1fr)!important;justify-items:start!important;text-align:left!important}.profile-edit-dialog .profile-avatar-preview{width:84px!important;border-radius:22px!important}.profile-editor-tabs{position:sticky;top:0;z-index:4;background:rgba(32,37,34,.9);backdrop-filter:blur(14px)}.profile-character-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;max-height:none!important;overflow:visible!important;gap:10px!important}.profile-character-option{aspect-ratio:1!important;border-radius:14px!important}.profile-banner-swatches{grid-template-columns:repeat(4,minmax(0,1fr))}.profile-editor-actions{display:grid!important;grid-template-columns:1fr!important}.profile-editor-actions .button{width:100%!important}}
@media(max-width:460px){.profile-edit-dialog .profile-avatar-preview-panel{grid-template-columns:76px minmax(0,1fr)!important;padding:10px!important}.profile-character-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}.profile-color-custom{display:grid!important}.profile-color-row{grid-template-columns:1fr!important}}

/* ===== 3.29 · final visual correction pass ===== */
/* Ambient uses the selected artwork itself; keep it visible but cheap to render. */
.app-atmosphere::before{
  inset:-18px!important;
  transform:scale(1.045)!important;
  opacity:.78!important;
  filter:blur(16px) saturate(1.06) brightness(.72)!important;
  background-position:center!important;
}
.app-atmosphere::after{
  background:linear-gradient(180deg,rgba(10,13,11,.20),rgba(8,10,9,.48)),radial-gradient(circle at 72% 14%,rgba(255,255,255,.055),transparent 30%)!important;
}
.media-shell{background:rgba(27,32,29,.72)!important}
.media-workspace{background:linear-gradient(180deg,rgba(37,43,39,.34),rgba(24,29,26,.52))!important}
.media-workspace::before{
  inset:-24px!important;left:-24px!important;top:-24px!important;right:-24px!important;bottom:-24px!important;
  width:auto!important;height:auto!important;transform:scale(1.05)!important;transform-origin:center!important;
  filter:blur(14px) saturate(1.05) brightness(.70)!important;background-size:cover!important;background-position:center!important;
}
.has-page-ambient .media-workspace::before{opacity:.64!important}
.has-page-ambient .media-workspace::after{opacity:.38!important;background:linear-gradient(180deg,rgba(18,22,19,.18),rgba(15,19,16,.48))!important}
body[data-system].has-page-ambient .media-workspace::before,body[data-game-system].has-page-ambient .media-workspace::before{opacity:.70!important}
body[data-system].has-page-ambient .media-workspace::after,body[data-game-system].has-page-ambient .media-workspace::after{background:linear-gradient(180deg,rgba(12,16,13,.14),rgba(10,14,12,.42))!important}
body[data-system].has-page-ambient .app-atmosphere::after,body[data-game-system].has-page-ambient .app-atmosphere::after{background:linear-gradient(180deg,rgba(5,8,6,.18),rgba(4,6,5,.42)),radial-gradient(circle at 70% 14%,rgba(255,255,255,.045),transparent 30%)!important}

/* A real border element is used now; disable the pseudo-border experiment from 3.28. */
.feature-frame::before,.system-hero::before,.game-hero::before,.download-bios-card::before{display:none!important}
.art-frame{
  position:absolute;inset:0;z-index:18;padding:2px;border-radius:inherit;pointer-events:none;opacity:.46;
  background:conic-gradient(from var(--ang),var(--frame-a,var(--a,#7f8c85)),var(--frame-b,var(--b,#cad0cb)),var(--frame-c,var(--frame-a,var(--a,#7f8c85))),var(--frame-b,var(--b,#cad0cb)),var(--frame-a,var(--a,#7f8c85)));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
  animation:ring 10s linear infinite;transition:opacity .2s ease,filter .2s ease;
}
.game-card:hover .art-frame,.game-card:focus-visible .art-frame,.game-card.gamepad-hover .art-frame,
.system-card:hover .art-frame,.system-card:focus-visible .art-frame,.system-card.gamepad-hover .art-frame,
.profile-favorite-card:hover .art-frame,.profile-favorite-card:focus-visible .art-frame,
.download-bios-card:hover .art-frame,.download-bios-card:focus-within .art-frame,
.feature-carousel-slide.is-active .art-frame,.system-hero .art-frame,.game-hero .art-frame{
  opacity:.96;filter:drop-shadow(0 0 7px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 56%,transparent)) drop-shadow(0 0 12px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 32%,transparent));
}
.game-card,.system-card,.profile-favorite-card,.download-bios-card,.feature-carousel-slide,.system-hero,.game-hero{--frame-c:var(--frame-a,var(--a,#7f8c85))}
.game-card:hover,.game-card:focus-visible,.system-card:hover,.system-card:focus-visible,.profile-favorite-card:hover,.profile-favorite-card:focus-visible{
  box-shadow:0 18px 38px rgba(0,0,0,.28),0 0 30px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 22%,transparent),0 0 42px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 14%,transparent)!important;
}
.feature-carousel-slide.is-active{box-shadow:0 18px 46px rgba(0,0,0,.22),0 0 28px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 15%,transparent)!important}

/* Profile frame: one animated ring only, using user-selected colors. */
.profile-avatar-wrap{padding:4px!important;background:transparent!important;box-shadow:none!important;isolation:isolate}
.profile-avatar-wrap::before{
  inset:0!important;z-index:0!important;border-radius:inherit!important;
  background:conic-gradient(from var(--ang),var(--profile-accent,#5865f2),var(--profile-accent-2,#303632),var(--profile-accent-3,var(--profile-accent,#5865f2)),var(--profile-accent-2,#303632),var(--profile-accent,#5865f2))!important;
  animation:ring 7s linear infinite!important;opacity:1!important;
  box-shadow:0 0 18px color-mix(in srgb,var(--profile-glow,var(--profile-accent,#5865f2)) 26%,transparent)!important;
}
.profile-avatar-wrap::after{inset:4px!important;z-index:1!important;background:color-mix(in srgb,var(--profile-banner,#303632) 46%,#121513)!important}
.profile-avatar-wrap>.pr-avatar{position:relative;z-index:2}
.account-chip{
  background:conic-gradient(from var(--ang),var(--account-accent,#5865f2),var(--account-accent-2,#303632),var(--account-accent-3,#5865f2),var(--account-accent-2,#303632),var(--account-accent,#5865f2))!important;
  animation:ring 7s linear infinite!important;padding:3px!important;box-shadow:0 8px 20px rgba(0,0,0,.20),0 0 15px color-mix(in srgb,var(--account-accent,#5865f2) 20%,transparent)!important;
}
.account-chip::after{display:none!important}
.account-avatar.pr-avatar-host{border-radius:9px!important;background:linear-gradient(155deg,var(--avatar-color),color-mix(in srgb,var(--avatar-banner,#303632) 34%,var(--avatar-color)))!important}
.social-avatar-frame{
  padding:3px!important;background:conic-gradient(from var(--ang),var(--social-accent,#5865f2),var(--social-accent-2,#303632),var(--social-accent-3,var(--social-accent,#5865f2)),var(--social-accent-2,#303632),var(--social-accent,#5865f2))!important;
  animation:ring 7s linear infinite!important;box-shadow:0 0 15px color-mix(in srgb,var(--social-glow,var(--social-accent,#5865f2)) 22%,transparent)!important;
}
.social-avatar-frame::after{inset:3px!important;background:color-mix(in srgb,var(--social-banner,#303632) 44%,#121513)!important}

/* The account/social surfaces inherit the saved profile colors. */
.profile-color-banner{opacity:1!important}
.social-user-banner{background:radial-gradient(circle at 78% 16%,color-mix(in srgb,var(--social-accent,#5865f2) 30%,transparent),transparent 34%),linear-gradient(135deg,color-mix(in srgb,var(--social-banner,#303632) 94%,#101311 6%),color-mix(in srgb,var(--social-accent-2,#303632) 24%,#151917))!important}
.social-user-banner>img{opacity:.88!important}

/* Restore square activity thumbnails as artwork tiles, not floating contained logos. */
.profile-activity-thumb{width:48px!important;height:48px!important;border-radius:11px!important;background:#1b201d!important;background-size:cover!important;background-position:center!important;overflow:hidden!important}
.profile-activity-thumb img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center!important;padding:0!important}
.profile-activity-thumb.has-icon{background:#171b18!important}
.profile-activity-thumb.has-art{background-size:cover!important;background-position:center!important}

/* Glass buttons and the in-game description card. */
.button.subtle,.history-button,.community-discord,.gamepad-chip,.favorite-detail,.topbar-tab,.report-dock-button,.report-fab{
  -webkit-backdrop-filter:blur(12px) saturate(.92);backdrop-filter:blur(12px) saturate(.92);
}
.button.subtle{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.10)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 8px 20px rgba(0,0,0,.10)!important}
.button.subtle:hover{background:rgba(255,255,255,.105)!important;border-color:rgba(255,255,255,.17)!important}
.hero-description{
  background:rgba(17,21,18,.34)!important;border-color:rgba(255,255,255,.12)!important;
  -webkit-backdrop-filter:blur(16px) saturate(.92);backdrop-filter:blur(16px) saturate(.92);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 14px 30px rgba(0,0,0,.16)!important;
}

/* BIOS / files now reads as a media library instead of a flat utility list. */
.downloads-hero-copy,.downloads-hero-panel,.downloads-game-strip,.downloads-section{
  -webkit-backdrop-filter:blur(14px) saturate(.9);backdrop-filter:blur(14px) saturate(.9);
}
.downloads-hero-copy{background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.02))!important;box-shadow:0 18px 42px rgba(0,0,0,.20)!important}
.downloads-hero-panel{background:rgba(18,23,20,.38)!important}
.downloads-stat{background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.025))!important}
.downloads-section{background:rgba(20,25,22,.34)!important}
.download-bios-card{display:grid!important;grid-template-columns:minmax(190px,.88fr) minmax(0,1.12fr)!important;min-height:220px!important;border-color:rgba(255,255,255,.10)!important;background:rgba(19,24,21,.42)!important;-webkit-backdrop-filter:blur(12px) saturate(.92);backdrop-filter:blur(12px) saturate(.92)}
.download-bios-card:hover{transform:translateY(-3px)!important;border-color:color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 42%,rgba(255,255,255,.14))!important;box-shadow:0 20px 42px rgba(0,0,0,.24),0 0 24px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 16%,transparent)!important}
.download-bios-visual{min-height:220px!important;height:100%!important;border-right:1px solid rgba(255,255,255,.065)!important}
.download-bios-art{transform:scale(1.015);filter:saturate(1.04) brightness(.92)}
.download-bios-card:hover .download-bios-art{transform:scale(1.045)!important}
.download-bios-body{display:flex!important;flex-direction:column!important;justify-content:center!important;padding:20px!important}
.download-bios-copy h3{font-size:19px!important}
.download-bios-copy p{font-size:9px!important;min-height:0!important;max-width:520px}
.download-bios-files{margin:15px 0!important}
.download-bios-files span{padding:6px 9px!important;border-color:color-mix(in srgb,var(--a,#7f8c85) 28%,rgba(255,255,255,.08))!important;background:color-mix(in srgb,var(--a,#7f8c85) 12%,rgba(255,255,255,.035))!important}
.download-bios-button{background:rgba(255,255,255,.08)!important;border-color:color-mix(in srgb,var(--a,#7f8c85) 35%,rgba(255,255,255,.10))!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.download-bios-button:hover{background:color-mix(in srgb,var(--a,#7f8c85) 22%,rgba(255,255,255,.10))!important}

/* Profile editor: distinct sections, stable mobile grid, dedicated frame editor. */
.profile-edit-dialog{width:min(900px,calc(100vw - 30px))!important;max-height:min(760px,calc(100dvh - 24px))!important;background:linear-gradient(180deg,rgba(42,48,44,.98),rgba(29,34,31,.99))!important}
.profile-edit-dialog .description-dialog-head{background:rgba(34,39,36,.78)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.profile-character-editor{display:grid!important;grid-template-columns:180px minmax(0,1fr)!important;gap:14px!important;align-items:start!important}
.profile-avatar-preview-panel{position:sticky!important;top:0!important;display:grid!important;grid-template-columns:1fr!important;justify-items:center!important;text-align:center!important;padding:14px!important;background:rgba(255,255,255,.035)!important}
.profile-avatar-preview{width:128px!important;border-radius:28px!important;box-shadow:0 0 0 2px var(--preview-frame-a,#5865f2),0 0 0 4px var(--preview-frame-b,#303632),0 18px 34px rgba(0,0,0,.28)!important}
.profile-character-controls{min-width:0!important}
.profile-editor-tabs{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important;margin:0 0 10px!important}
.profile-editor-tab{min-width:0!important;min-height:38px!important;padding:0 8px!important;font-size:10px!important}
.profile-editor-pane{min-width:0!important}
.profile-editor-section{padding:12px!important;border-radius:16px!important;background:rgba(255,255,255,.025)!important;border-color:rgba(255,255,255,.075)!important}
.profile-character-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important;max-height:360px!important;overflow-y:auto!important;overflow-x:hidden!important;padding:3px 6px 6px 3px!important}
.profile-character-option{aspect-ratio:1!important;min-height:74px!important;border-radius:15px!important;border:1px solid rgba(255,255,255,.10)!important;background:rgba(255,255,255,.04)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important}
.profile-character-option:hover{background:rgba(255,255,255,.075)!important;border-color:rgba(255,255,255,.18)!important}
.profile-character-option.is-unavailable{opacity:.28!important;filter:grayscale(1)!important;cursor:not-allowed!important}
.profile-character-option.is-selected{background:rgba(255,255,255,.10)!important;border-color:#fff!important;box-shadow:0 0 0 2px rgba(255,255,255,.14)!important}
.profile-character-option img{width:74%!important;height:74%!important;object-fit:contain!important;object-position:center!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important}
.profile-frame-color-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.profile-frame-color-block{padding:12px;border:1px solid rgba(255,255,255,.065);border-radius:14px;background:rgba(255,255,255,.02)}
.profile-frame-color-block>strong{display:block;margin-bottom:9px;font-size:10px;color:#dce0dd}
.profile-frame-swatches{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-bottom:9px}
.profile-frame-custom{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:44px;padding:6px 8px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.025)}
.profile-frame-custom input{width:34px;height:32px;border:0;padding:0;background:transparent}
.profile-frame-custom span{font-size:9px;font-weight:700}.profile-frame-custom b{font-size:8px;color:#919992}
.profile-banner-swatches{grid-template-columns:repeat(7,minmax(0,1fr))!important}
.profile-edit-dialog .profile-editor-actions{
  position:sticky!important;
  bottom:0!important;
  z-index:12!important;
  margin:14px -18px 0!important;
  padding:12px 18px calc(12px + env(safe-area-inset-bottom))!important;
  border-top:1px solid rgba(255,255,255,.085)!important;
  background:rgba(27,32,29,.90)!important;
  -webkit-backdrop-filter:blur(20px) saturate(1.12)!important;
  backdrop-filter:blur(20px) saturate(1.12)!important;
  box-shadow:0 -12px 30px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.025)!important;
}

@media(max-width:760px){
  .download-bios-card{grid-template-columns:1fr!important;min-height:0!important}
  .download-bios-visual{min-height:180px!important;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.065)!important}
  .download-bios-body{padding:16px!important}
  .profile-edit-dialog{width:calc(100vw - 12px)!important;max-height:calc(100dvh - 12px)!important;border-radius:20px!important}
  .profile-edit-dialog .description-dialog-body{padding:12px!important}
  .profile-character-editor{grid-template-columns:1fr!important;gap:10px!important}
  .profile-avatar-preview-panel{position:static!important;grid-template-columns:82px minmax(0,1fr)!important;justify-items:start!important;text-align:left!important;padding:10px!important}
  .profile-avatar-preview{width:82px!important;border-radius:21px!important}
  .profile-editor-tabs{position:sticky!important;top:0!important;z-index:8!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;padding:4px!important;background:rgba(31,36,33,.92)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
  .profile-editor-tab{font-size:9px!important;padding:0 4px!important}
  .profile-character-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;max-height:340px!important;overflow-y:auto!important;padding:5px 8px 14px 5px!important}
  .profile-character-option{min-height:88px!important;border-radius:15px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 8px 18px rgba(0,0,0,.10)!important}
  .profile-character-option img{width:70%!important;height:70%!important}
  .profile-frame-color-grid{grid-template-columns:1fr!important}
  .profile-banner-swatches{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .profile-edit-dialog .profile-editor-actions{display:grid!important;grid-template-columns:1fr 1.25fr!important;gap:9px!important;margin:14px -12px -12px!important;padding:12px 12px calc(12px + env(safe-area-inset-bottom))!important}
}
@media(max-width:430px){
  .profile-edit-dialog .description-dialog-head{padding:13px 14px!important}
  .profile-avatar-preview-panel{grid-template-columns:72px minmax(0,1fr)!important}
  .profile-avatar-preview{width:72px!important}
  .profile-character-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;max-height:320px!important;padding:5px 6px 14px 4px!important}
  .profile-character-option{min-height:82px!important}
  .profile-editor-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .profile-edit-dialog .profile-editor-actions{grid-template-columns:1fr!important}
}
/* Profile page color mood follows avatar + banner; ring remains separately user-configurable. */
.profile-color-banner{background:radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--profile-banner,#303632) 70%,white 8%),transparent 34%),radial-gradient(circle at 16% 88%,color-mix(in srgb,var(--profile-avatar,#5865f2) 42%,transparent),transparent 48%),linear-gradient(135deg,color-mix(in srgb,var(--profile-banner,#303632) 92%,#111 8%),#151917 78%)!important}
.social-user-banner{background:radial-gradient(circle at 78% 16%,color-mix(in srgb,var(--social-avatar,#5865f2) 38%,transparent),transparent 34%),linear-gradient(135deg,color-mix(in srgb,var(--social-banner,#303632) 94%,#101311 6%),color-mix(in srgb,var(--social-avatar,#5865f2) 18%,#151917))!important}

/* ===== 3.31 · subtle visual correction + performance pass ===== */
/*
   Keep the 3.29 composition intact.
   The goal here is refinement, not a redesign:
   - one ambient artwork layer
   - only slightly darker ambience
   - quiet, static artwork frames
   - mild translucency only on the left navigation surfaces
*/
.app-atmosphere::before{
  inset:-16px!important;
  transform:scale(1.04)!important;
  opacity:.74!important;
  filter:blur(14px) saturate(1.03) brightness(.66)!important;
  transition:opacity .30s ease!important;
  will-change:auto!important;
}
.app-atmosphere::after{
  background:
    linear-gradient(180deg,rgba(10,13,11,.26),rgba(8,10,9,.54)),
    radial-gradient(circle at 72% 14%,rgba(255,255,255,.045),transparent 30%)!important;
}

/* Remove only the duplicated blurred artwork layer that was causing repaints.
   Keep the original 3.29 workspace surfaces/overlay so the page still looks like 3.29. */
.media-shell{background:rgba(27,32,29,.72)!important}
.media-workspace{background:linear-gradient(180deg,rgba(37,43,39,.34),rgba(24,29,26,.52))!important}
.media-workspace::before{display:none!important}
.has-page-ambient .media-workspace::before,
body[data-system].has-page-ambient .media-workspace::before,
body[data-game-system].has-page-ambient .media-workspace::before{opacity:0!important}
.has-page-ambient .media-workspace::after{
  opacity:.38!important;
  background:linear-gradient(180deg,rgba(18,22,19,.18),rgba(15,19,16,.48))!important;
}
body[data-system].has-page-ambient .media-workspace::after,
body[data-game-system].has-page-ambient .media-workspace::after{
  background:linear-gradient(180deg,rgba(12,16,13,.14),rgba(10,14,12,.42))!important;
}
body[data-system].has-page-ambient .app-atmosphere::after,
body[data-game-system].has-page-ambient .app-atmosphere::after{
  background:
    linear-gradient(180deg,rgba(5,8,6,.24),rgba(4,6,5,.50)),
    radial-gradient(circle at 70% 14%,rgba(255,255,255,.04),transparent 30%)!important;
}

/* Artwork frames: restrained 1px finish with artwork color only as a small accent.
   No flowing ring, no thick gradient, no extra geometry. */
.art-frame{
  position:absolute!important;
  inset:0!important;
  z-index:18!important;
  padding:0!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  opacity:1!important;
  background:none!important;
  -webkit-mask:none!important;
  mask:none!important;
  border:1px solid rgba(255,255,255,.115)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    inset 0 -1px 0 rgba(0,0,0,.18)!important;
  animation:none!important;
  transition:border-color .18s ease,box-shadow .18s ease,opacity .18s ease!important;
}
.game-card:hover .art-frame,
.game-card:focus-visible .art-frame,
.game-card.gamepad-hover .art-frame,
.system-card:hover .art-frame,
.system-card:focus-visible .art-frame,
.system-card.gamepad-hover .art-frame,
.profile-favorite-card:hover .art-frame,
.profile-favorite-card:focus-visible .art-frame,
.download-bios-card:hover .art-frame,
.download-bios-card:focus-within .art-frame{
  border-color:color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 34%,rgba(255,255,255,.18))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 0 0 1px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 8%,transparent),
    0 14px 30px rgba(0,0,0,.12)!important;
}
.feature-carousel-slide.is-active .art-frame,
.system-hero .art-frame,
.game-hero .art-frame{
  border-color:color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 40%,rgba(255,255,255,.18))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.075),
    inset 0 0 0 1px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 7%,transparent),
    0 0 20px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 7%,transparent)!important;
}

/* Preserve the original card shadows. The frame should not become the dominant effect. */
.game-card,.system-card,.profile-favorite-card,.download-bios-card,
.feature-carousel-slide,.system-hero,.game-hero{
  --frame-c:var(--frame-a,var(--a,#7f8c85));
}
.game-card:hover,.game-card:focus-visible,
.system-card:hover,.system-card:focus-visible,
.profile-favorite-card:hover,.profile-favorite-card:focus-visible{
  box-shadow:
    0 18px 38px rgba(0,0,0,.28),
    0 0 24px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 13%,transparent)!important;
}
.feature-carousel-slide.is-active{
  box-shadow:
    0 18px 46px rgba(0,0,0,.22),
    0 0 22px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 9%,transparent)!important;
}

/* Only a little translucency on the left-side navigation from the reference.
   The header is deliberately left as in 3.29. */
.library-sidebar{
  background:linear-gradient(180deg,rgba(25,31,27,.84),rgba(17,22,19,.88))!important;
  -webkit-backdrop-filter:blur(6px) saturate(1.01);
  backdrop-filter:blur(6px) saturate(1.01);
  border-right-color:rgba(255,255,255,.075)!important;
}
.quick-dock{
  background:rgba(18,23,20,.78)!important;
  -webkit-backdrop-filter:blur(6px) saturate(1.01);
  backdrop-filter:blur(6px) saturate(1.01);
  border-color:rgba(255,255,255,.12)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.045)!important;
}

/* Keep movement, but avoid expensive decoration on touch/low-power layouts. */
.game-art:not(.has-artwork)::before,
.system-card-bg:not(.has-artwork)::before{animation-iteration-count:2!important}
@media(max-width:820px),(pointer:coarse){
  .library-sidebar,.quick-dock{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
}

/* ===== 3.32 · animated avatar-style frames + richer ambient backgrounds ===== */
/* User correction:
   - the card/banner frame should match the animated profile avatar ring
   - the page background should clearly use the emulator/game artwork
*/

/* Let the current emulator/game artwork read clearly as the page background. */
.app-atmosphere::before{
  inset:-10%!important;
  transform:scale(1.10)!important;
  opacity:.88!important;
  filter:blur(10px) saturate(1.08) brightness(.78)!important;
  background-size:cover!important;
  background-position:center!important;
}
.app-atmosphere::after{
  background:
    linear-gradient(180deg,rgba(7,10,9,.18),rgba(5,7,6,.46)),
    radial-gradient(circle at 72% 14%,rgba(255,255,255,.06),transparent 30%),
    linear-gradient(90deg,rgba(8,11,10,.42),transparent 30%,rgba(7,9,8,.16))!important;
}
.media-shell{background:rgba(28,34,30,.74)!important}
.media-workspace{
  background:linear-gradient(180deg,rgba(41,48,43,.30),rgba(24,30,27,.46))!important;
}
.media-workspace::before{
  display:block!important;
  opacity:.38!important;
  inset:-26px!important;
  left:-26px!important;
  top:-26px!important;
  right:-26px!important;
  bottom:-26px!important;
  width:auto!important;
  height:auto!important;
  transform:scale(1.05)!important;
  transform-origin:center!important;
  filter:blur(18px) saturate(1.05) brightness(.74)!important;
  background-size:cover!important;
  background-position:center!important;
}
.has-page-ambient .media-workspace::before{opacity:.42!important}
.has-page-ambient .media-workspace::after{
  opacity:1!important;
  background:linear-gradient(180deg,rgba(14,18,16,.20),rgba(11,14,12,.44))!important;
}
body[data-system].has-page-ambient .media-workspace::before,
body[data-game-system].has-page-ambient .media-workspace::before{
  opacity:.58!important;
  filter:blur(14px) saturate(1.06) brightness(.78)!important;
}
body[data-system].has-page-ambient .media-workspace::after,
body[data-game-system].has-page-ambient .media-workspace::after{
  background:linear-gradient(180deg,rgba(10,14,12,.16),rgba(8,11,9,.38))!important;
}
body[data-system].has-page-ambient .app-atmosphere::before,
body[data-game-system].has-page-ambient .app-atmosphere::before{
  opacity:.96!important;
  filter:blur(8px) saturate(1.06) brightness(.84)!important;
}
body[data-system].has-page-ambient .app-atmosphere::after,
body[data-game-system].has-page-ambient .app-atmosphere::after{
  background:
    linear-gradient(180deg,rgba(6,8,7,.16),rgba(4,6,5,.34)),
    radial-gradient(circle at 70% 14%,rgba(255,255,255,.05),transparent 30%),
    linear-gradient(90deg,rgba(7,9,8,.34),transparent 28%,rgba(6,8,7,.12))!important;
}

/* Restore a strong animated artwork ring like the profile-avatar frame. */
.feature-frame::before,.system-hero::before,.game-hero::before,.download-bios-card::before{display:none!important}
.game-card,.system-card,.profile-favorite-card,.download-bios-card,.feature-carousel-slide,.system-hero,.game-hero{
  --frame-c:color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 54%,var(--frame-b,var(--b,#cad0cb)));
}
.art-frame{
  position:absolute!important;
  inset:0!important;
  z-index:18!important;
  padding:3px!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  opacity:.94!important;
  background:conic-gradient(from var(--ang),
    #f8f9f7,
    var(--frame-a,var(--a,#7f8c85)),
    var(--frame-b,var(--b,#cad0cb)),
    var(--frame-c,color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 54%,var(--frame-b,var(--b,#cad0cb)))),
    var(--frame-b,var(--b,#cad0cb)),
    var(--frame-a,var(--a,#7f8c85)),
    #f8f9f7) !important;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask-composite:exclude!important;
  animation:ring 7s linear infinite!important;
  box-shadow:
    0 0 18px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 22%,transparent),
    0 0 28px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 14%,transparent)!important;
  transition:opacity .20s ease,filter .20s ease,box-shadow .20s ease!important;
}
.game-card:hover .art-frame,
.game-card:focus-visible .art-frame,
.game-card.gamepad-hover .art-frame,
.system-card:hover .art-frame,
.system-card:focus-visible .art-frame,
.system-card.gamepad-hover .art-frame,
.profile-favorite-card:hover .art-frame,
.profile-favorite-card:focus-visible .art-frame,
.download-bios-card:hover .art-frame,
.download-bios-card:focus-within .art-frame,
.feature-carousel-slide.is-active .art-frame,
.system-hero .art-frame,
.game-hero .art-frame{
  opacity:1!important;
  filter:drop-shadow(0 0 9px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 52%,transparent)) drop-shadow(0 0 14px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 34%,transparent))!important;
  box-shadow:
    0 0 22px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 26%,transparent),
    0 0 34px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 16%,transparent)!important;
}
.game-card:hover,.game-card:focus-visible,
.system-card:hover,.system-card:focus-visible,
.profile-favorite-card:hover,.profile-favorite-card:focus-visible,
.download-bios-card:hover,.download-bios-card:focus-within{
  box-shadow:
    0 18px 40px rgba(0,0,0,.30),
    0 0 28px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 16%,transparent)!important;
}
.feature-carousel-slide.is-active,
.system-hero,
.game-hero{
  box-shadow:
    0 18px 46px rgba(0,0,0,.24),
    0 0 30px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 18%,transparent)!important;
}

/* Make banners/heroes feel more connected to the chosen artwork. */
.feature-carousel-slide-bg,
.system-hero::after,
.game-hero::after{
  background-position:center!important;
  background-size:cover!important;
}

/* ===== 3.33 · frame visibility logic aligned to the reference video =====
   - carousel cards: frame always visible
   - small library/grid cards: frame only on hover/focus/gamepad-selected
   - full emulator/game pages (heroes): frame always visible
   - colors keep coming from the artwork palette
   - profile/user avatar frame stays untouched
*/

/* Make the active emulator/game artwork read as the real page background. */
body[data-system].has-page-ambient .app-atmosphere::before,
body[data-game-system].has-page-ambient .app-atmosphere::before{
  opacity:.98!important;
  filter:blur(7px) saturate(1.08) brightness(.86)!important;
}
body[data-system].has-page-ambient .media-workspace::before,
body[data-game-system].has-page-ambient .media-workspace::before{
  opacity:.62!important;
  filter:blur(12px) saturate(1.07) brightness(.80)!important;
}
body[data-system].has-page-ambient .media-workspace::after,
body[data-game-system].has-page-ambient .media-workspace::after{
  background:linear-gradient(180deg,rgba(10,14,12,.14),rgba(8,11,9,.34))!important;
}

/* Base visual language for artwork frames.
   Keep the animated ring and palette-based colors from the artwork. */
.art-frame{
  position:absolute!important;
  inset:0!important;
  z-index:18!important;
  padding:3px!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  background:conic-gradient(from var(--ang),
    #f8f9f7,
    var(--frame-a,var(--a,#7f8c85)),
    var(--frame-b,var(--b,#cad0cb)),
    var(--frame-c,color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 54%,var(--frame-b,var(--b,#cad0cb)))),
    var(--frame-b,var(--b,#cad0cb)),
    var(--frame-a,var(--a,#7f8c85)),
    #f8f9f7) !important;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask-composite:exclude!important;
  animation:ring 7s linear infinite!important;
  transition:opacity .20s ease,filter .20s ease,box-shadow .20s ease!important;
}
.game-card,.system-card,.profile-favorite-card,.download-bios-card,
.feature-carousel-slide,.system-hero,.game-hero{
  --frame-c:color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 54%,var(--frame-b,var(--b,#cad0cb)));
}

/* Small cards: hidden by default, only show when hovered/focused/selected with pad. */
.game-card .art-frame,
.system-card .art-frame,
.profile-favorite-card .art-frame,
.download-bios-card .art-frame{
  opacity:0!important;
  filter:none!important;
  box-shadow:none!important;
  animation-play-state:paused!important;
}
.game-card:hover .art-frame,
.game-card:focus-visible .art-frame,
.game-card.gamepad-hover .art-frame,
.system-card:hover .art-frame,
.system-card:focus-visible .art-frame,
.system-card.gamepad-hover .art-frame,
.profile-favorite-card:hover .art-frame,
.profile-favorite-card:focus-visible .art-frame,
.profile-favorite-card.gamepad-hover .art-frame,
.download-bios-card:hover .art-frame,
.download-bios-card:focus-within .art-frame,
.download-bios-card.gamepad-hover .art-frame{
  opacity:1!important;
  filter:drop-shadow(0 0 9px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 52%,transparent)) drop-shadow(0 0 14px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 34%,transparent))!important;
  box-shadow:
    0 0 22px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 26%,transparent),
    0 0 34px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 16%,transparent)!important;
  animation-play-state:running!important;
}

/* Carousel cards: always visible, like the reference. */
.feature-carousel-slide .art-frame,
.feature-carousel-slide.is-active .art-frame{
  opacity:1!important;
  filter:drop-shadow(0 0 8px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 44%,transparent)) drop-shadow(0 0 12px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 26%,transparent))!important;
  box-shadow:
    0 0 18px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 20%,transparent),
    0 0 28px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 12%,transparent)!important;
  animation-play-state:running!important;
}

/* Full emulator/game pages: always visible. */
.system-hero .art-frame,
.game-hero .art-frame{
  opacity:1!important;
  filter:drop-shadow(0 0 10px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 54%,transparent)) drop-shadow(0 0 15px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 34%,transparent))!important;
  box-shadow:
    0 0 24px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 28%,transparent),
    0 0 36px color-mix(in srgb,var(--frame-b,var(--b,#cad0cb)) 18%,transparent)!important;
  animation-play-state:running!important;
}

/* Hover lift remains on small cards, but the frame is now the main accent only when engaged. */
.game-card:hover,.game-card:focus-visible,.game-card.gamepad-hover,
.system-card:hover,.system-card:focus-visible,.system-card.gamepad-hover,
.profile-favorite-card:hover,.profile-favorite-card:focus-visible,.profile-favorite-card.gamepad-hover,
.download-bios-card:hover,.download-bios-card:focus-within,.download-bios-card.gamepad-hover{
  box-shadow:
    0 18px 40px rgba(0,0,0,.30),
    0 0 28px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 16%,transparent)!important;
}
.feature-carousel-slide,
.feature-carousel-slide.is-active,
.system-hero,
.game-hero{
  box-shadow:
    0 18px 46px rgba(0,0,0,.24),
    0 0 30px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 18%,transparent)!important;
}

/* ===== 3.34 · ambient gradient + frame coverage fix =====
   Fixes requested:
   - artwork frame must cover the border fully
   - carousel corners must not expose or overshoot
   - ambient background should feel like Apple Music: color-gradient driven,
     smoother transitions, and no rapid image swapping on every card hover
   - download button gets blur/glass treatment
   - favorite button glows when active
*/

@property --ambient-a {
  syntax: "<color>";
  inherits: true;
  initial-value: #7d8580;
}
@property --ambient-b {
  syntax: "<color>";
  inherits: true;
  initial-value: #4c544f;
}
@property --ambient-c {
  syntax: "<color>";
  inherits: true;
  initial-value: #232a26;
}

:root{
  --ambient-a:#7d8580;
  --ambient-b:#4c544f;
  --ambient-c:#232a26;
}

/* Ambient background: mainly gradient-driven, with only a faint optional image layer. */
.app-atmosphere{
  background:
    radial-gradient(110% 115% at 10% 8%, color-mix(in srgb,var(--ambient-a) 32%, transparent), transparent 42%),
    radial-gradient(120% 120% at 88% 18%, color-mix(in srgb,var(--ambient-b) 28%, transparent), transparent 38%),
    linear-gradient(135deg,
      color-mix(in srgb,var(--ambient-a) 34%, #0a0d0c) 0%,
      color-mix(in srgb,var(--ambient-b) 40%, #0b0e0d) 54%,
      color-mix(in srgb,var(--ambient-c) 50%, #070909) 100%) !important;
  transition:background .78s cubic-bezier(.22,.72,.22,1),filter .58s ease !important;
}
.app-atmosphere::before{
  inset:-12% !important;
  opacity:.08 !important;
  filter:blur(16px) saturate(1.03) brightness(.84) !important;
  transition:opacity .85s cubic-bezier(.22,.72,.22,1),filter .85s cubic-bezier(.22,.72,.22,1),background-image .85s ease !important;
}
.app-atmosphere::after{
  background:
    linear-gradient(180deg,rgba(8,11,10,.10),rgba(6,8,7,.40)),
    radial-gradient(circle at 18% 16%, color-mix(in srgb,var(--ambient-a) 18%, transparent), transparent 32%),
    radial-gradient(circle at 82% 20%, color-mix(in srgb,var(--ambient-b) 16%, transparent), transparent 34%),
    linear-gradient(90deg,rgba(8,10,9,.30),transparent 28%,rgba(6,8,7,.12)) !important;
  transition:background .78s cubic-bezier(.22,.72,.22,1),opacity .78s cubic-bezier(.22,.72,.22,1) !important;
}
.media-workspace{
  background:linear-gradient(180deg,
    color-mix(in srgb,var(--ambient-a) 10%, rgba(40,46,42,.62)),
    color-mix(in srgb,var(--ambient-c) 10%, rgba(24,30,27,.76))) !important;
  transition:background .78s cubic-bezier(.22,.72,.22,1) !important;
}
.media-workspace::before{display:none !important}
.has-page-ambient .media-workspace::after,
body[data-system].has-page-ambient .media-workspace::after,
body[data-game-system].has-page-ambient .media-workspace::after{
  opacity:1 !important;
  background:
    linear-gradient(180deg,rgba(12,15,14,.16),rgba(9,11,10,.34)),
    radial-gradient(circle at 16% 12%, color-mix(in srgb,var(--ambient-a) 11%, transparent), transparent 34%),
    radial-gradient(circle at 84% 18%, color-mix(in srgb,var(--ambient-b) 10%, transparent), transparent 36%) !important;
  transition:background .78s cubic-bezier(.22,.72,.22,1),opacity .78s cubic-bezier(.22,.72,.22,1) !important;
}
body[data-system].has-page-ambient .app-atmosphere::before,
body[data-game-system].has-page-ambient .app-atmosphere::before{
  opacity:.13 !important;
  filter:blur(14px) saturate(1.02) brightness(.88) !important;
}

/* Make sure carousel and hero frames actually cover the outer edge and corners. */
.feature-carousel,
.feature-carousel-viewport,
.feature-carousel-slide,
.feature-carousel-slide-bg,
.system-hero,
.game-hero,
.system-hero::after,
.game-hero::after{
  border-radius:inherit !important;
}
.feature-carousel{
  border-color:transparent !important;
  overflow:hidden !important;
}
.feature-carousel-slide{
  border-radius:20px !important;
  overflow:hidden !important;
}
.feature-carousel-slide-bg,
.feature-carousel-slide::after{
  border-radius:inherit !important;
}

/* Geometry only: keep the 3.33 visibility logic, but extend the ring so it fully hugs the card edge. */
.game-card,.system-card,.profile-favorite-card,.download-bios-card,
.feature-carousel-slide,.system-hero,.game-hero{
  overflow:hidden !important;
  background-clip:padding-box !important;
}
.art-frame{
  inset:-1px !important;
  padding:4px !important;
  border-radius:inherit !important;
  transform:translateZ(0) !important;
}
.game-card .art-frame,
.system-card .art-frame,
.profile-favorite-card .art-frame,
.download-bios-card .art-frame{
  inset:-1px !important;
  padding:3px !important;
}
.feature-carousel-slide .art-frame,
.system-hero .art-frame,
.game-hero .art-frame{
  inset:-1px !important;
  padding:4px !important;
}

/* Glass-style download button. */
.game-download-action,
.download-bios-button,
.button.subtle{
  background:rgba(20,24,22,.32) !important;
  border-color:rgba(255,255,255,.14) !important;
  -webkit-backdrop-filter:blur(14px) saturate(1.14) !important;
  backdrop-filter:blur(14px) saturate(1.14) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 24px rgba(0,0,0,.16) !important;
}
.game-download-action:hover,
.download-bios-button:hover,
.button.subtle:hover{
  background:rgba(255,255,255,.14) !important;
  border-color:rgba(255,255,255,.20) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 14px 28px rgba(0,0,0,.18) !important;
}

/* Favorite button should emit light when active. */
.favorite-detail.is-favorite{
  background:#f6f7f5 !important;
  color:#171a18 !important;
  border-color:#fff !important;
  box-shadow:
    0 10px 24px rgba(0,0,0,.26),
    0 0 0 1px rgba(255,255,255,.16),
    0 0 18px color-mix(in srgb,var(--game-accent,var(--system-accent,#ffffff)) 20%, white 12%, transparent) !important;
}
.favorite-detail.is-favorite .favorite-symbol{
  text-shadow:0 0 12px rgba(255,255,255,.38);
}

/* ===== 3.35 · rounded carousel/hero frame correction =====
   User correction:
   - small card frames were already OK
   - carousel banners and full emulator/game hero panels must stay rounded
   - the animated frame must cover the whole border with no exposed square edge
*/

/* Keep cards untouched; only fix carousel banners + full hero panels. */
.feature-carousel{
  border:none !important;
  border-radius:20px !important;
  overflow:hidden !important;
  background-clip:padding-box !important;
}
.feature-carousel-viewport{
  border-radius:20px !important;
  overflow:hidden !important;
}
.feature-carousel-track{
  border-radius:20px !important;
}
.feature-carousel-slide,
.feature-carousel-slide-bg,
.feature-carousel-slide::after{
  border-radius:20px !important;
}
.feature-carousel-slide{
  overflow:hidden !important;
  background-clip:padding-box !important;
}

.system-hero,
.game-hero{
  border:none !important;
  border-radius:20px !important;
  overflow:hidden !important;
  background-clip:padding-box !important;
}
.system-hero::after,
.game-hero::after,
.system-hero.has-artwork,
.game-hero.has-artwork{
  border-radius:20px !important;
}

/* Make the artwork ring fully hug the rounded edge and cover the entire perimeter. */
.feature-carousel-slide .art-frame,
.system-hero .art-frame,
.game-hero .art-frame{
  inset:0 !important;
  padding:4px !important;
  border-radius:20px !important;
  overflow:hidden !important;
  opacity:1 !important;
}

/* Stronger clipping for the inner layers so no square corner leaks through. */
.feature-carousel-slide > :not(.art-frame),
.system-hero > :not(.art-frame),
.game-hero > :not(.art-frame){
  border-radius:inherit !important;
}
.feature-carousel-slide .feature-carousel-copy,
.system-hero .system-hero-inner,
.game-hero .game-hero-inner{
  position:relative;
  z-index:3;
}

/* Subtle inner shadow to hide any exposed seam at the perimeter. */
.feature-carousel-slide::before,
.system-hero::before,
.game-hero::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02), inset 0 0 0 2px rgba(0,0,0,.16);
  z-index:2;
}

/* Ensure the frame corners remain rounded on smaller viewports too. */
@media (max-width:820px), (max-height:520px) and (orientation:landscape) and (pointer:coarse){
  .feature-carousel,
  .feature-carousel-viewport,
  .feature-carousel-slide,
  .feature-carousel-slide-bg,
  .feature-carousel-slide::after,
  .system-hero,
  .game-hero,
  .system-hero::after,
  .game-hero::after,
  .feature-carousel-slide .art-frame,
  .system-hero .art-frame,
  .game-hero .art-frame{
    border-radius:20px !important;
  }
}



/* ===== 3.36 · BIOS cleanup + home info + logo rail ===== */
/* Home info card */
.home-info-section{padding-top:0}
.home-info-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;border:1px solid rgba(255,255,255,.075);border-radius:20px;background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.025));box-shadow:0 16px 32px rgba(0,0,0,.18)}
.home-info-copy{max-width:760px}
.home-info-copy h2{font-family:var(--font-display);font-size:26px;line-height:1.03;letter-spacing:-.045em;margin:7px 0 10px}
.home-info-copy p{font-size:10px;line-height:1.7;color:#acb3ae;max-width:700px}
.home-info-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.home-discord-button{min-width:120px}

/* Home systems become a logo-only rail similar to the reference video. */
.home-system-logo-rail{padding:6px 0 14px}
.home-system-logo-track{display:flex;align-items:center;gap:14px;width:max-content;min-width:100%}
.home-system-logo-track .favorite-card-shell,
.home-system-logo-track .media-card-shell{display:none!important}
.home-system-logo-pill{flex:0 0 auto;display:flex;align-items:center;justify-content:center;min-width:170px;height:88px;padding:0 26px;border-radius:22px;border:1px solid rgba(255,255,255,.065);background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.018));box-shadow:inset 0 1px 0 rgba(255,255,255,.04);text-decoration:none;transition:transform .18s var(--ease),border-color .18s ease,background .18s ease,box-shadow .18s ease}
.home-system-logo-pill:hover,.home-system-logo-pill:focus-visible{transform:translateY(-2px);border-color:color-mix(in srgb,var(--a,#7f8c85) 28%,rgba(255,255,255,.12));background:linear-gradient(135deg,color-mix(in srgb,var(--a,#7f8c85) 8%,rgba(255,255,255,.05)),rgba(255,255,255,.022));box-shadow:0 12px 24px rgba(0,0,0,.18),0 0 22px color-mix(in srgb,var(--a,#7f8c85) 10%,transparent)}
.home-system-logo-wrap{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.home-system-logo-wrap img{max-width:140px;max-height:46px;object-fit:contain;object-position:center;filter:brightness(1.06) drop-shadow(0 6px 12px rgba(0,0,0,.22))}
.home-system-logo-wrap .system-logo-fallback{font-family:var(--font-display);font-size:26px;font-weight:800;line-height:1;color:#eef1ee;letter-spacing:-.04em}

/* BIOS page cleanup */
.downloads-hero{grid-template-columns:minmax(0,1fr)!important}
.downloads-hero-copy{max-width:760px}
.downloads-hero-panel{display:none!important}
.downloads-section-head{align-items:flex-end!important}
.downloads-section-head p{display:none!important}
.download-bios-copy p{min-height:0!important}
.download-bios-files{margin-top:12px!important}
.download-bios-button{min-width:170px}

@media (max-width:980px){
  .home-info-card{flex-direction:column;align-items:flex-start}
}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){
  .home-system-logo-pill{min-width:146px;height:76px;padding:0 18px;border-radius:18px}
  .home-system-logo-wrap img{max-width:118px;max-height:38px}
}
@media (max-width:620px){
  .home-info-card{padding:18px}
  .home-info-copy h2{font-size:22px}
  .home-system-logo-pill{min-width:136px;height:70px;padding:0 16px;border-radius:16px}
  .home-system-logo-wrap .system-logo-fallback{font-size:22px}
}

/* ===== 3.37 · premium logo rail polish =====
   Goal: make the console-logo rail feel more premium without going back to full cards.
*/
.home-systems-section .media-section-head{margin-bottom:16px!important}
.home-systems-section .media-section-head span{max-width:540px}

.home-system-logo-rail{
  position:relative;
  padding:10px 22px 18px!important;
  border:1px solid rgba(255,255,255,.06);
  border-radius:24px;
  background:
    radial-gradient(circle at 16% 18%, rgba(255,255,255,.055), transparent 28%),
    linear-gradient(135deg, rgba(255,255,255,.035), rgba(255,255,255,.012));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    inset 0 -1px 0 rgba(255,255,255,.02),
    0 18px 34px rgba(0,0,0,.18);
  -webkit-backdrop-filter:blur(10px) saturate(1.04);
  backdrop-filter:blur(10px) saturate(1.04);
}
.home-system-logo-rail::before,
.home-system-logo-rail::after{
  content:"";
  position:absolute;
  top:9px;
  bottom:9px;
  width:56px;
  z-index:3;
  pointer-events:none;
}
.home-system-logo-rail::before{
  left:0;
  border-radius:24px 0 0 24px;
  background:linear-gradient(90deg, rgba(14,17,16,.96), rgba(14,17,16,.72) 42%, transparent);
}
.home-system-logo-rail::after{
  right:0;
  border-radius:0 24px 24px 0;
  background:linear-gradient(270deg, rgba(14,17,16,.96), rgba(14,17,16,.72) 42%, transparent);
}
.home-system-logo-track{
  gap:16px!important;
  align-items:stretch!important;
  padding:0 8px!important;
}
.home-system-logo-pill{
  position:relative;
  isolation:isolate;
  min-width:184px!important;
  height:96px!important;
  padding:0 28px!important;
  border-radius:24px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02)),
    linear-gradient(135deg, color-mix(in srgb,var(--a,#7f8c85) 8%, transparent), color-mix(in srgb,var(--b,#cad0cb) 5%, transparent))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 14px 26px rgba(0,0,0,.16)!important;
  -webkit-backdrop-filter:blur(9px) saturate(1.04)!important;
  backdrop-filter:blur(9px) saturate(1.04)!important;
  overflow:hidden;
}
.home-system-logo-pill::before{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  background:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.09), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.018), transparent 40%);
  opacity:.95;
  z-index:0;
  pointer-events:none;
}
.home-system-logo-pill::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(115deg, transparent 0%, rgba(255,255,255,.08) 22%, transparent 42%);
  transform:translateX(-140%);
  transition:transform .8s cubic-bezier(.22,.72,.22,1), opacity .2s ease;
  opacity:.55;
  z-index:0;
  pointer-events:none;
}
.home-system-logo-pill:hover::after,
.home-system-logo-pill:focus-visible::after{transform:translateX(140%)}
.home-system-logo-pill:hover,
.home-system-logo-pill:focus-visible{
  transform:translateY(-3px) scale(1.01)!important;
  border-color:color-mix(in srgb,var(--a,#7f8c85) 34%, rgba(255,255,255,.14))!important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.026)),
    linear-gradient(135deg, color-mix(in srgb,var(--a,#7f8c85) 12%, transparent), color-mix(in srgb,var(--b,#cad0cb) 8%, transparent))!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 20px 34px rgba(0,0,0,.22),
    0 0 24px color-mix(in srgb,var(--a,#7f8c85) 10%, transparent)!important;
}
.home-system-logo-wrap{
  position:relative;
  z-index:1;
}
.home-system-logo-wrap img{
  max-width:148px!important;
  max-height:50px!important;
  opacity:.96;
  filter:brightness(1.08) contrast(1.03) drop-shadow(0 8px 16px rgba(0,0,0,.24))!important;
  transition:transform .18s ease, filter .18s ease, opacity .18s ease;
}
.home-system-logo-pill:hover .home-system-logo-wrap img,
.home-system-logo-pill:focus-visible .home-system-logo-wrap img{
  transform:scale(1.03);
  filter:brightness(1.12) contrast(1.04) drop-shadow(0 10px 18px rgba(0,0,0,.28))!important;
}
.home-system-logo-wrap .system-logo-fallback{
  font-size:28px!important;
  text-shadow:0 8px 18px rgba(0,0,0,.22);
}

@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){
  .home-system-logo-rail{padding:8px 14px 14px!important;border-radius:20px}
  .home-system-logo-rail::before,.home-system-logo-rail::after{width:34px;top:6px;bottom:6px}
  .home-system-logo-pill{min-width:154px!important;height:80px!important;padding:0 20px!important;border-radius:20px!important}
  .home-system-logo-wrap img{max-width:124px!important;max-height:42px!important}
}
@media (max-width:620px){
  .home-system-logo-track{gap:12px!important}
  .home-system-logo-pill{min-width:144px!important;height:74px!important;padding:0 18px!important;border-radius:18px!important}
  .home-system-logo-wrap img{max-width:114px!important;max-height:38px!important}
  .home-system-logo-wrap .system-logo-fallback{font-size:24px!important}
}

/* ===== 3.38 · continuous video-style logo marquee + richer home info ===== */

/* Richer information panel */
.home-info-card{
  position:relative;
  overflow:hidden;
  display:grid!important;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)!important;
  grid-template-areas:"main features" "stats stats";
  gap:18px 24px!important;
  padding:24px!important;
  background:
    radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--ambient-a,#7d8580) 14%,transparent),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.022))!important;
}
.home-info-card::after{
  content:"";
  position:absolute;
  width:280px;
  height:280px;
  right:-110px;
  top:-150px;
  border-radius:50%;
  background:color-mix(in srgb,var(--ambient-b,#4c544f) 14%,transparent);
  filter:blur(34px);
  pointer-events:none;
}
.home-info-main{grid-area:main;position:relative;z-index:1;display:flex;flex-direction:column;justify-content:space-between;gap:20px;min-height:210px}
.home-info-copy{max-width:720px!important}
.home-info-copy h2{font-size:clamp(26px,3vw,38px)!important;max-width:680px;margin:8px 0 12px!important}
.home-info-copy p{max-width:680px!important;font-size:10px!important;line-height:1.7!important;color:#b3bab5!important}
.home-info-actions{margin-top:auto}
.home-info-grid{grid-area:features;position:relative;z-index:1;display:grid;gap:8px;align-content:center}
.home-info-feature{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;padding:12px 13px;border:1px solid rgba(255,255,255,.055);border-radius:15px;background:rgba(9,12,10,.20)}
.home-info-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:rgba(255,255,255,.055);box-shadow:inset 0 1px 0 rgba(255,255,255,.045);color:#edf0ed}
.home-info-icon svg{width:18px;height:18px}
.home-info-feature strong,.home-info-feature span{display:block}
.home-info-feature strong{font-size:10px;color:#f5f6f4;margin-bottom:3px}
.home-info-feature div>span{font-size:8px;line-height:1.45;color:#8f9891}
.home-info-stats{grid-area:stats;position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:4px}
.home-info-stats>div{padding:12px 14px;border-top:1px solid rgba(255,255,255,.065);background:linear-gradient(180deg,rgba(255,255,255,.018),transparent)}
.home-info-stats strong,.home-info-stats span{display:block}
.home-info-stats strong{font-family:var(--font-display);font-size:18px;letter-spacing:-.035em;color:#f5f6f4}
.home-info-stats span{margin-top:2px;font-size:7px;color:#7f8881;text-transform:uppercase;letter-spacing:.06em}

/* True continuous logo rail, modeled after the supplied video: no per-logo cards. */
.home-systems-section{overflow:hidden}
.home-systems-section .media-section-head{margin-bottom:10px!important}
.home-system-logo-rail{
  position:relative!important;
  overflow:hidden!important;
  padding:18px 0!important;
  border:0!important;
  border-radius:0!important;
  background:
    radial-gradient(70% 120% at 50% 50%,color-mix(in srgb,var(--ambient-a,#7d8580) 12%,transparent),transparent 70%),
    linear-gradient(90deg,rgba(255,255,255,.012),rgba(255,255,255,.025),rgba(255,255,255,.012))!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  scrollbar-width:none;
  cursor:default!important;
}
.home-system-logo-rail::-webkit-scrollbar{display:none}
.home-system-logo-rail::before,
.home-system-logo-rail::after{
  content:""!important;
  position:absolute!important;
  z-index:4!important;
  top:0!important;
  bottom:0!important;
  width:84px!important;
  pointer-events:none!important;
  border-radius:0!important;
}
.home-system-logo-rail::before{left:0!important;background:linear-gradient(90deg,rgba(28,34,30,.98),rgba(28,34,30,.72) 34%,transparent)!important}
.home-system-logo-rail::after{right:0!important;background:linear-gradient(270deg,rgba(28,34,30,.98),rgba(28,34,30,.72) 34%,transparent)!important}
.home-system-logo-track{
  --logo-marquee-distance:50%;
  display:flex!important;
  align-items:center!important;
  width:max-content!important;
  min-width:0!important;
  gap:52px!important;
  padding:0!important;
  will-change:transform;
  animation:home-logo-marquee 34s linear infinite!important;
  transform:translate3d(0,0,0);
}
.home-system-logo-track.is-paused{animation-play-state:paused!important}
.home-system-logo-group{display:flex;align-items:center;gap:52px;flex:0 0 auto}
.home-system-logo-item{
  flex:0 0 auto;
  width:178px;
  height:82px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 16px;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  text-decoration:none;
  opacity:.86;
  transition:opacity .2s ease,transform .2s ease,filter .2s ease;
}
.home-system-logo-item::before,.home-system-logo-item::after{display:none!important}
.home-system-logo-wrap{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative;z-index:1}
.home-system-logo-wrap img{
  max-width:154px!important;
  max-height:52px!important;
  object-fit:contain;
  object-position:center;
  opacity:1!important;
  filter:grayscale(1) brightness(1.65) contrast(.86) drop-shadow(0 8px 16px rgba(0,0,0,.18))!important;
  transition:filter .22s ease,transform .22s ease,opacity .22s ease!important;
}
.home-system-logo-wrap .system-logo-fallback{
  font-family:var(--font-display);
  font-size:26px!important;
  font-weight:800;
  color:#d9ded9!important;
  letter-spacing:-.045em;
  text-align:center;
  white-space:nowrap;
}
.home-system-logo-item:hover,.home-system-logo-item:focus-visible{
  opacity:1;
  transform:scale(1.055)!important;
  outline:none;
}
.home-system-logo-item:hover .home-system-logo-wrap img,
.home-system-logo-item:focus-visible .home-system-logo-wrap img{
  filter:grayscale(.15) brightness(1.18) contrast(1) drop-shadow(0 10px 20px color-mix(in srgb,var(--a,#7f8c85) 24%,rgba(0,0,0,.28)))!important;
  transform:none!important;
}
@keyframes home-logo-marquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(calc(-1 * var(--logo-marquee-distance)),0,0)}
}

@media(max-width:980px){
  .home-info-card{grid-template-columns:1fr!important;grid-template-areas:"main" "features" "stats"!important}
  .home-info-main{min-height:0}
  .home-info-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home-info-feature{grid-template-columns:34px minmax(0,1fr);padding:10px}
  .home-info-icon{width:34px;height:34px;border-radius:11px}
}
@media(max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){
  .home-system-logo-rail{padding:14px 0!important}
  .home-system-logo-rail::before,.home-system-logo-rail::after{width:48px!important}
  .home-system-logo-track,.home-system-logo-group{gap:34px!important}
  .home-system-logo-track{animation-duration:30s!important}
  .home-system-logo-item{width:146px;height:70px;padding:0 12px}
  .home-system-logo-wrap img{max-width:126px!important;max-height:44px!important}
}
@media(max-width:620px){
  .home-info-grid{grid-template-columns:1fr}
  .home-info-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-info-stats>div:last-child{grid-column:1/-1}
  .home-system-logo-track,.home-system-logo-group{gap:28px!important}
  .home-system-logo-item{width:132px;height:64px}
  .home-system-logo-wrap img{max-width:112px!important;max-height:38px!important}
  .home-system-logo-wrap .system-logo-fallback{font-size:22px!important}
}
@media(prefers-reduced-motion:reduce){
  .home-system-logo-track{animation-duration:80s!important}
}



/* ===== 3.39 · home info rollback + emulator showcase ===== */
/* Restore the simpler information panel from before the expanded 3.38 treatment. */
.home-info-card.home-info-card-simple{
  display:flex!important;
  grid-template-columns:none!important;
  grid-template-areas:none!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  min-height:0!important;
  padding:22px 24px!important;
  border:1px solid rgba(255,255,255,.075)!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.025))!important;
  box-shadow:0 16px 32px rgba(0,0,0,.18)!important;
  overflow:hidden!important;
}
.home-info-card.home-info-card-simple::after{display:none!important}
.home-info-card-simple .home-info-copy{max-width:760px!important}
.home-info-card-simple .home-info-copy h2{
  font-family:var(--font-display)!important;
  font-size:26px!important;
  line-height:1.03!important;
  letter-spacing:-.045em!important;
  margin:7px 0 10px!important;
  max-width:760px!important;
}
.home-info-card-simple .home-info-copy p{
  font-size:10px!important;
  line-height:1.7!important;
  color:#acb3ae!important;
  max-width:700px!important;
}
.home-info-card-simple .home-info-actions{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin-top:0!important}

/* Remove the logo-marquee presentation entirely. */
.home-system-logo-rail,.home-system-logo-track,.home-system-logo-group,.home-system-logo-item{animation:none!important}

/* Emulator showcase: multi-row editorial grid instead of a plain horizontal row. */
.home-systems-section{overflow:visible!important}
.home-systems-section .media-section-head{margin-bottom:14px!important}
.home-emulator-showcase{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-flow:dense;
  gap:14px;
  padding:3px 3px 10px;
}
.home-emulator-showcase .favorite-card-shell,
.home-emulator-showcase .media-card-shell{
  min-width:0!important;
  width:100%!important;
  flex:none!important;
  grid-column:span 4;
  scroll-snap-align:none!important;
}
.home-emulator-showcase .media-card-shell:nth-child(1),
.home-emulator-showcase .media-card-shell:nth-child(6),
.home-emulator-showcase .media-card-shell:nth-child(11){grid-column:span 8}
.home-emulator-showcase .system-card{
  width:100%!important;
  aspect-ratio:1.52!important;
  border-radius:20px!important;
  border:1px solid rgba(255,255,255,.075)!important;
  background:#141815!important;
  box-shadow:0 16px 34px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.035)!important;
  overflow:hidden!important;
}
.home-emulator-showcase .media-card-shell:nth-child(1) .system-card,
.home-emulator-showcase .media-card-shell:nth-child(6) .system-card,
.home-emulator-showcase .media-card-shell:nth-child(11) .system-card{aspect-ratio:2.10!important}
.home-emulator-showcase .system-card-bg{
  transform:scale(1.02);
  filter:saturate(1.04) brightness(.90);
  transition:transform .55s var(--ease),filter .35s ease!important;
}
.home-emulator-showcase .system-card-shade{
  background:
    linear-gradient(180deg,rgba(0,0,0,.02) 10%,rgba(0,0,0,.10) 42%,rgba(5,8,6,.82) 100%),
    linear-gradient(90deg,rgba(8,11,9,.32),transparent 50%)!important;
}
.home-emulator-showcase .system-card:hover,
.home-emulator-showcase .system-card:focus-visible,
.home-emulator-showcase .system-card.gamepad-hover{
  transform:perspective(900px) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg)) translateY(-4px) scale(1.012)!important;
  border-color:color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 34%,rgba(255,255,255,.14))!important;
  box-shadow:
    0 22px 44px rgba(0,0,0,.30),
    0 0 28px color-mix(in srgb,var(--frame-a,var(--a,#7f8c85)) 14%,transparent)!important;
}
.home-emulator-showcase .system-card:hover .system-card-bg,
.home-emulator-showcase .system-card:focus-visible .system-card-bg,
.home-emulator-showcase .system-card.gamepad-hover .system-card-bg{
  transform:scale(1.065)!important;
  filter:saturate(1.10) brightness(.96)!important;
}
.home-emulator-showcase .system-card-badges{top:13px!important;left:13px!important;right:13px!important}
.home-emulator-showcase .system-short-badge,
.home-emulator-showcase .system-game-count{
  min-height:25px!important;
  border-color:rgba(255,255,255,.10)!important;
  background:rgba(11,14,12,.54)!important;
  -webkit-backdrop-filter:blur(9px) saturate(1.05);
  backdrop-filter:blur(9px) saturate(1.05);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
}
.home-emulator-showcase .system-short-badge{padding:0 10px!important}
.home-emulator-showcase .system-game-count{padding:0 9px!important}
.home-emulator-showcase .system-logo-wrap{
  left:15px!important;
  right:90px!important;
  bottom:36px!important;
  height:58px!important;
}
.home-emulator-showcase .system-logo-wrap img{
  max-width:78%!important;
  max-height:56px!important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.42))!important;
}
.home-emulator-showcase .system-logo-fallback{
  font-size:20px!important;
  text-shadow:0 4px 14px rgba(0,0,0,.48)!important;
}
.home-emulator-showcase .system-arrow{
  left:15px!important;
  bottom:13px!important;
  font-size:8px!important;
  color:#e4e8e4!important;
}
.home-emulator-showcase .system-era-label{
  right:15px!important;
  bottom:13px!important;
  font-size:8px!important;
  color:#bcc3bd!important;
}

@media (max-width:1180px){
  .home-emulator-showcase{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .home-emulator-showcase .favorite-card-shell,
  .home-emulator-showcase .media-card-shell,
  .home-emulator-showcase .media-card-shell:nth-child(1),
  .home-emulator-showcase .media-card-shell:nth-child(6),
  .home-emulator-showcase .media-card-shell:nth-child(11){grid-column:auto}
  .home-emulator-showcase .system-card,
  .home-emulator-showcase .media-card-shell:nth-child(1) .system-card,
  .home-emulator-showcase .media-card-shell:nth-child(6) .system-card,
  .home-emulator-showcase .media-card-shell:nth-child(11) .system-card{aspect-ratio:1.55!important}
}
@media (max-width:820px),(max-height:520px) and (orientation:landscape) and (pointer:coarse){
  .home-info-card.home-info-card-simple{flex-direction:column!important;align-items:flex-start!important;padding:18px!important}
  .home-emulator-showcase{gap:10px}
  .home-emulator-showcase .system-card{border-radius:17px!important}
}
@media (max-width:560px){
  .home-emulator-showcase{grid-template-columns:1fr}
  .home-emulator-showcase .system-card{aspect-ratio:1.68!important}
  .home-info-card-simple .home-info-copy h2{font-size:22px!important}
}

/* ===== 3.40 · three-emulator home row + BIOS open layout ===== */
/* Home: exactly three random emulator cards plus a fourth library card. */
.home-emulator-showcase{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  gap:13px!important;
  padding:3px 3px 10px!important;
}
.home-emulator-showcase .favorite-card-shell,
.home-emulator-showcase .media-card-shell,
.home-emulator-showcase .media-card-shell:nth-child(1),
.home-emulator-showcase .media-card-shell:nth-child(6),
.home-emulator-showcase .media-card-shell:nth-child(11){
  grid-column:auto!important;
  min-width:0!important;
  width:100%!important;
  flex:none!important;
}
.home-emulator-showcase .system-card,
.home-emulator-showcase .media-card-shell:nth-child(1) .system-card,
.home-emulator-showcase .media-card-shell:nth-child(6) .system-card,
.home-emulator-showcase .media-card-shell:nth-child(11) .system-card{
  aspect-ratio:1.48!important;
  min-height:0!important;
}
.home-emulator-showcase .system-logo-wrap{
  right:16px!important;
  bottom:38px!important;
}
.home-emulator-showcase .system-logo-wrap img{max-width:76%!important}

.home-emulator-more-shell{display:block!important}
.home-emulator-more-card{
  position:relative;
  isolation:isolate;
  display:flex;
  min-height:100%;
  aspect-ratio:1.48;
  flex-direction:column;
  justify-content:flex-end;
  overflow:hidden;
  padding:20px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:20px;
  background:
    radial-gradient(circle at 82% 16%,rgba(255,255,255,.10),transparent 27%),
    radial-gradient(circle at 12% 82%,color-mix(in srgb,var(--ambient-a,#7d8580) 20%,transparent),transparent 38%),
    linear-gradient(145deg,rgba(39,46,41,.96),rgba(17,21,19,.98));
  box-shadow:0 16px 34px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.045);
  transition:transform .22s var(--ease),border-color .22s ease,box-shadow .22s ease;
}
.home-emulator-more-card::before{
  content:"";
  position:absolute;
  width:170px;
  height:170px;
  right:-52px;
  top:-58px;
  border:1px solid rgba(255,255,255,.065);
  border-radius:50%;
  box-shadow:0 0 0 28px rgba(255,255,255,.018),0 0 0 56px rgba(255,255,255,.012);
  pointer-events:none;
}
.home-emulator-more-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg,transparent 32%,rgba(255,255,255,.08) 49%,transparent 66%);
  transform:translateX(-120%);
  transition:transform .8s var(--ease);
  pointer-events:none;
}
.home-emulator-more-card:hover::after,.home-emulator-more-card:focus-visible::after{transform:translateX(120%)}
.home-emulator-more-card:hover,.home-emulator-more-card:focus-visible{
  transform:translateY(-4px) scale(1.012);
  outline:none;
  border-color:rgba(255,255,255,.17);
  box-shadow:0 22px 44px rgba(0,0,0,.30),0 0 26px color-mix(in srgb,var(--ambient-a,#7d8580) 12%,transparent);
}
.home-emulator-more-kicker{
  position:relative;
  z-index:1;
  margin-bottom:8px;
  color:#9fa7a1;
  font-size:7px;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.home-emulator-more-card strong{
  position:relative;
  z-index:1;
  max-width:210px;
  font-family:var(--font-display);
  font-size:22px;
  line-height:1.02;
  letter-spacing:-.045em;
  color:#f5f7f5;
}
.home-emulator-more-copy{
  position:relative;
  z-index:1;
  max-width:230px;
  margin-top:8px;
  color:#aab2ac;
  font-size:8px;
  line-height:1.55;
}
.home-emulator-more-action{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:17px;
  padding-top:11px;
  border-top:1px solid rgba(255,255,255,.07);
  color:#eef1ee;
  font-size:8px;
  font-weight:750;
}
.home-emulator-more-action b{font-size:16px;font-weight:500;transition:transform .2s var(--ease)}
.home-emulator-more-card:hover .home-emulator-more-action b{transform:translateX(3px)}

/* BIOS: use the full hero width; don't leave the removed panel's column as empty space. */
.downloads-hero{
  display:block!important;
  grid-template-columns:none!important;
  width:100%!important;
}
.downloads-hero-copy{
  width:100%!important;
  max-width:none!important;
  min-height:210px;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:32px 34px!important;
}
.downloads-hero-copy p{max-width:820px!important}

/* BIOS cards should sit directly on the page, not inside another panel. */
.downloads-section{
  margin-top:14px!important;
  padding:10px 0 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
.downloads-section-head{padding:0 2px!important;margin-bottom:15px!important}
.download-bios-grid{padding:0!important}

@media (max-width:1180px){
  .home-emulator-showcase{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .home-emulator-showcase .system-card,
  .home-emulator-more-card{aspect-ratio:1.58!important}
}
@media (max-width:620px){
  .home-emulator-showcase{grid-template-columns:1fr!important;gap:10px!important}
  .home-emulator-showcase .system-card,
  .home-emulator-more-card{aspect-ratio:1.70!important}
  .downloads-hero-copy{min-height:0!important;padding:23px 19px!important}
}



/* ===== 3.54 · download-only platforms ===== */
.game-hero [data-play].is-disabled,
.game-hero [data-play]:disabled{
  cursor:not-allowed!important;
  opacity:.48!important;
  filter:saturate(.45)!important;
  box-shadow:none!important;
  transform:none!important;
}
.game-download-only .player-placeholder .pixel-play{opacity:.34;filter:grayscale(1)}
.game-download-only .player-placeholder strong{letter-spacing:.06em}


.button-symbol-only{
  min-width:54px!important;
  width:54px!important;
  padding-inline:0!important;
  justify-content:center!important;
  gap:0!important;
}
.play-disabled-glyph{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px}
.play-disabled-glyph svg{display:block;width:18px;height:18px;fill:currentColor;opacity:.92}
