:root{--pixl-theme:#9B39FF;--pixl-theme-2:#C47AFF;--pixl-theme-rgb:155,57,255;--pixl-theme-ink:#fff}
.pixl-theme-studio,.pixl-theme-studio *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}.pixl-theme-studio{position:fixed;inset:0;z-index:10020;display:flex;align-items:flex-end;opacity:0;transition:opacity .18s ease;font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Display",system-ui,sans-serif}.pixl-theme-studio.is-open{opacity:1}.pt-scrim{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(12px)}.pt-sheet{position:relative;width:100%;max-height:88dvh;overflow:auto;-webkit-overflow-scrolling:touch;padding:10px 20px calc(env(safe-area-inset-bottom) + 24px);border:1px solid rgba(255,255,255,.12);border-bottom:0;border-radius:32px 32px 0 0;background:linear-gradient(180deg,color-mix(in srgb,var(--pixl-theme) 9%,#15131b),#09090e 34%);box-shadow:0 -30px 90px #000}.pt-grip{width:44px;height:5px;border-radius:10px;background:#ffffff2d;margin:2px auto 18px}.pt-sheet header{display:flex;justify-content:space-between;gap:16px}.pt-sheet header>div>span,.pt-section>span{font-size:10px;letter-spacing:.18em;font-weight:900;color:var(--pixl-theme-2)}.pt-sheet h2{font-size:30px;margin:5px 0;letter-spacing:-.04em}.pt-sheet header p{margin:0;color:#96909f}.pt-sheet header>button{width:48px;height:48px;border-radius:17px;border:1px solid #ffffff16;background:#ffffff0c;color:#fff;font-size:28px}.pt-tabs,.ps-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:20px 0 16px;padding:4px;border-radius:15px;background:#ffffff0a;border:1px solid #ffffff0d}.pt-tabs button,.ps-tabs button{height:40px;border:0;border-radius:11px;background:transparent;color:#77717f;font-size:10px;font-weight:950;letter-spacing:.14em}.pt-tabs button.is-active,.ps-tabs button.is-active{background:rgba(var(--pixl-theme-rgb),.18);color:#fff;box-shadow:inset 0 0 0 1px rgba(var(--pixl-theme-rgb),.38)}.pt-grid{display:grid;gap:10px;margin-top:10px}.pt-card{width:100%;border:1px solid #ffffff13;border-radius:20px;background:#ffffff08;color:#fff;padding:11px;display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:12px;text-align:left}.pt-card.is-active{border-color:rgba(var(--pixl-theme-rgb),.72);background:rgba(var(--pixl-theme-rgb),.10)}.pt-swatch{width:62px;height:56px;border-radius:14px;position:relative;overflow:hidden;background:radial-gradient(circle at 75% 20%,var(--t2),transparent 42%),linear-gradient(145deg,color-mix(in srgb,var(--t) 24%,#0a0a0f),#08080d);border:1px solid rgba(255,255,255,.1)}.pt-swatch i{position:absolute;left:8px;bottom:8px;width:23px;height:23px;border-radius:7px;background:var(--t);box-shadow:0 0 20px color-mix(in srgb,var(--t) 70%,transparent)}.pt-swatch b{position:absolute;right:9px;bottom:7px;font:900 17px/1 ui-monospace,monospace;color:var(--t)}.pt-copy{display:grid;gap:4px;min-width:0}.pt-copy strong{font-size:14px}.pt-copy small{font-size:10px;color:#8e8797}.pt-state{font-size:8px;letter-spacing:.16em;font-weight:950;color:var(--pixl-theme-2)}.pt-sheet footer{text-align:center;margin-top:20px;color:#625d69;font-size:9px;letter-spacing:.08em;font-weight:750}
html[data-pixl-theme] .pixl-os{--px-violet:var(--pixl-theme)!important;--px-violet2:var(--pixl-theme-2)!important;--px-lime:var(--pixl-theme)!important}html[data-pixl-theme] .px-ambient i{background:var(--pixl-theme)!important;box-shadow:0 0 18px var(--pixl-theme)!important}html[data-pixl-theme] .px-brand img{box-shadow:0 0 25px rgba(var(--pixl-theme-rgb),.38)!important}html[data-pixl-theme] .px-local i,html[data-pixl-theme] .px-kicker i,html[data-pixl-theme] .px-center-foot i{background:var(--pixl-theme)!important;box-shadow:0 0 12px rgba(var(--pixl-theme-rgb),.65)!important}html[data-pixl-theme] .px-stage:after{background:linear-gradient(90deg,var(--pixl-theme),var(--pixl-theme-2),transparent 82%)!important}html[data-pixl-theme] .px-primary{background:var(--pixl-theme)!important;color:var(--pixl-theme-ink)!important}html[data-pixl-theme] .px-game-tile.is-selected{border-color:rgba(var(--pixl-theme-rgb),.78)!important}html[data-pixl-theme] .px-console-dock>button.is-active{color:var(--pixl-theme-2)!important}html[data-pixl-theme] .px-console-dock .px-home-core{background:linear-gradient(145deg,var(--pixl-theme-2),var(--pixl-theme))!important;box-shadow:0 0 0 5px rgba(var(--pixl-theme-rgb),.09),0 0 30px rgba(var(--pixl-theme-rgb),.44)!important}html[data-pixl-theme] .px-center-head span,html[data-pixl-theme] .px-library-top span,html[data-pixl-theme] .px-shelf-head button{color:var(--pixl-theme-2)!important}html[data-pixl-theme] .px-center-grid>button>span{background:rgba(var(--pixl-theme-rgb),.13)!important;color:var(--pixl-theme-2)!important}html[data-pixl-theme] .px-center-wide>span{background:var(--pixl-theme)!important;color:var(--pixl-theme-ink)!important}html[data-pixl-theme] .px-library-install{border-color:rgba(var(--pixl-theme-rgb),.28)!important;background:rgba(var(--pixl-theme-rgb),.09)!important;color:var(--pixl-theme-2)!important}html[data-pixl-theme] .filter-pill.active{background:var(--pixl-theme)!important}html[data-pixl-theme] .ps-sheet{background:linear-gradient(180deg,color-mix(in srgb,var(--pixl-theme) 8%,#17131f),#09090e)!important}html[data-pixl-theme] .ps-sheet header span,html[data-pixl-theme] .ps-section>span{color:var(--pixl-theme-2)!important}html[data-pixl-theme] .ps-card.is-active{border-color:rgba(var(--pixl-theme-rgb),.72)!important;background:rgba(var(--pixl-theme-rgb),.10)!important}html[data-pixl-theme] .ps-import{border-color:rgba(var(--pixl-theme-rgb),.48)!important;background:rgba(var(--pixl-theme-rgb),.08)!important}html[data-pixl-theme] .ps-import>span{background:linear-gradient(135deg,var(--pixl-theme),var(--pixl-theme-2))!important}
.player.pixl-shell-active[data-pixl-theme] .actions.pixl-face-buttons>.pixl-face{border-color:color-mix(in srgb,var(--pixl-theme) 55%,#ffffff22)!important}.player.pixl-shell-active[data-pixl-theme] .actions.pixl-face-buttons>.pixl-face-x{background:linear-gradient(145deg,var(--pixl-theme),color-mix(in srgb,var(--pixl-theme) 52%,#111))!important}.player.pixl-shell-active[data-pixl-theme] .actions.pixl-face-buttons>.pixl-face-i{background:linear-gradient(145deg,var(--pixl-theme-2),color-mix(in srgb,var(--pixl-theme-2) 45%,#111))!important}.player.pixl-shell-active[data-pixl-theme] .actions.pixl-face-buttons>.pixl-face-p,.player.pixl-shell-active[data-pixl-theme] .actions.pixl-face-buttons>.pixl-face-l{background:color-mix(in srgb,var(--pixl-theme) 14%,#130f1d)!important}.player.pixl-shell-active[data-pixl-theme] .actions.pixl-face-buttons>.pixl-face::after{background:var(--pixl-theme-ink)!important}
/* 4.6 — full-palette theme integration. Theme color now owns the PIXL atmosphere,
   while the original logo artwork remains pixel-for-pixel unchanged and is hue-shifted only. */
html[data-pixl-theme] .px-v3 .px-ambient{
  background:
    radial-gradient(95% 60% at 10% -8%,hsla(var(--pixl-theme-hue),88%,55%,.17),transparent 64%),
    radial-gradient(70% 45% at 98% 20%,hsla(var(--pixl-theme-hue-2),90%,55%,.09),transparent 72%),
    linear-gradient(180deg,#06060a 0,#040407 68%,#020203 100%)!important;
}
html[data-pixl-theme] .px-v3 .px-orb-a{background:hsla(var(--pixl-theme-hue),100%,55%,1)!important}
html[data-pixl-theme] .px-v3 .px-orb-b{background:hsla(var(--pixl-theme-hue-2),100%,56%,1)!important}
html[data-pixl-theme] .px-v3 .px-world-pixel.is-focus-a{color:hsla(var(--pixl-theme-hue),100%,67%,1)!important}
html[data-pixl-theme] .px-v3 .px-world-pixel.is-focus-b{color:hsla(var(--pixl-theme-hue-2),100%,68%,1)!important}
html[data-pixl-theme] .px-v3 .px-world-pixel.is-lime{color:var(--pixl-theme)!important}
html[data-pixl-theme] .px-v3 .px-stage{
  background:
    radial-gradient(65% 55% at 77% 58%,hsla(var(--pixl-theme-hue-2),92%,55%,.18),transparent 70%),
    linear-gradient(136deg,hsla(var(--pixl-theme-hue),76%,36%,.34),rgba(6,6,10,.90) 51%,hsla(var(--pixl-theme-hue-2),76%,38%,.22))!important;
  box-shadow:0 32px 88px rgba(0,0,0,.42),0 0 42px rgba(var(--pixl-theme-rgb),.075),inset 0 1px rgba(255,255,255,.055)!important;
}
html[data-pixl-theme] .px-v3 .px-stage::before{background:linear-gradient(115deg,rgba(255,255,255,.045),transparent 24%),radial-gradient(circle at 80% 62%,hsla(var(--pixl-theme-hue-2),100%,65%,.17),transparent 31%)!important}
html[data-pixl-theme] .px-v3 .px-stage-art>span{text-shadow:0 0 90px hsla(var(--pixl-theme-hue-2),100%,64%,.18)!important}
html[data-pixl-theme] .px-v3 .px-kicker{color:color-mix(in srgb,var(--pixl-theme-2) 58%,white)!important}
html[data-pixl-theme] .px-v3 .px-kicker i{filter:drop-shadow(0 0 8px rgba(var(--pixl-theme-rgb),.78))!important}
html[data-pixl-theme] .px-v3 .px-primary{background:linear-gradient(180deg,var(--pixl-theme-2),var(--pixl-theme))!important;box-shadow:inset 0 1px rgba(255,255,255,.42),0 12px 34px rgba(var(--pixl-theme-rgb),.22)!important}
html[data-pixl-theme] .px-v3 .px-game-tile.is-selected{border-color:rgba(var(--pixl-theme-rgb),.78)!important;box-shadow:0 0 0 1px rgba(var(--pixl-theme-rgb),.09),0 22px 46px rgba(0,0,0,.45),0 0 38px rgba(var(--pixl-theme-rgb),.17)!important}
html[data-pixl-theme] .px-v3 .px-game-tile.is-selected::before{background:var(--pixl-theme)!important;box-shadow:0 0 12px rgba(var(--pixl-theme-rgb),.75)!important}
html[data-pixl-theme] .px-v3 .px-console-dock>button.is-active{color:color-mix(in srgb,var(--pixl-theme-2) 72%,white)!important}
html[data-pixl-theme] .px-v3 .px-home-core{background:linear-gradient(145deg,var(--pixl-theme-2),var(--pixl-theme))!important;box-shadow:0 0 0 5px rgba(var(--pixl-theme-rgb),.08),0 0 33px rgba(var(--pixl-theme-rgb),.40),inset 0 1px rgba(255,255,255,.22)!important}
html[data-pixl-theme] .px-v3 .px-core-ring{border-color:rgba(var(--pixl-theme-rgb),.22)!important}
html[data-pixl-theme] .px-v3.is-center-active .px-home-core{box-shadow:0 0 0 7px rgba(var(--pixl-theme-rgb),.09),0 0 46px rgba(var(--pixl-theme-rgb),.55),inset 0 1px rgba(255,255,255,.24)!important}
html[data-pixl-theme] .px-v3.is-center-active .px-core-ring{box-shadow:0 0 26px rgba(var(--pixl-theme-rgb),.32)!important}
html[data-pixl-theme] .px-v3 .px-center-panel{background:radial-gradient(95% 46% at 50% 0,rgba(var(--pixl-theme-rgb),.12),transparent 70%),linear-gradient(180deg,rgba(22,19,31,.985),rgba(7,7,11,.99))!important;box-shadow:0 -30px 100px rgba(0,0,0,.64),0 0 85px rgba(var(--pixl-theme-rgb),.11)!important}
html[data-pixl-theme] .px-v3 .px-library-sheet{background:radial-gradient(80% 34% at 20% 0,rgba(var(--pixl-theme-rgb),.10),transparent 70%),rgba(7,7,11,.985)!important}
html[data-pixl-theme] .px-v3 .px-center-grid .px-center-wide{background:linear-gradient(100deg,rgba(var(--pixl-theme-rgb),.20),rgba(var(--pixl-theme-rgb),.055))!important;border-color:rgba(var(--pixl-theme-rgb),.20)!important}
html[data-pixl-theme] .px-v3 .px-brand b{color:color-mix(in srgb,var(--pixl-theme-2) 70%,white)!important;background:rgba(var(--pixl-theme-rgb),.07)!important;border-color:rgba(var(--pixl-theme-rgb),.20)!important}
/* Logo design is untouched: filter changes chroma only; white/black pixels remain white/black. */
html[data-pixl-theme] .px-brand img,
html[data-pixl-theme] .px-home-core img,
html[data-pixl-theme] .px-boot-mark img{filter:var(--pixl-logo-filter)!important}
html[data-pixl-theme] .px-brand img{box-shadow:0 0 28px rgba(var(--pixl-theme-rgb),.32)!important}
html[data-pixl-theme="mono"] .px-v3 .px-ambient{background:radial-gradient(95% 60% at 10% -8%,rgba(255,255,255,.075),transparent 64%),radial-gradient(70% 45% at 98% 20%,rgba(255,255,255,.035),transparent 72%),linear-gradient(180deg,#070707,#030303 68%,#010101)!important}
html[data-pixl-theme="mono"] .px-v3 .px-stage{background:radial-gradient(65% 55% at 77% 58%,rgba(255,255,255,.07),transparent 70%),linear-gradient(136deg,rgba(255,255,255,.08),rgba(5,5,5,.94) 51%,rgba(255,255,255,.035))!important}


/* 4.7 — COMPLETE THEME OWNERSHIP
   Decorative chroma throughout PIXL follows the active theme. Semantic error/warning
   colors remain semantic. PIXL Legacy intentionally restores the original violet + lime/cyan identity. */
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) {
  --violet:var(--pixl-theme)!important;
  --pink:var(--pixl-theme-2)!important;
  --lime:var(--pixl-theme)!important;
  --px-lime:var(--pixl-theme)!important;
  --px-violet:var(--pixl-theme)!important;
  --px-violet2:var(--pixl-theme-2)!important;
}

/* Old app-shell / installer / settings / details surfaces */
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .app-shell{
  background:radial-gradient(circle at 50% -15%,rgba(var(--pixl-theme-rgb),.22),transparent 35%),linear-gradient(#09090e,#060608 48%)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) button:focus-visible{outline-color:var(--pixl-theme-2)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .eyebrow,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .sheet-head .eyebrow,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .details-title .eyebrow{color:color-mix(in srgb,var(--pixl-theme-2) 72%,white)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .welcome-card{
  background:radial-gradient(circle at 85% 20%,rgba(var(--pixl-theme-rgb),.33),transparent 38%),linear-gradient(135deg,color-mix(in srgb,var(--pixl-theme) 12%,#111016),#08080d)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .add-orb,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .dock-add,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .drop-icon,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .install-steps span.active{
  background:linear-gradient(135deg,var(--pixl-theme),var(--pixl-theme-2))!important;
  box-shadow:0 12px 30px rgba(var(--pixl-theme-rgb),.34)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .empty-icon,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .setting-icon{
  background:rgba(var(--pixl-theme-rgb),.13)!important;
  color:color-mix(in srgb,var(--pixl-theme-2) 72%,white)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .empty-hint svg,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .privacy-note svg,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .scan-checks svg{
  color:color-mix(in srgb,var(--pixl-theme-2) 68%,white)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .sheet{
  background:radial-gradient(100% 40% at 15% 0,rgba(var(--pixl-theme-rgb),.10),transparent 68%),linear-gradient(180deg,color-mix(in srgb,var(--pixl-theme) 6%,#15131b),#0a0a0e 34%)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .dropzone{
  border-color:rgba(var(--pixl-theme-rgb),.34)!important;
  background:rgba(var(--pixl-theme-rgb),.055)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .scan-spinner{border-top-color:var(--pixl-theme-2)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .runtime-pulse{
  background:var(--pixl-theme-2)!important;
  box-shadow:0 0 0 7px rgba(var(--pixl-theme-rgb),.12),0 0 22px rgba(var(--pixl-theme-rgb),.6)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .score-badge.good{
  color:color-mix(in srgb,var(--pixl-theme-2) 76%,white)!important;
  background:rgba(var(--pixl-theme-rgb),.10)!important;
  border-color:rgba(var(--pixl-theme-rgb),.28)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .compat-dot.good{
  background:var(--pixl-theme-2)!important;box-shadow:0 0 12px rgba(var(--pixl-theme-rgb),.62)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .search-field:focus-within{
  border-color:rgba(var(--pixl-theme-rgb),.48)!important;background:rgba(var(--pixl-theme-rgb),.07)!important;box-shadow:0 0 0 4px rgba(var(--pixl-theme-rgb),.07)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .scan-progress span{
  background:linear-gradient(90deg,var(--pixl-theme),var(--pixl-theme-2),color-mix(in srgb,var(--pixl-theme-2) 60%,white))!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .control:active{background:rgba(var(--pixl-theme-rgb),.50)!important}

/* Game cards and details no longer retain the old permanent green/cyan artwork palette. */
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .game-cover,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .details-hero{
  background:radial-gradient(circle at 72% 21%,hsla(var(--pixl-theme-hue-2),95%,68%,.25),transparent 30%),linear-gradient(145deg,hsla(var(--pixl-theme-hue),68%,27%,.94),hsla(var(--pixl-theme-hue-2),72%,11%,.96))!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .cover-glow{background:rgba(var(--pixl-theme-rgb),.20)!important}

/* PIXL OS v3 — panels, cards, icons and local UI chrome */
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-library-sheet,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-center-panel{
  border-color:rgba(var(--pixl-theme-rgb),.12)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-library-row-icon,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-game-detail-art,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-center-grid>button>span,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-settings-icon{
  background:linear-gradient(145deg,rgba(var(--pixl-theme-rgb),.28),rgba(var(--pixl-theme-rgb),.07))!important;
  color:color-mix(in srgb,var(--pixl-theme-2) 72%,white)!important;
  border-color:rgba(var(--pixl-theme-rgb),.18)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-library-row-icon,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-game-detail-art{
  box-shadow:inset 0 0 0 1px rgba(var(--pixl-theme-rgb),.16),0 0 28px rgba(var(--pixl-theme-rgb),.08)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-install-drop,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-runtime-card,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-detail-note{
  border-color:rgba(var(--pixl-theme-rgb),.18)!important;
  background:rgba(var(--pixl-theme-rgb),.045)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-install-drop-icon,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-runtime-pulse{
  background:var(--pixl-theme)!important;color:var(--pixl-theme-ink)!important;box-shadow:0 0 26px rgba(var(--pixl-theme-rgb),.36)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-install-step.is-active,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-progress>i{
  background:linear-gradient(90deg,var(--pixl-theme),var(--pixl-theme-2))!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-local,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-brand b{
  border-color:rgba(var(--pixl-theme-rgb),.20)!important;
  background:rgba(var(--pixl-theme-rgb),.055)!important;
}

/* Installer module outside px-v3 */
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-install-benefits i{
  background:var(--pixl-theme)!important;box-shadow:0 0 9px rgba(var(--pixl-theme-rgb),.5)!important;
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-install-benefits svg,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-install-note svg{
  color:color-mix(in srgb,var(--pixl-theme-2) 68%,white)!important;
}

/* Shell Studio itself also belongs to the chosen palette. */
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .ps-card .ps-preview,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .ps-card .ps-preview *{border-color:rgba(var(--pixl-theme-rgb),.55)!important}

/* Legacy = the untouched PIXL identity: violet controls + green/cyan world lighting. */
html[data-pixl-theme="legacy"]{--pixl-theme:#9B39FF;--pixl-theme-2:#C47AFF;--pixl-theme-rgb:155,57,255;--pixl-theme-ink:#fff;--px-violet:#9B39FF;--px-violet2:#C47AFF;--px-lime:#4DFF8B;--violet:#8b5cf6;--pink:#d946ef;--lime:#8CFF45;--pixl-shell-accent:#9B39FF;--pixl-shell-accent2:#4DFF8B;--pixl-logo-filter:none}
html[data-pixl-theme="legacy"] .px-v3 .px-ambient{
  background:radial-gradient(95% 60% at 10% -8%,rgba(73,255,109,.16),transparent 64%),radial-gradient(70% 45% at 98% 20%,rgba(36,195,255,.11),transparent 72%),linear-gradient(180deg,#06060a,#040407 68%,#020203)!important;
}
html[data-pixl-theme="legacy"] .px-v3 .px-orb-a{background:#4DFF8B!important}
html[data-pixl-theme="legacy"] .px-v3 .px-orb-b{background:#20C8FF!important}
html[data-pixl-theme="legacy"] .px-v3 .px-stage{
  background:radial-gradient(65% 55% at 77% 58%,rgba(31,205,255,.18),transparent 70%),linear-gradient(136deg,rgba(16,123,43,.34),rgba(6,6,10,.90) 51%,rgba(17,112,148,.22))!important;
}
html[data-pixl-theme="legacy"] .px-v3 .px-stage:after{background:linear-gradient(90deg,#4DFF8B,#20C8FF,transparent 82%)!important}
html[data-pixl-theme="legacy"] .px-local i,html[data-pixl-theme="legacy"] .px-kicker i,html[data-pixl-theme="legacy"] .px-center-foot i{background:#4DFF8B!important;box-shadow:0 0 12px rgba(77,255,139,.65)!important}
html[data-pixl-theme="legacy"] .px-primary{background:#8CFF45!important;color:#071005!important}
html[data-pixl-theme="legacy"] .player.pixl-shell-active{--shell-accent:#9B39FF;--shell-accent2:#4DFF8B}


/* 4.8 — ZERO STRAY CHROMA + POKÉMON ESSENTIALS CARD IDENTITY */
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-game-tile,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-library-cover,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .game-cover,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .details-hero,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .continue-card{--cover-a:var(--pixl-theme-hue)!important;--cover-b:var(--pixl-theme-hue-2)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-game-tile,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-library-cover{
  background:radial-gradient(circle at 72% 20%,rgba(var(--pixl-theme-rgb),.22),transparent 34%),linear-gradient(145deg,color-mix(in srgb,var(--pixl-theme) 28%,#101014),color-mix(in srgb,var(--pixl-theme-2) 8%,#050509))!important;
  border-color:rgba(var(--pixl-theme-rgb),.25)!important
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-game-tile:not(.is-selected){filter:saturate(.72) brightness(.70)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-game-tile.is-selected{filter:none!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-tile-mono,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-library-cover{color:color-mix(in srgb,var(--pixl-theme-2) 42%,white)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-library-row:active{background:rgba(var(--pixl-theme-rgb),.045)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-library-arrow{color:color-mix(in srgb,var(--pixl-theme-2) 35%,#706a79)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-shelf-head span,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-tile-index{color:color-mix(in srgb,var(--pixl-theme-2) 55%,#8b8592)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .px-v3 .px-game-tile::after{background:linear-gradient(180deg,transparent,rgba(var(--pixl-theme-rgb),.055))!important}

html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .game-cover,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .details-hero,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .continue-card{
  background:radial-gradient(circle at 72% 21%,rgba(var(--pixl-theme-rgb),.24),transparent 30%),linear-gradient(145deg,color-mix(in srgb,var(--pixl-theme) 28%,#111014),color-mix(in srgb,var(--pixl-theme-2) 8%,#050509))!important
}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .game-cover,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .details-hero{border-color:rgba(var(--pixl-theme-rgb),.24)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .hero-monogram,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .cover-monogram{color:color-mix(in srgb,var(--pixl-theme-2) 34%,white)!important}

html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .pixl-launch-progress{background:color-mix(in srgb,var(--pixl-theme) 4%,rgba(3,3,7,.96))!important;box-shadow:inset 0 0 0 1px rgba(var(--pixl-theme-rgb),.28)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .pixl-launch-progress__spinner{border-top-color:var(--pixl-theme-2)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .pixl-launch-progress__bar{background:linear-gradient(90deg,var(--pixl-theme),var(--pixl-theme-2))!important;box-shadow:0 0 20px rgba(var(--pixl-theme-rgb),.34)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .pixl-launch-progress__track{background:rgba(var(--pixl-theme-rgb),.10)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .pixl-launch-progress__cancel{border-color:rgba(var(--pixl-theme-rgb),.24)!important;background:rgba(var(--pixl-theme-rgb),.055)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .player{background:linear-gradient(180deg,color-mix(in srgb,var(--pixl-theme) 5%,#030306),#020204)!important}

html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .setting-icon,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .runtime-pulse,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .success-ring,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .empty-icon{border-color:rgba(var(--pixl-theme-rgb),.22)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .favorite-button.active,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .favorite-active{color:var(--pixl-theme-2)!important}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .details-hero,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .inspection-card,
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .runtime-card{box-shadow:0 18px 48px rgba(0,0,0,.36),0 0 30px rgba(var(--pixl-theme-rgb),.055)!important}

.pixl-pokemon-mark{display:inline-grid;place-items:center;width:72%;height:72%;color:currentColor;filter:drop-shadow(0 12px 22px rgba(0,0,0,.28));vertical-align:middle}
.pixl-pokemon-mark svg{width:100%;height:100%;overflow:visible}
.pixl-pokemon-mark path,.pixl-pokemon-mark circle{fill:currentColor}
.pixl-pokemon-mark--card{width:60%;height:60%}
.pixl-pokemon-mark--hero{width:58%;height:58%;opacity:.56}
.pixl-pokemon-mark--details{width:55%;height:55%}
.px-tile-mono.is-pokemon-essentials{display:grid!important;place-items:center!important}
.px-tile-mono.is-pokemon-essentials .pixl-pokemon-mark{width:58%;height:58%}
.px-library-cover.is-pokemon-essentials{display:grid!important;place-items:center!important}
.px-library-cover.is-pokemon-essentials .pixl-pokemon-mark{width:64%;height:64%}
html[data-pixl-theme]:not([data-pixl-theme="legacy"]) .pixl-pokemon-mark{color:color-mix(in srgb,var(--pixl-theme-2) 35%,white)!important}
html[data-pixl-theme="legacy"] .pixl-pokemon-mark{color:#fff!important}

/* PIXL 5.8.1 — canonical Pokémon fangame identity. Exact user-supplied Pikachu silhouette. */
.pixl-pokemon-mark{display:grid!important;place-items:center!important;color:#fff!important;line-height:0!important;overflow:visible!important}
.pixl-pokemon-mark img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;filter:none!important;opacity:1!important;transform:none!important}
.pixl-pokemon-mark--card{width:68%!important;height:68%!important}
.pixl-pokemon-mark--hero{width:62%!important;height:62%!important;opacity:.56!important}
.pixl-pokemon-mark--details{width:62%!important;height:62%!important}
html[data-pixl-theme] .pixl-pokemon-mark{color:#fff!important}

/* PIXL 5.8.3 — canonical Pokémon identity for every Pokémon-titled fangame. */
.px-v3 .px-tile-mono.is-pokemon-essentials{
  left:10px!important;right:10px!important;top:18px!important;bottom:27px!important;
  width:auto!important;height:auto!important;transform:none!important;
  display:grid!important;place-items:center!important;letter-spacing:0!important;text-shadow:none!important;
}
.px-v3 .px-game-tile.is-selected .px-tile-mono.is-pokemon-essentials{
  left:14px!important;right:14px!important;top:22px!important;bottom:32px!important;
}
.px-v3 .px-tile-mono.is-pokemon-essentials .pixl-pokemon-mark,
.px-v3 .px-library-cover.is-pokemon-essentials .pixl-pokemon-mark{
  width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
}
.px-v3 .px-tile-mono.is-pokemon-essentials .pixl-pokemon-mark img{
  width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;
}
.px-v3 .px-library-cover.is-pokemon-essentials .pixl-pokemon-mark{padding:7px!important;box-sizing:border-box!important;}
.px-v3 .px-library-cover.is-pokemon-essentials .pixl-pokemon-mark img{width:100%!important;height:100%!important;object-fit:contain!important;}

/* ============================================================
   PIXL SINNOH — premium DS-era sprite theme
   Built from the user-supplied Diamond / Pearl style asset pack.
   Layout and runtime contracts remain unchanged; this is a pure
   presentation theme layered on top of the current PIXL UI.
   ============================================================ */

/* Theme Studio preview card — this remains visible even before activation. */
.pt-card.is-sinnoh{
  border-color:rgba(75,190,196,.34);
  background:linear-gradient(115deg,rgba(91,177,255,.08),rgba(49,214,174,.08));
}
.pt-card.is-sinnoh .pt-copy strong{letter-spacing:.01em}
.pt-card.is-sinnoh .pt-copy small{color:#8fa9bc}
.pt-swatch-sinnoh{
  position:relative;display:block;overflow:hidden;
  background:
    linear-gradient(rgba(32,85,111,.10) 1px,transparent 1px),
    linear-gradient(90deg,rgba(32,85,111,.10) 1px,transparent 1px),
    linear-gradient(180deg,#ddecff,#c6e1ff 55%,#aeead1 55%,#8dddb9);
  background-size:8px 8px,8px 8px,100% 100%;
  border:2px solid #267c91;
  box-shadow:inset 0 0 0 2px #eef8ff,0 5px 18px rgba(43,126,164,.18);
}
.pt-swatch-sinnoh:before,.pt-swatch-sinnoh:after{
  content:"";position:absolute;width:8px;height:8px;background:#fff;border:2px solid #d9565d;border-radius:50%;top:4px;z-index:3;
  box-shadow:0 0 0 1px #1d5168;
}
.pt-swatch-sinnoh:before{left:4px}.pt-swatch-sinnoh:after{right:4px}
.pt-swatch-sinnoh img{position:absolute;display:block;image-rendering:pixelated;object-fit:contain;filter:drop-shadow(0 3px 2px rgba(37,72,85,.20))}
.pt-sinnoh-trainer{width:41px;height:41px;left:5px;bottom:3px}.pt-sinnoh-tree{width:37px;height:37px;right:2px;bottom:2px;opacity:.94}
.pt-swatch-sinnoh em{position:absolute;left:7px;right:7px;top:7px;text-align:center;font:950 6px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;color:#17475f;text-shadow:0 1px #fff;font-style:normal}


/* PIXL alpha.57 — adaptive identity + Theme Studio Sinnoh preview repair */
html[data-pixl-theme] .px-adaptive-logo,
html[data-pixl-theme] .px-brand img,
html[data-pixl-theme] .px-home-core img,
html[data-pixl-theme] .px-boot-mark img{
  filter:var(--pixl-logo-filter,none)!important;
  transition:filter .12s linear!important;
}
.pt-swatch-sinnoh .pt-sinnoh-theme-icon{
  position:absolute!important;
  width:42px!important;height:42px!important;
  left:50%!important;top:52%!important;right:auto!important;bottom:auto!important;
  transform:translate(-50%,-50%)!important;
  object-fit:contain!important;image-rendering:pixelated!important;
  filter:drop-shadow(0 2px 1px rgba(37,72,85,.18))!important;
}
.pt-swatch-sinnoh em{top:auto!important;bottom:5px!important;font-size:5.5px!important;background:rgba(238,248,255,.76);padding:2px 3px;border-radius:2px}
.pixl-theme-studio.is-open .pt-sheet,.pixl-shell-studio.is-open .ps-sheet{transition-duration:.12s!important}
.pt-card,.ps-card,.pt-tabs button,.ps-tabs button{transition-duration:.1s!important}
