/* Abyss Defenders Modular Ship Overhaul / v229A */
#abyss-shooters .abyss-home-meta-dock{grid-template-columns:repeat(3,minmax(0,1fr));max-width:940px}
#abyss-shooters .abyss-audio-settings{display:grid;gap:12px;padding:16px;border:1px solid rgba(126,229,255,.18);border-radius:18px;background:linear-gradient(145deg,rgba(12,36,58,.82),rgba(7,22,42,.9));box-shadow:inset 0 1px rgba(255,255,255,.04)}
#abyss-shooters .abyss-audio-settings-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
#abyss-shooters .abyss-audio-settings-head div{display:grid;gap:3px}
#abyss-shooters .abyss-audio-settings-head b{font-size:15px;color:#effcff}
#abyss-shooters .abyss-audio-settings-head small{color:#91c9d8}
#abyss-shooters .abyss-audio-mute{border:1px solid rgba(123,232,255,.28);border-radius:999px;padding:9px 15px;background:rgba(17,57,80,.8);color:#dffaff;font-weight:900;cursor:pointer}
#abyss-shooters .abyss-audio-mute.muted{background:rgba(93,37,55,.84);border-color:rgba(255,126,154,.38);color:#ffd9e2}
#abyss-shooters .abyss-audio-slider{display:grid;grid-template-columns:120px minmax(140px,1fr) 52px;align-items:center;gap:12px}
#abyss-shooters .abyss-audio-slider label{font-weight:850;color:#c8f5ff}
#abyss-shooters .abyss-audio-slider input{width:100%;accent-color:#79eaff}
#abyss-shooters .abyss-audio-slider output{text-align:right;font:800 12px ui-monospace,Consolas,monospace;color:#9feeff}
#abyss-shooters .abyss-wave-event-chip{position:absolute;left:50%;top:76px;transform:translate(-50%,-7px);z-index:18;display:flex;align-items:center;justify-content:center;gap:8px;max-width:min(70%,560px);padding:5px 24px;border:0;border-radius:0;background:linear-gradient(90deg,rgba(2,17,31,0),rgba(2,17,31,.13) 22%,rgba(2,17,31,.13) 78%,rgba(2,17,31,0));box-shadow:none;backdrop-filter:none;color:rgba(224,250,255,.92);pointer-events:none;opacity:0;transition:opacity .22s ease,transform .22s ease;text-shadow:0 2px 8px rgba(0,0,0,.78)}
#abyss-shooters .abyss-wave-event-chip::after{content:"";position:absolute;left:18%;right:18%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(119,231,255,.34),transparent)}
#abyss-shooters .abyss-wave-event-chip.is-visible{opacity:.9;transform:translate(-50%,0)}
#abyss-shooters .abyss-wave-event-chip.is-leaving{opacity:0;transform:translate(-50%,-5px)}
#abyss-shooters .abyss-wave-event-chip[hidden]{display:none}
#abyss-shooters .abyss-wave-event-chip i{font-style:normal;font-size:15px;filter:drop-shadow(0 2px 5px rgba(0,0,0,.7))}
#abyss-shooters .abyss-wave-event-chip span{font-weight:950;letter-spacing:.08em;text-transform:uppercase;font-size:10px}
#abyss-shooters .abyss-wave-event-chip small{color:rgba(176,224,234,.82);font-weight:760;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#abyss-shooters .abyss-wave-event-chip[data-event="treasure-current"]{color:rgba(255,243,189,.95)}
#abyss-shooters .abyss-wave-event-chip[data-event="black-waters"]{color:rgba(229,216,255,.95)}
#abyss-shooters .abyss-wave-event-chip[data-event="elite-migration"]{color:rgba(255,214,227,.95)}
#abyss-shooters .abyss-mission-summary{display:grid;grid-template-columns:1.1fr .9fr;gap:14px;margin-bottom:16px}
#abyss-shooters .abyss-mission-summary>div{padding:16px;border-radius:16px;border:1px solid rgba(126,229,255,.16);background:rgba(7,29,50,.72)}
#abyss-shooters .abyss-mission-summary span{display:block;color:#8bc8d8;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
#abyss-shooters .abyss-mission-summary b{display:block;margin-top:5px;color:#f1fcff;font-size:20px}
#abyss-shooters .abyss-mission-summary small{display:block;margin-top:4px;color:#9dcad5}
#abyss-shooters .abyss-mission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#abyss-shooters .abyss-mission-card{display:grid;gap:12px;padding:17px;border:1px solid rgba(126,229,255,.17);border-radius:18px;background:linear-gradient(145deg,rgba(12,38,62,.82),rgba(6,24,43,.92));min-height:182px}
#abyss-shooters .abyss-mission-card.weekly{border-color:rgba(255,213,114,.28);background:linear-gradient(145deg,rgba(61,45,20,.56),rgba(14,29,46,.94))}
#abyss-shooters .abyss-mission-card.complete{box-shadow:0 0 0 1px rgba(106,255,208,.22),0 10px 32px rgba(0,0,0,.22)}
#abyss-shooters .abyss-mission-card.claimed{opacity:.72}
#abyss-shooters .abyss-mission-card-head{display:flex;gap:12px;align-items:flex-start}
#abyss-shooters .abyss-mission-card-head>i{font-style:normal;font-size:26px}
#abyss-shooters .abyss-mission-card-head b{display:block;color:#effcff}
#abyss-shooters .abyss-mission-card-head small{display:block;margin-top:4px;color:#9bcbd6;line-height:1.35}
#abyss-shooters .abyss-mission-progress{height:8px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}
#abyss-shooters .abyss-mission-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#55d8ff,#77ffd0)}
#abyss-shooters .abyss-mission-card.weekly .abyss-mission-progress i{background:linear-gradient(90deg,#ffbd60,#fff09c)}
#abyss-shooters .abyss-mission-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto}
#abyss-shooters .abyss-mission-foot span{color:#b8eaf2;font-weight:850;font-size:12px}
#abyss-shooters .abyss-mission-foot button{border:0;border-radius:999px;padding:8px 12px;background:#6fe6dd;color:#07252f;font-weight:950;cursor:pointer}
#abyss-shooters .abyss-mission-foot button:disabled{cursor:default;background:rgba(255,255,255,.09);color:#7895a0}
#abyss-shooters .abyss-color-option.locked{opacity:.52;filter:saturate(.55)}
#abyss-shooters .abyss-color-option.locked::after{content:attr(data-lock-label);margin-left:auto;padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.08);color:#b7ced5;font-size:9px;font-weight:900;text-transform:uppercase}
#abyss-shooters .abyss-run-row .v228-run-detail{color:#96cbd7!important}
#abyss-shooters .abyss-overlay-results{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#abyss-shooters .abyss-v228-level-up{animation:abyssV228LevelPulse .8s ease}
@keyframes abyssV228LevelPulse{0%{filter:brightness(1)}35%{filter:brightness(1.55);transform:scale(1.025)}100%{filter:brightness(1);transform:none}}
@media(max-width:780px){
  #abyss-shooters .abyss-home-meta-dock{grid-template-columns:1fr}
  #abyss-shooters .abyss-audio-slider{grid-template-columns:92px minmax(90px,1fr) 44px;gap:8px}
  #abyss-shooters .abyss-mission-summary,#abyss-shooters .abyss-mission-grid{grid-template-columns:1fr}
  #abyss-shooters .abyss-wave-event-chip{top:68px;max-width:92%;padding:4px 14px}
  #abyss-shooters .abyss-wave-event-chip small{display:none}
  #abyss-shooters .abyss-overlay-results{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* ===== V229_MODULAR_DEFENDER_SHIP ===== */
#abyss-shooters .abyss-starfish-rig.abyss-defender-ship-rig{display:block!important;width:340px!important;height:340px!important;right:34px!important;bottom:126px!important;transform:none!important;filter:drop-shadow(0 24px 30px rgba(0,0,0,.42)) drop-shadow(0 0 24px rgba(82,224,255,.18))!important;opacity:.96}
#abyss-shooters .abyss-defender-ship-rig canvas{display:block;width:100%;height:100%;object-fit:contain;animation:abyssV229HomeShipFloat 4.8s ease-in-out infinite;transform-origin:50% 58%}
@keyframes abyssV229HomeShipFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(1deg)}}
#abyss-shooters .abyss-mount-ship-preview{position:relative;z-index:1;display:block;width:min(250px,88%);height:auto;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 18px 18px rgba(0,0,0,.34)) drop-shadow(0 0 20px color-mix(in srgb,var(--mount-glow) 28%,transparent));animation:abyssV229HangarFloat 4.1s ease-in-out infinite}
@keyframes abyssV229HangarFloat{0%,100%{transform:translateY(2px) rotate(-1.5deg)}50%{transform:translateY(-7px) rotate(1.5deg)}}
#abyss-shooters .v229-visual-slot{display:inline-flex!important;width:max-content;margin:7px 0 1px;padding:4px 8px;border-radius:999px;background:rgba(92,222,255,.09);border:1px solid rgba(108,232,255,.14);color:#8eeafa!important;font-size:9px!important;font-weight:950!important;letter-spacing:.075em;text-transform:uppercase}
#abyss-shooters .v229-ship-system-note{border-color:rgba(105,232,255,.24)!important;background:linear-gradient(135deg,rgba(15,68,91,.55),rgba(7,28,48,.78))!important}
#abyss-shooters .abyss-home-panel[data-abyss-panel="ships"] .abyss-mount-stage{min-height:300px}
#abyss-shooters .abyss-home-panel[data-abyss-panel="ships"] .abyss-mount-stage:after{content:"MODULAR DEFENDER FRAME";position:absolute;left:50%;bottom:15px;transform:translateX(-50%);color:rgba(171,232,244,.58);font-size:9px;font-weight:950;letter-spacing:.13em;white-space:nowrap}
@media(max-width:1060px){#abyss-shooters .abyss-starfish-rig.abyss-defender-ship-rig{right:8px!important;bottom:160px!important;transform:scale(.88)!important}}
@media(max-width:760px){#abyss-shooters .abyss-starfish-rig.abyss-defender-ship-rig{right:50%!important;top:285px!important;bottom:auto!important;width:125px!important;height:125px!important;transform:translateX(50%)!important}#abyss-shooters .abyss-mount-ship-preview{width:min(205px,88%)}#abyss-shooters .abyss-home-panel[data-abyss-panel="ships"] .abyss-mount-stage{min-height:220px}}
@media(max-width:430px){#abyss-shooters .abyss-starfish-rig.abyss-defender-ship-rig{top:285px!important;bottom:auto!important;transform:translateX(50%)!important}}


/* ===== V229A_DEFENDERS_ASSET_PRELOADER ===== */
#abyss-shooters{position:relative}
#abyss-shooters .abyss-defender-preloader-v229a{position:absolute;inset:0;z-index:25000;display:grid;place-items:center;min-height:100%;overflow:hidden;background:radial-gradient(circle at 50% 42%,rgba(21,91,117,.35),transparent 34%),linear-gradient(180deg,rgba(1,15,28,.985),rgba(2,24,40,.99) 56%,rgba(1,12,24,.995));opacity:1;visibility:visible;transition:opacity .34s ease,visibility .34s ease}
#abyss-shooters .abyss-defender-preloader-v229a[hidden]{display:none!important}
#abyss-shooters .abyss-defender-preloader-v229a.is-leaving{opacity:0;visibility:hidden;pointer-events:none}
#abyss-shooters .abyss-preloader-depth{position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 10%,rgba(83,221,255,.035) 48%,transparent 70%)}
#abyss-shooters .abyss-preloader-depth:before,#abyss-shooters .abyss-preloader-depth:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(100,226,255,.10);animation:abyssV229APreloadPing 3.2s ease-out infinite}
#abyss-shooters .abyss-preloader-depth:before{width:420px;height:420px;left:calc(50% - 210px);top:calc(44% - 210px)}
#abyss-shooters .abyss-preloader-depth:after{width:620px;height:620px;left:calc(50% - 310px);top:calc(44% - 310px);animation-delay:1.1s}
#abyss-shooters .abyss-preloader-depth i{position:absolute;width:5px;height:5px;border-radius:50%;background:rgba(143,241,255,.42);box-shadow:0 0 12px rgba(84,229,255,.55);animation:abyssV229ABubble 4.8s linear infinite}
#abyss-shooters .abyss-preloader-depth i:nth-child(1){left:19%;bottom:-10px;animation-delay:-.8s}#abyss-shooters .abyss-preloader-depth i:nth-child(2){left:36%;bottom:-18px;animation-delay:-2.5s;animation-duration:5.6s}#abyss-shooters .abyss-preloader-depth i:nth-child(3){left:68%;bottom:-14px;animation-delay:-1.4s;animation-duration:4.2s}#abyss-shooters .abyss-preloader-depth i:nth-child(4){left:83%;bottom:-22px;animation-delay:-3.3s;animation-duration:6.1s}
#abyss-shooters .abyss-preloader-card{position:relative;width:min(520px,calc(100% - 34px));display:grid;justify-items:center;text-align:center;padding:36px 38px 32px;border:1px solid rgba(113,231,255,.20);border-radius:28px;background:linear-gradient(145deg,rgba(7,39,60,.88),rgba(3,21,38,.94));box-shadow:0 28px 80px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.055);backdrop-filter:blur(12px)}
#abyss-shooters .abyss-preloader-emblem{position:relative;display:grid;place-items:center;width:82px;height:82px;margin-bottom:18px;border-radius:28px;background:linear-gradient(145deg,rgba(34,137,167,.72),rgba(10,53,82,.9));border:1px solid rgba(139,239,255,.26);box-shadow:0 0 30px rgba(58,221,255,.16)}
#abyss-shooters .abyss-preloader-emblem span{color:#bff8ff;font-size:34px;filter:drop-shadow(0 0 10px rgba(93,235,255,.8));animation:abyssV229AEmblem 1.8s ease-in-out infinite}
#abyss-shooters .abyss-preloader-emblem i{position:absolute;inset:-7px;border-radius:34px;border:1px solid rgba(117,231,255,.16);animation:abyssV229ARotate 4s linear infinite}
#abyss-shooters .abyss-preloader-kicker{color:#75dced;font-size:10px;font-weight:950;letter-spacing:.22em}
#abyss-shooters .abyss-preloader-card h2{margin:7px 0 7px;color:#effdff;font-size:clamp(27px,4vw,39px);line-height:1;font-weight:1000;letter-spacing:-.035em;text-shadow:0 4px 18px rgba(0,0,0,.35)}
#abyss-shooters .abyss-preloader-card p{min-height:22px;margin:0 0 21px;color:#a7dbe5;font-size:14px;font-weight:760}
#abyss-shooters .abyss-preloader-track{width:100%;height:11px;padding:2px;border-radius:999px;background:rgba(255,255,255,.07);box-shadow:inset 0 1px 4px rgba(0,0,0,.35);overflow:hidden}
#abyss-shooters .abyss-preloader-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3bb8d9,#76f2ff,#69e9c0);box-shadow:0 0 15px rgba(86,232,255,.58);transition:width .18s ease}
#abyss-shooters .abyss-preloader-meta{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:10px;color:#93cbd7}
#abyss-shooters .abyss-preloader-meta b{color:#e6fbff;font:950 20px/1 ui-monospace,Consolas,monospace}#abyss-shooters .abyss-preloader-meta span{font-size:11px;font-weight:850}
#abyss-shooters .abyss-preloader-card>small{margin-top:15px;color:rgba(156,205,216,.74);font-size:10px;font-weight:820;letter-spacing:.055em}
#abyss-shooters .abyss-preloader-card button{margin-top:17px;border:1px solid rgba(255,150,174,.34);border-radius:999px;padding:10px 17px;background:rgba(104,38,59,.72);color:#ffe2e9;font-weight:950;cursor:pointer}
#abyss-shooters .abyss-defender-preloader-v229a.has-error .abyss-preloader-track i{background:linear-gradient(90deg,#d95d78,#ff9b89)}
#abyss-shooters .abyss-defender-preloader-v229a.is-ready .abyss-preloader-emblem{border-color:rgba(115,255,205,.35);box-shadow:0 0 34px rgba(86,245,196,.24)}
#abyss-shooters.abyss-assets-loading .abyss-home-screen,#abyss-shooters.abyss-assets-loading .abyss-game-screen,#abyss-shooters.abyss-assets-loading .abyss-progress-screen{pointer-events:none}
@keyframes abyssV229APreloadPing{0%{transform:scale(.62);opacity:0}20%{opacity:.55}100%{transform:scale(1.25);opacity:0}}
@keyframes abyssV229ABubble{0%{transform:translateY(0) scale(.7);opacity:0}14%{opacity:.6}85%{opacity:.35}100%{transform:translateY(-100vh) scale(1.3);opacity:0}}
@keyframes abyssV229AEmblem{0%,100%{transform:scale(.94);opacity:.82}50%{transform:scale(1.08);opacity:1}}
@keyframes abyssV229ARotate{to{transform:rotate(360deg)}}
@media(max-width:600px){#abyss-shooters .abyss-preloader-card{padding:29px 22px 26px;border-radius:23px}#abyss-shooters .abyss-preloader-emblem{width:68px;height:68px;border-radius:23px}#abyss-shooters .abyss-preloader-card p{font-size:13px}#abyss-shooters .abyss-preloader-meta b{font-size:18px}}
/* v122 — dedicated per-account background controls */
.private-background-button{border-color:rgba(103,232,255,.32)!important;background:linear-gradient(135deg,rgba(103,232,255,.12),rgba(184,140,255,.12))!important}
.private-background-mode .private-form-grid>label{display:none}
.private-background-mode .private-form-grid>label:has([name="backgroundFile"]),
.private-background-mode .private-form-grid>label:has([name="backgroundPosition"]),
.private-background-mode .private-form-grid>label:has([name="backgroundDim"]),
.private-background-mode .private-form-grid>label:has([name="removeBackground"]){display:grid}
.private-background-mode .private-form-grid>label:has([name="backgroundFile"]){grid-column:1/-1}
.private-background-preview-wrap{grid-column:1/-1;display:grid;gap:9px;padding:12px;border:1px solid rgba(103,232,255,.22);border-radius:18px;background:rgba(2,9,19,.62)}
.private-background-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.private-background-preview-head strong{font-size:12px;color:#e6fbff}.private-background-preview-head small{font-size:10px;color:var(--muted)}
.private-background-preview{position:relative;min-height:220px;border-radius:16px;border:1px solid rgba(255,255,255,.15);background-color:#050914;background-position:center center;background-size:cover;background-repeat:no-repeat;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}
.private-background-preview:after{content:"";position:absolute;inset:0;background:rgba(4,9,18,var(--preview-dim,.42));pointer-events:none}
.private-background-preset-row{grid-column:1/-1;display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:11px;border:1px solid rgba(103,232,255,.18);border-radius:15px;background:rgba(103,232,255,.045)}
.private-background-preset-row span{font-size:11px;color:var(--muted);margin-right:auto}.private-background-preset-row .btn{padding:9px 11px;font-size:11px}
.private-background-save-note{grid-column:1/-1;color:#9feec8;font-size:11px;line-height:1.45;padding:8px 10px;border-radius:12px;background:rgba(59,201,147,.07);border:1px solid rgba(89,222,171,.16)}
@media(max-width:760px){.private-background-preview{min-height:170px}}
/* Global Gaming Hub account controls */
.gh-account-button{display:flex!important;align-items:center;gap:8px;max-width:170px;padding:7px 11px!important;border-color:rgba(121,237,255,.25)!important;background:linear-gradient(145deg,rgba(12,54,78,.88),rgba(8,27,48,.9))!important}
.gh-account-avatar{flex:0 0 auto;width:29px;height:29px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(145deg,var(--gh-avatar,#62e6ff),#516de3);color:#03111c;font-size:12px;font-weight:1000;box-shadow:0 0 16px color-mix(in srgb,var(--gh-avatar,#62e6ff) 38%,transparent)}
.gh-account-button-copy{min-width:0;display:grid;text-align:left;line-height:1.05}.gh-account-button-copy small{color:#91b9c7;font-size:7px;text-transform:uppercase;letter-spacing:.1em}.gh-account-button-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f2ffff;font-size:10px}
.gh-sync-dot{width:7px;height:7px;border-radius:50%;background:#65f3bd;box-shadow:0 0 8px #65f3bd}.gh-account-button[data-sync="pending"] .gh-sync-dot,.gh-account-button[data-sync="syncing"] .gh-sync-dot{background:#ffd56c;box-shadow:0 0 8px #ffd56c}.gh-account-button[data-sync="error"] .gh-sync-dot,.gh-account-button[data-sync="offline"] .gh-sync-dot{background:#ff7089;box-shadow:0 0 8px #ff7089}
.gh-account-shade{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:20px;background:rgba(1,7,15,.84);backdrop-filter:blur(14px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility 0s linear .18s}.gh-account-shade.open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .18s ease}
.gh-account-modal{position:relative;width:min(900px,100%);max-height:min(850px,94vh);display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;border:1px solid rgba(121,238,255,.25);border-radius:28px;background:radial-gradient(circle at 85% 0,rgba(82,101,214,.16),transparent 35%),linear-gradient(160deg,#0a263a,#04111f 70%);box-shadow:0 35px 100px rgba(0,0,0,.62),inset 0 1px rgba(255,255,255,.08);color:#edfdff}.gh-account-close{position:absolute;right:16px;top:16px;z-index:4;width:40px;height:40px;border:1px solid rgba(121,237,255,.23);border-radius:13px;background:rgba(3,18,31,.76);color:#eaffff;font-size:21px;cursor:pointer}
.gh-account-hero{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:16px;align-items:center;padding:23px 70px 19px 23px;border-bottom:1px solid rgba(255,255,255,.07)}.gh-account-hero-avatar{width:68px;height:68px;display:grid;place-items:center;border-radius:22px;background:linear-gradient(145deg,var(--gh-avatar,#62e6ff),#536cde);color:#03111d;font-size:29px;font-weight:1000;box-shadow:0 0 28px color-mix(in srgb,var(--gh-avatar,#62e6ff) 34%,transparent)}.gh-account-hero-copy small{display:block;color:#74e6f6;font-size:9px;font-weight:950;letter-spacing:.15em;text-transform:uppercase}.gh-account-hero-copy h2{margin:4px 0 3px;font-size:26px}.gh-account-hero-copy p{margin:0;color:#8eb0bd;font-size:11px}.gh-sync-status{min-width:180px;padding:10px 13px;border:1px solid rgba(107,231,250,.15);border-radius:15px;background:rgba(2,16,29,.5)}.gh-sync-status span{display:flex;align-items:center;gap:7px;color:#bcf6ff;font-size:10px;font-weight:900}.gh-sync-status i{width:8px;height:8px;border-radius:50%;background:#67f2bc;box-shadow:0 0 10px #67f2bc}.gh-sync-status small{display:block;margin-top:5px;color:#7d9da9;font-size:8px}
.gh-account-tabs{display:flex;gap:7px;padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.065);overflow:auto}.gh-account-tab{flex:0 0 auto;padding:9px 13px;border:1px solid transparent;border-radius:11px;background:transparent;color:#83a5b2;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.gh-account-tab.active{border-color:rgba(111,231,250,.25);background:rgba(65,194,221,.1);color:#ecfdff}
.gh-account-body{overflow:auto;padding:18px}.gh-account-page[hidden]{display:none}.gh-account-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.gh-account-stat{padding:15px;border:1px solid rgba(255,255,255,.075);border-radius:17px;background:rgba(255,255,255,.025)}.gh-account-stat span{color:#7fa4b2;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.gh-account-stat b{display:block;margin-top:7px;color:#f1ffff;font-size:18px}.gh-account-stat small{display:block;margin-top:4px;color:#7997a3;font-size:8px}.gh-account-note{margin-top:12px;padding:14px;border:1px solid rgba(105,230,251,.12);border-radius:17px;background:rgba(34,114,143,.07);color:#a8c7d1;font-size:10px;line-height:1.55}.gh-account-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:13px}
.gh-panel{padding:17px;border:1px solid rgba(255,255,255,.075);border-radius:19px;background:rgba(1,13,25,.42)}.gh-panel+.gh-panel{margin-top:12px}.gh-panel-head{margin-bottom:13px}.gh-panel-head span{color:#6de3f4;font-size:8px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.gh-panel-head h3{margin:4px 0 0;font-size:18px}.gh-field-grid{display:grid;grid-template-columns:1fr 150px;gap:10px}.gh-field{display:grid;gap:6px}.gh-field span{color:#98b8c3;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.gh-field input,.gh-field textarea{width:100%;padding:12px;border:1px solid rgba(112,226,245,.16);border-radius:12px;background:rgba(0,7,15,.7);color:#efffff;font:inherit;outline:none}.gh-field input:focus,.gh-field textarea:focus{border-color:rgba(105,230,250,.58);box-shadow:0 0 0 3px rgba(83,218,240,.07)}.gh-field input[type="color"]{min-height:43px;padding:5px}.gh-field textarea{min-height:180px;resize:vertical;font:11px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace}.gh-btn{padding:10px 14px;border:1px solid rgba(111,234,251,.25);border-radius:12px;background:linear-gradient(145deg,rgba(19,103,132,.8),rgba(42,63,135,.78));color:#efffff;font-weight:900;font-size:10px;cursor:pointer;text-decoration:none}.gh-btn.secondary{background:rgba(255,255,255,.035);color:#b7d1d9}.gh-btn.danger{border-color:rgba(255,107,132,.28);background:rgba(133,28,50,.3);color:#ffc4cf}.gh-btn:disabled{opacity:.55;cursor:wait}.gh-message{min-height:17px;margin-top:9px;color:#83f3c1;font-size:9px;font-weight:850}.gh-message.error{color:#ff8da0}
.gh-session-list{display:grid;gap:8px}.gh-session{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.065);border-radius:14px;background:rgba(255,255,255,.022)}.gh-session b{display:block;font-size:11px}.gh-session span,.gh-session small{display:block;margin-top:3px;color:#7f9fab;font-size:8px;overflow-wrap:anywhere}.gh-session-current{color:#72efc2!important;font-weight:900}.gh-remote-banner{position:fixed;left:50%;bottom:18px;z-index:100001;transform:translate(-50%,25px);display:flex;align-items:center;gap:10px;max-width:min(560px,calc(100vw - 24px));padding:11px 13px;border:1px solid rgba(125,238,255,.26);border-radius:15px;background:rgba(4,25,42,.96);box-shadow:0 18px 44px rgba(0,0,0,.45);opacity:0;visibility:hidden;transition:.18s}.gh-remote-banner.show{transform:translate(-50%,0);opacity:1;visibility:visible}.gh-remote-banner span{color:#bce9f2;font-size:10px}.gh-remote-banner button{padding:8px 10px;border:0;border-radius:9px;background:#62dff0;color:#03111d;font-weight:950;cursor:pointer}
@media(max-width:720px){.gh-account-hero{grid-template-columns:58px minmax(0,1fr);padding:18px 56px 15px 16px}.gh-account-hero-avatar{width:56px;height:56px;border-radius:18px;font-size:24px}.gh-sync-status{grid-column:1/-1;min-width:0}.gh-account-grid{grid-template-columns:1fr}.gh-field-grid{grid-template-columns:1fr}.gh-account-body{padding:13px}.gh-account-modal{max-height:96vh;border-radius:22px}.gh-account-button-copy{display:none}.gh-account-button{padding:6px!important}.gh-account-button .gh-sync-dot{display:none}}


/* v090 public hosting / MFA account controls */
.gh-mfa-secret-box{
  display:grid;
  gap:9px;
  margin:12px 0;
  padding:14px;
  border:1px solid rgba(103,232,255,.2);
  border-radius:16px;
  background:rgba(103,232,255,.055);
}
.gh-mfa-secret-box>span{
  color:#90cedb;
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.gh-mfa-secret-box code{
  display:block;
  padding:12px;
  border-radius:12px;
  background:#020b14;
  color:#c9fbff;
  font:800 13px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;
  letter-spacing:.08em;
  overflow-wrap:anywhere;
  user-select:all;
}
.gh-mfa-secret-box small{color:#8fb3be;line-height:1.5}
.gh-mfa-recovery{
  margin-top:14px;
  padding:14px;
  border:1px solid rgba(255,215,92,.24);
  border-radius:16px;
  background:rgba(255,215,92,.06);
}
.gh-mfa-recovery>b{display:block;margin-bottom:9px;color:#fff1b1}
.gh-mfa-recovery textarea{
  width:100%;
  min-height:180px;
  margin-bottom:10px;
  padding:12px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:12px;
  background:#020b14;
  color:#f4fdff;
  font:800 13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;
  resize:vertical;
}


/* v092 stable server-generated MFA QR */
.gh-mfa-qr-stage{
  display:grid;
  grid-template-columns:minmax(190px,260px) minmax(94px,118px);
  align-items:center;
  justify-content:center;
  gap:18px;
  margin:5px 0 14px;
  padding:17px;
  border:1px solid rgba(103,232,255,.22);
  border-radius:18px;
  background:
    radial-gradient(circle at 34% 35%,rgba(103,232,255,.12),transparent 43%),
    rgba(2,11,20,.8);
}
#ghMfaQrImage{
  display:block;
  width:100%;
  max-width:260px;
  aspect-ratio:1;
  margin:auto;
  padding:12px;
  border-radius:17px;
  background:#fff;
  object-fit:contain;
  box-shadow:0 10px 34px rgba(0,0,0,.4),0 0 26px rgba(103,232,255,.18);
}
#ghMfaQrImage[hidden]{display:none!important}
.gh-mfa-code-clock{
  display:flex;
  min-height:120px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  padding:12px;
  border:1px solid rgba(103,232,255,.2);
  border-radius:18px;
  background:rgba(103,232,255,.06);
  color:#dffcff;
  text-align:center;
}
.gh-mfa-code-clock small{
  color:#8fc5d2;
  font-size:9px;
  font-weight:900;
  line-height:1.35;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.gh-mfa-code-clock b{
  font-size:38px;
  line-height:1;
  color:#9cf4ff;
  text-shadow:0 0 14px rgba(103,232,255,.5);
}
.gh-mfa-code-clock span{color:#8fb3be;font-size:10px}
@media(max-width:640px){
  .gh-mfa-qr-stage{grid-template-columns:1fr;padding:13px}
  .gh-mfa-code-clock{min-height:72px;flex-direction:row;gap:7px}
  .gh-mfa-code-clock b{font-size:29px}
}


/* v098 account launcher reliability */
#ghAccountButton{
  position:relative!important;
  z-index:12000!important;
  pointer-events:auto!important;
  touch-action:manipulation;
  -webkit-tap-highlight-color:rgba(121,237,255,.16);
}
#ghAccountButton>*{pointer-events:none}
#ghAccountButton:focus-visible{
  outline:2px solid #79edff;
  outline-offset:3px;
}


/* v099 authenticated account panel */
#ghAccountButton[aria-expanded="true"]{
  box-shadow:0 0 0 2px rgba(121,237,255,.24),0 12px 30px rgba(0,0,0,.32);
}
.gh-account-shade.open{
  pointer-events:auto!important;
}


/* v101 account button replaces the old top-left Gaming Hub label */
.brand .gh-account-button-brand{
  flex:0 1 auto;
  width:auto;
  max-width:210px;
  min-width:0;
  margin:0;
}
.brand .gh-account-button-brand .gh-account-button-copy{
  min-width:0;
}
.brand .gh-account-button-brand #ghAccountButtonName{
  max-width:128px;
}
@media(max-width:720px){
  .brand{
    gap:7px;
  }
  .brand .gh-account-button-brand{
    max-width:42px;
  }
}


/* v103 Account button uses the actual .bar-top markup */
.bar-top .brand .gh-account-button-brand{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:auto;
  max-width:220px;
  min-height:0;
  padding:10px 12px!important;
  border-radius:14px!important;
  font-family:inherit;
  font-size:inherit;
  font-weight:800;
  letter-spacing:normal;
  line-height:normal;
  cursor:pointer;
}

.bar-top .brand .gh-account-button-brand .gh-account-button-copy{
  display:block;
  min-width:0;
  text-align:left;
  line-height:normal;
}

.bar-top .brand .gh-account-button-brand .gh-account-button-copy small{
  display:none;
}

.bar-top .brand .gh-account-button-brand #ghAccountButtonName{
  display:block;
  max-width:138px;
  overflow:hidden;
  color:inherit;
  font-family:inherit;
  font-size:inherit;
  font-weight:800;
  letter-spacing:normal;
  line-height:normal;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.bar-top .brand .gh-account-button-brand .gh-account-avatar{
  width:25px;
  height:25px;
  flex:0 0 25px;
  border-radius:9px;
  font-size:11px;
}

.bar-top .brand .gh-account-button-brand .gh-sync-dot{
  width:7px;
  height:7px;
  flex:0 0 7px;
}

@media(max-width:720px){
  .bar-top .brand .gh-account-button-brand{
    width:42px;
    min-width:42px;
    max-width:42px;
    padding:8px!important;
  }
  .bar-top .brand .gh-account-button-brand .gh-account-button-copy,
  .bar-top .brand .gh-account-button-brand .gh-sync-dot{
    display:none;
  }
}


/* v104 precisely center account initials */
.bar-top .brand .gh-account-button-brand .gh-account-avatar{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box;
  padding:0!important;
  margin:0;
  overflow:hidden;
  text-align:center!important;
  text-indent:0;
  line-height:1!important;
  letter-spacing:-.04em;
  font-family:inherit;
  font-variant-ligatures:none;
}

/* ===== v191 offline access ===== */
.gh-offline-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:13px}.gh-offline-status-grid article{padding:13px;border:1px solid rgba(113,235,255,.12);border-radius:14px;background:rgba(255,255,255,.025)}.gh-offline-status-grid span{display:block;color:#779ba8;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.gh-offline-status-grid b{display:block;margin-top:6px;color:#eaffff;font-size:11px}.gh-offline-mode .gh-sync-status i,.gh-offline-mode .gh-sync-dot{background:#ffd66c!important;box-shadow:0 0 9px #ffd66c!important}.gh-offline-mode .gh-account-button-copy small:after{content:" · OFFLINE";color:#ffd66c}.gh-offline-mode #ghLogoutAll{display:none}@media(max-width:720px){.gh-offline-status-grid{grid-template-columns:1fr}}

/* ===== v192 custom account profile pictures ===== */
.gh-account-avatar,.gh-account-hero-avatar,.gh-avatar-preview{position:relative;overflow:hidden;isolation:isolate}
.gh-account-avatar img,.gh-account-hero-avatar img,.gh-avatar-preview img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center;border-radius:inherit;z-index:2}
.gh-account-avatar.has-image,.gh-account-hero-avatar.has-image{background:linear-gradient(145deg,var(--gh-avatar,#62e6ff),#516de3);padding:2px}
.gh-account-avatar.has-image img,.gh-account-hero-avatar.has-image img{inset:2px;width:calc(100% - 4px);height:calc(100% - 4px)}
.gh-account-avatar.has-image{border-radius:10px}.gh-account-hero-avatar.has-image{border-radius:22px}
.gh-avatar-editor{display:grid;grid-template-columns:110px minmax(0,1fr);gap:17px;align-items:center;margin-bottom:15px;padding:15px;border:1px solid rgba(111,232,250,.13);border-radius:18px;background:linear-gradient(145deg,rgba(42,157,183,.07),rgba(76,71,169,.05))}
.gh-avatar-preview{width:106px;height:106px;display:grid;place-items:center;border:3px solid color-mix(in srgb,var(--gh-avatar,#62e6ff) 74%,#fff 8%);border-radius:30px;background:linear-gradient(145deg,var(--gh-avatar,#62e6ff),#516de3);box-shadow:0 0 30px color-mix(in srgb,var(--gh-avatar,#62e6ff) 25%,transparent);color:#03111c;font-size:36px;font-weight:1000}
.gh-avatar-preview img{border-radius:25px}.gh-avatar-editor-copy>b{display:block;color:#efffff;font-size:14px}.gh-avatar-editor-copy p{max-width:610px;margin:6px 0 10px;color:#8eafb9;font-size:9px;line-height:1.55}.gh-avatar-editor-actions{display:flex;gap:8px;flex-wrap:wrap}.gh-avatar-upload{display:inline-flex;align-items:center}.gh-avatar-editor-copy>small{display:block;margin-top:8px;color:#7797a3;font-size:8px}.gh-avatar-editor-copy>small.ready{color:#79efbd}.gh-avatar-editor-copy>small.error{color:#ff8da0}
@media(max-width:720px){.gh-account-hero-avatar.has-image{border-radius:18px}.gh-avatar-editor{grid-template-columns:78px minmax(0,1fr);gap:12px;padding:12px}.gh-avatar-preview{width:76px;height:76px;border-radius:22px;font-size:27px}.gh-avatar-preview img{border-radius:17px}.gh-avatar-editor-copy p{font-size:8px}.gh-avatar-editor-actions .gh-btn{padding:9px 11px}}


/* ===== v194 per-account website background settings ===== */
.gh-background-panel{overflow:hidden}.gh-background-intro{margin:-3px 0 13px;color:var(--muted);font-size:11px;line-height:1.55}.gh-background-preview-stage{position:relative;isolation:isolate;min-height:235px;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:19px;background-color:#071221;background-image:radial-gradient(circle at 20% 15%,rgba(72,226,255,.22),transparent 32%),radial-gradient(circle at 85% 80%,rgba(158,101,255,.20),transparent 38%),linear-gradient(145deg,#071827,#030712);background-position:center center;background-size:cover;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 16px 38px rgba(0,0,0,.20)}.gh-background-preview-stage.uses-default{background-image:radial-gradient(circle at 20% 15%,rgba(72,226,255,.22),transparent 32%),radial-gradient(circle at 85% 80%,rgba(158,101,255,.20),transparent 38%),linear-gradient(145deg,#071827,#030712)!important}.gh-background-preview-overlay{position:absolute;inset:0;z-index:1;background:#020711;opacity:.42;pointer-events:none;transition:opacity .12s ease}.gh-background-preview-ui{position:relative;z-index:2;display:grid;gap:18px;min-height:235px;padding:17px;color:#fff}.gh-background-preview-nav{display:flex;align-items:center;gap:6px}.gh-background-preview-nav span{width:52px;height:9px;border-radius:999px;background:linear-gradient(90deg,#67e8ff,#b88cff);box-shadow:0 0 15px rgba(103,232,255,.30)}.gh-background-preview-nav i{display:block;width:9px;height:9px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(2,8,18,.48)}.gh-background-preview-hero{align-self:center;display:grid;max-width:310px}.gh-background-preview-hero small{color:#86ebff;font-size:8px;font-weight:950;letter-spacing:.15em;text-transform:uppercase}.gh-background-preview-hero b{margin-top:4px;font-size:21px;line-height:1.05;text-shadow:0 2px 10px rgba(0,0,0,.75)}.gh-background-preview-hero em{margin-top:7px;color:rgba(235,249,255,.78);font-size:9px;font-style:normal}.gh-background-preview-cards{align-self:end;display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:7px}.gh-background-preview-cards i{height:39px;border:1px solid rgba(255,255,255,.16);border-radius:11px;background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.055));box-shadow:0 8px 18px rgba(0,0,0,.16);backdrop-filter:blur(4px)}.gh-background-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:13px}.gh-background-settings-grid select{width:100%}.gh-background-dim-field>span{display:flex;justify-content:space-between;gap:10px}.gh-background-dim-field output{color:#86ebff;font-weight:900}.gh-background-dim-field input[type=range]{width:100%;accent-color:var(--gh-avatar,#62e6ff)}.gh-background-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:13px}.gh-background-actions .gh-btn[type=submit]{margin-left:auto}.gh-background-upload{cursor:pointer}.gh-background-file-note{display:block;margin-top:9px;color:var(--muted);font-size:9px;line-height:1.45}.gh-background-panel.has-pending-background .gh-background-preview-stage{border-color:color-mix(in srgb,var(--gh-avatar,#62e6ff) 48%,transparent);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 0 0 2px color-mix(in srgb,var(--gh-avatar,#62e6ff) 12%,transparent),0 16px 38px rgba(0,0,0,.20)}
@media(max-width:680px){.gh-background-preview-stage,.gh-background-preview-ui{min-height:205px}.gh-background-settings-grid{grid-template-columns:1fr}.gh-background-actions{display:grid;grid-template-columns:1fr 1fr}.gh-background-actions .gh-btn,.gh-background-actions .gh-background-upload{width:100%;justify-content:center;text-align:center}.gh-background-actions .gh-btn[type=submit]{grid-column:1/-1;margin-left:0}.gh-background-preview-hero b{font-size:18px}}


/* ===== v194A full miniature Hub background preview ===== */
.gh-background-preview-launch{display:grid;grid-template-columns:minmax(190px,42%) minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;margin:1px 0 13px;padding:10px;border:1px solid rgba(111,232,250,.13);border-radius:17px;background:rgba(255,255,255,.018);color:inherit;text-align:left;cursor:pointer}.gh-background-preview-launch:hover{border-color:rgba(111,232,250,.29);background:rgba(111,232,250,.035)}.gh-background-preview-launch:focus-visible{outline:2px solid #67e8ff;outline-offset:2px}.gh-background-preview-launch .gh-background-preview-stage{position:relative;display:block;width:100%;min-height:0;aspect-ratio:16/9;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:12px;background-color:#071221;background-image:radial-gradient(circle at 20% 15%,rgba(72,226,255,.22),transparent 32%),radial-gradient(circle at 85% 80%,rgba(158,101,255,.20),transparent 38%),linear-gradient(145deg,#071827,#030712);background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:0 10px 24px rgba(0,0,0,.22)}.gh-background-preview-launch .gh-background-preview-ui{position:absolute;inset:0;z-index:2;display:grid;grid-template-rows:auto auto 1fr auto;gap:6px;min-height:0;padding:7px}.gh-background-preview-launch .gh-background-preview-browser{display:flex;align-items:center;gap:3px;height:10px;padding:0 4px;border-radius:4px;background:rgba(2,8,18,.56);font-size:0}.gh-background-preview-launch .gh-background-preview-browser i{width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,.45)}.gh-background-preview-launch .gh-background-preview-browser b{margin-left:3px;color:rgba(255,255,255,.5);font-size:3px;font-weight:800}.gh-background-preview-launch .gh-background-preview-nav{display:flex;align-items:center;gap:4px}.gh-background-preview-launch .gh-background-preview-nav em{display:grid;place-items:center;width:13px;height:13px;border-radius:4px;background:linear-gradient(145deg,#67e8ff,#7e72e7);color:#04101c;font-size:4px;font-style:normal;font-weight:1000}.gh-background-preview-launch .gh-background-preview-nav i{display:block;width:7px;height:3px;border-radius:999px;background:rgba(255,255,255,.38)}.gh-background-preview-launch .gh-background-preview-hero{align-self:center;display:grid;max-width:65%;padding-left:2px}.gh-background-preview-launch .gh-background-preview-hero small{font-size:3px}.gh-background-preview-launch .gh-background-preview-hero b{margin-top:2px;font-size:8px}.gh-background-preview-launch .gh-background-preview-hero em{margin-top:2px;font-size:3px}.gh-background-preview-launch .gh-background-preview-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.gh-background-preview-launch .gh-background-preview-cards i{height:auto;aspect-ratio:1.4;border-radius:4px}.gh-background-preview-launch-copy b{display:block;color:#efffff;font-size:12px}.gh-background-preview-launch-copy small{display:block;margin-top:5px;color:#7896a2;font-size:9px;line-height:1.45}.gh-background-preview-launch-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(103,232,255,.15);border-radius:10px;background:rgba(103,232,255,.05);color:#8defff;font-size:14px}
.gh-background-preview-modal[hidden]{display:none!important}.gh-background-preview-modal{position:fixed;inset:0;z-index:50000;display:grid;place-items:center;padding:24px;background:rgba(1,5,13,.82);backdrop-filter:blur(14px)}body.gh-background-preview-open{overflow:hidden}.gh-background-preview-dialog{width:min(1120px,96vw);max-height:94vh;overflow:auto;border:1px solid rgba(123,232,250,.20);border-radius:24px;background:linear-gradient(155deg,#0b1a2b,#050b16);box-shadow:0 35px 100px rgba(0,0,0,.58),inset 0 1px rgba(255,255,255,.055)}.gh-background-preview-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px 13px;border-bottom:1px solid rgba(255,255,255,.07)}.gh-background-preview-dialog>header small{color:#72e9f8;font-size:8px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}.gh-background-preview-dialog>header h3{margin:3px 0 3px;font-size:21px;letter-spacing:-.03em}.gh-background-preview-dialog>header p{margin:0;color:#7895a2;font-size:9px}.gh-background-preview-close{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.10);border-radius:11px;background:rgba(255,255,255,.035);color:#dffcff;font-size:23px;line-height:1;cursor:pointer}.gh-background-preview-device-tabs{display:flex;justify-content:center;gap:4px;padding:11px}.gh-background-preview-device-tabs button{padding:7px 13px;border:1px solid transparent;border-radius:9px;background:transparent;color:#7895a2;font-size:9px;font-weight:900;cursor:pointer}.gh-background-preview-device-tabs button[aria-pressed="true"]{border-color:rgba(103,232,255,.18);background:rgba(103,232,255,.09);color:#e8fdff}.gh-background-preview-device{width:min(1000px,calc(100% - 36px));margin:0 auto 15px;transition:width .22s ease}.gh-background-preview-device[data-device="phone"]{width:min(390px,calc(100% - 28px))}.gh-background-preview-canvas{position:relative;isolation:isolate;aspect-ratio:16/10;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:18px;background-color:#06111e;background-image:radial-gradient(circle at 20% 15%,rgba(72,226,255,.22),transparent 32%),radial-gradient(circle at 85% 80%,rgba(158,101,255,.20),transparent 38%),linear-gradient(145deg,#071827,#030712);background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:0 20px 55px rgba(0,0,0,.38)}.gh-background-preview-device[data-device="phone"] .gh-background-preview-canvas{aspect-ratio:9/16;border-radius:28px}.gh-background-preview-canvas-overlay{position:absolute;inset:0;z-index:1;background:#020711;opacity:.42;pointer-events:none}.gh-mini-hub{position:relative;z-index:2;display:grid;grid-template-rows:auto auto 1fr auto auto auto auto;gap:1.8%;height:100%;padding:1.6%;color:#fff;font-size:clamp(5px,.58vw,9px)}.gh-mini-browser{display:flex;align-items:center;justify-content:space-between;height:3.4%;padding:0 .8%;border-radius:.45em;background:rgba(2,7,15,.72);box-shadow:inset 0 1px rgba(255,255,255,.06)}.gh-mini-browser span{display:flex;gap:.35em}.gh-mini-browser i{width:.55em;height:.55em;border-radius:50%;background:rgba(255,255,255,.42)}.gh-mini-browser b{color:rgba(255,255,255,.46);font-size:.75em}.gh-mini-nav{display:flex;align-items:center;justify-content:space-between;padding:.65% 1%;border:1px solid rgba(255,255,255,.10);border-radius:.75em;background:rgba(4,12,24,.66);backdrop-filter:blur(5px)}.gh-mini-nav strong{display:flex;align-items:center;gap:.65em}.gh-mini-nav em{display:grid;place-items:center;width:2.6em;height:2.6em;border-radius:.7em;background:linear-gradient(145deg,#67e8ff,#7b70e3);color:#02101b;font-style:normal;font-weight:1000}.gh-mini-nav span{font-size:.95em}.gh-mini-nav>div{display:flex;gap:.55em}.gh-mini-nav>div i{width:2.5em;height:2.5em;border:1px solid rgba(255,255,255,.12);border-radius:.65em;background:rgba(255,255,255,.045)}.gh-mini-hero{align-self:center;max-width:52%;padding:2.4% 2.2%;border:1px solid rgba(255,255,255,.10);border-radius:1.2em;background:linear-gradient(145deg,rgba(5,18,35,.72),rgba(8,11,26,.56));box-shadow:0 1.8em 3em rgba(0,0,0,.20);backdrop-filter:blur(5px)}.gh-mini-hero small{color:#72e9f8;font-size:.76em;font-weight:950;letter-spacing:.16em}.gh-mini-hero h4{margin:.45em 0 .35em;font-size:2.35em;line-height:1.04;letter-spacing:-.04em}.gh-mini-hero p{max-width:90%;margin:0;color:rgba(224,244,250,.72);font-size:.9em;line-height:1.45}.gh-mini-hero span{display:inline-flex;margin-top:1.1em;padding:.65em .9em;border-radius:.7em;background:linear-gradient(135deg,#67e8ff,#8c88ff);color:#03101c;font-size:.8em;font-weight:1000}.gh-mini-apps{display:grid;grid-template-columns:repeat(5,1fr);gap:1%}.gh-mini-apps i{aspect-ratio:1.65;border:1px solid rgba(255,255,255,.12);border-radius:1em;background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.035));box-shadow:0 1em 2em rgba(0,0,0,.15);backdrop-filter:blur(4px)}.gh-mini-apps i:nth-child(2){background:linear-gradient(145deg,rgba(58,202,228,.26),rgba(82,73,178,.12))}.gh-mini-apps i:nth-child(3){background:linear-gradient(145deg,rgba(111,226,165,.22),rgba(44,120,170,.10))}.gh-mini-apps i:nth-child(4){background:linear-gradient(145deg,rgba(245,190,84,.20),rgba(166,84,170,.10))}.gh-mini-analytics{display:grid;grid-template-columns:1.3fr .7fr;gap:1%;padding:1.1%;border:1px solid rgba(255,255,255,.09);border-radius:1em;background:rgba(5,15,29,.70)}.gh-mini-analytics>div{display:grid;grid-template-columns:auto 1fr;gap:.45em .8em;align-items:center}.gh-mini-analytics small{grid-column:1/-1;color:#72e9f8;font-size:.7em;font-weight:950}.gh-mini-analytics b{grid-column:1/-1;font-size:1.1em}.gh-mini-analytics span{height:.5em;border-radius:999px;background:rgba(255,255,255,.14)}.gh-mini-analytics span:nth-of-type(2){width:75%}.gh-mini-analytics span:nth-of-type(3){width:55%}.gh-mini-analytics>i{justify-self:center;width:5.7em;aspect-ratio:1;border-radius:50%;background:conic-gradient(#67e8ff 0 48%,#ffd477 48% 66%,#ff91ad 66% 86%,#b88cff 86%);box-shadow:inset 0 0 0 1.9em #0a1727}.gh-mini-collections{display:grid;grid-template-columns:repeat(3,1fr);gap:1%}.gh-mini-collections i{height:3.5em;border:1px solid rgba(255,255,255,.09);border-radius:.8em;background:rgba(255,255,255,.035)}.gh-mini-footer{text-align:right;color:rgba(225,247,255,.38);font-size:.62em}.gh-background-preview-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 20px;border-top:1px solid rgba(255,255,255,.07);color:#7895a2;font-size:9px}.gh-background-preview-device[data-device="phone"] .gh-mini-hub{gap:1.3%;padding:3.2%;font-size:7px}.gh-background-preview-device[data-device="phone"] .gh-mini-nav span{display:none}.gh-background-preview-device[data-device="phone"] .gh-mini-nav>div i:nth-child(n+4){display:none}.gh-background-preview-device[data-device="phone"] .gh-mini-hero{max-width:90%;padding:5%}.gh-background-preview-device[data-device="phone"] .gh-mini-hero h4{font-size:2em}.gh-background-preview-device[data-device="phone"] .gh-mini-apps{grid-template-columns:1fr 1fr}.gh-background-preview-device[data-device="phone"] .gh-mini-apps i:nth-child(5){display:none}.gh-background-preview-device[data-device="phone"] .gh-mini-analytics{grid-template-columns:1fr}.gh-background-preview-device[data-device="phone"] .gh-mini-analytics>i{display:none}.gh-background-preview-device[data-device="phone"] .gh-mini-collections{grid-template-columns:1fr}.gh-background-preview-device[data-device="phone"] .gh-mini-collections i:nth-child(n+2){display:none}
@media(max-width:720px){.gh-background-preview-launch{grid-template-columns:145px minmax(0,1fr) auto;gap:10px}.gh-background-preview-launch-copy small{font-size:8px}.gh-background-preview-modal{padding:10px}.gh-background-preview-dialog{width:100%;max-height:97vh;border-radius:18px}.gh-background-preview-dialog>header{padding:14px}.gh-background-preview-dialog>header h3{font-size:18px}.gh-background-preview-device{width:calc(100% - 18px)}.gh-background-preview-dialog>footer{padding:10px 14px}}
@media(max-width:500px){.gh-background-preview-launch{grid-template-columns:110px minmax(0,1fr);padding:8px}.gh-background-preview-launch-icon{display:none}.gh-background-preview-launch-copy b{font-size:10px}.gh-background-preview-launch-copy small{font-size:7px}.gh-background-preview-dialog>footer span{max-width:65%;font-size:7px}}
/* The Abyss Gaming Hub v219C — iPhone safe-area header fix. */
:root{
  --gh-device-safe-top:env(safe-area-inset-top,0px);
  --gh-device-safe-right:env(safe-area-inset-right,0px);
  --gh-device-safe-bottom:env(safe-area-inset-bottom,0px);
  --gh-device-safe-left:env(safe-area-inset-left,0px);
}

@media (max-width:760px), (hover:none) and (pointer:coarse){
  /* Keep the sticky shell edge-to-edge, but place every control below the
     iPhone status bar / notch / Dynamic Island. */
  .top{
    top:0!important;
    margin-top:-14px!important;
    margin-right:calc(-12px - var(--gh-device-safe-right))!important;
    margin-left:calc(-12px - var(--gh-device-safe-left))!important;
    padding-top:max(12px,calc(var(--gh-device-safe-top) + 8px))!important;
    padding-right:max(8px,calc(var(--gh-device-safe-right) + 8px))!important;
    padding-bottom:8px!important;
    padding-left:max(8px,calc(var(--gh-device-safe-left) + 8px))!important;
    scroll-padding-top:max(96px,calc(var(--gh-device-safe-top) + 84px));
  }

  /* A dedicated account row plus a dedicated launcher row prevents the
     controls from being compressed into the sensor/status-bar region. */
  .bar-top{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:stretch!important;
    justify-content:stretch!important;
    gap:8px!important;
    padding:8px!important;
    border-radius:22px!important;
  }
  .bar-top .brand{
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
    gap:7px!important;
  }
  .bar-top .brand .gh-account-button-brand{
    width:auto!important;
    max-width:min(230px,calc(100vw - var(--gh-device-safe-left) - var(--gh-device-safe-right) - 76px))!important;
    min-height:38px!important;
    touch-action:manipulation!important;
  }

  .bar-top .navlinks{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:5px!important;
    margin:0!important;
    padding:2px 1px 4px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain;
    scroll-padding-inline:4px;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    touch-action:pan-x manipulation;
    -webkit-overflow-scrolling:touch;
  }
  .bar-top .navlinks::-webkit-scrollbar{display:none!important}
  .bar-top .navlinks>*{
    flex:0 0 auto!important;
    scroll-snap-align:start;
    touch-action:manipulation;
  }

  /* Give every launcher a reliable Apple-recommended touch target while
     keeping the row compact enough for an iPhone in portrait. */
  .bar-top .navlinks .universal-app-nav-btn,
  .bar-top .navlinks .universal-home-nav-btn,
  .bar-top .navlinks .hub-fullscreen-toggle,
  .bar-top .navlinks .music-toggle{
    min-width:40px!important;
    width:40px!important;
    height:40px!important;
    min-height:40px!important;
    border-radius:12px!important;
  }
  .bar-top .navlinks .music-settings-btn{
    width:36px!important;
    min-width:36px!important;
    height:40px!important;
    min-height:40px!important;
    border-radius:12px!important;
  }
  .bar-top .navlinks .universal-app-nav-btn{padding:3px!important}
  .bar-top .navlinks .universal-home-nav-btn{padding:9px!important}
  .bar-top .navlinks .hub-fullscreen-toggle,
  .bar-top .navlinks .music-toggle{padding:8px!important}

  /* Account and music overlays must also respect the phone cutout. */
  .gh-account-shade{
    padding-top:max(20px,calc(var(--gh-device-safe-top) + 12px))!important;
    padding-right:max(12px,calc(var(--gh-device-safe-right) + 12px))!important;
    padding-bottom:max(20px,calc(var(--gh-device-safe-bottom) + 12px))!important;
    padding-left:max(12px,calc(var(--gh-device-safe-left) + 12px))!important;
  }
  .music-popover{
    top:max(108px,calc(var(--gh-device-safe-top) + 96px))!important;
    right:max(12px,calc(var(--gh-device-safe-right) + 10px))!important;
    left:auto!important;
    max-width:calc(100vw - var(--gh-device-safe-left) - var(--gh-device-safe-right) - 24px)!important;
  }

  .collection,
  .section,
  [id]{scroll-margin-top:max(112px,calc(var(--gh-device-safe-top) + 100px))}
}

@media (max-width:430px){
  .bar-top{gap:7px!important;padding:7px!important}
  .bar-top .navlinks{gap:4px!important}
  .bar-top .navlinks .universal-app-nav-btn,
  .bar-top .navlinks .universal-home-nav-btn,
  .bar-top .navlinks .hub-fullscreen-toggle,
  .bar-top .navlinks .music-toggle{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
  }
  .bar-top .navlinks .music-settings-btn{
    width:34px!important;
    min-width:34px!important;
    height:38px!important;
    min-height:38px!important;
  }
}

/* Fullscreen removes the browser status bar, so do not keep an artificial
   notch gap after entering native fullscreen. */
:fullscreen{
  --gh-device-safe-top:0px;
  --gh-device-safe-right:0px;
  --gh-device-safe-bottom:0px;
  --gh-device-safe-left:0px;
}
:-webkit-full-screen{
  --gh-device-safe-top:0px;
  --gh-device-safe-right:0px;
  --gh-device-safe-bottom:0px;
  --gh-device-safe-left:0px;
}
/* The Abyss Gaming Hub v232N — portrait phone top-bar single-row layout. */

@media (max-width:760px) and (orientation:portrait){
  /*
    v219C deliberately split the phone header into an account row and a
    launcher row. The modern compact toolbar no longer needs that split.
    Keep the safe-area padding from v219C, but return the visible bar itself
    to one horizontal row.
  */
  .bar-top{
    display:flex!important;
    flex-flow:row nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:6px!important;
    min-height:52px!important;
    padding:6px 7px!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }

  .bar-top .brand{
    display:flex!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:5px!important;
    margin:0!important;
  }
  .bar-top .brand .logo{
    flex:0 0 34px!important;
    width:34px!important;
    height:34px!important;
    border-radius:11px!important;
  }
  .bar-top .brand .gh-account-button-brand{
    flex:0 0 38px!important;
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    padding:6px!important;
    border-radius:12px!important;
  }
  .bar-top .brand .gh-account-button-brand .gh-account-avatar{
    width:26px!important;
    height:26px!important;
    flex-basis:26px!important;
    border-radius:9px!important;
  }
  .bar-top .brand .gh-account-button-brand .gh-account-button-copy,
  .bar-top .brand .gh-account-button-brand .gh-sync-dot{
    display:none!important;
  }

  .bar-top .navlinks{
    display:flex!important;
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex-wrap:nowrap!important;
    gap:4px!important;
    margin:0!important;
    padding:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    touch-action:pan-x manipulation;
    -webkit-overflow-scrolling:touch;
  }
  .bar-top .navlinks::-webkit-scrollbar{display:none!important}
  .bar-top .navlinks>*{
    flex:0 0 auto!important;
    scroll-snap-align:end;
  }
  .bar-top .navlinks .music-shell{
    display:flex!important;
    align-items:center!important;
    gap:4px!important;
  }

  .bar-top .navlinks .universal-app-nav-btn,
  .bar-top .navlinks .universal-home-nav-btn,
  .bar-top .navlinks .hub-fullscreen-toggle,
  .bar-top .navlinks .music-toggle{
    flex:0 0 38px!important;
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    border-radius:12px!important;
  }
  .bar-top .navlinks .music-settings-btn{
    flex:0 0 34px!important;
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:38px!important;
    min-height:38px!important;
    border-radius:12px!important;
  }

  /* The old two-row header needed a much lower overlay/anchor offset. */
  .music-popover{
    top:max(78px,calc(var(--gh-device-safe-top,0px) + 66px))!important;
  }
  .collection,
  .section,
  [id]{
    scroll-margin-top:max(86px,calc(var(--gh-device-safe-top,0px) + 74px))!important;
  }
}

@media (max-width:430px) and (orientation:portrait){
  .bar-top{
    gap:5px!important;
    min-height:48px!important;
    padding:5px 6px!important;
    border-radius:17px!important;
  }
  .bar-top .brand{gap:4px!important}
  .bar-top .brand .logo{
    flex-basis:32px!important;
    width:32px!important;
    height:32px!important;
  }
  .bar-top .brand .gh-account-button-brand{
    flex-basis:36px!important;
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    padding:5px!important;
  }
  .bar-top .brand .gh-account-button-brand .gh-account-avatar{
    width:26px!important;
    height:26px!important;
    flex-basis:26px!important;
  }
  .bar-top .navlinks{gap:3px!important}
  .bar-top .navlinks .music-shell{gap:3px!important}
  .bar-top .navlinks .universal-app-nav-btn,
  .bar-top .navlinks .universal-home-nav-btn,
  .bar-top .navlinks .hub-fullscreen-toggle,
  .bar-top .navlinks .music-toggle{
    flex-basis:36px!important;
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    border-radius:11px!important;
  }
  .bar-top .navlinks .music-settings-btn{
    flex-basis:32px!important;
    width:32px!important;
    min-width:32px!important;
    max-width:32px!important;
    height:36px!important;
    min-height:36px!important;
    border-radius:11px!important;
  }
}

@media (max-width:360px) and (orientation:portrait){
  .bar-top{gap:4px!important;padding-inline:5px!important}
  .bar-top .brand{gap:3px!important}
  .bar-top .brand .logo{flex-basis:30px!important;width:30px!important;height:30px!important}
  .bar-top .brand .gh-account-button-brand{flex-basis:34px!important;width:34px!important;min-width:34px!important;max-width:34px!important;height:34px!important;min-height:34px!important}
  .bar-top .navlinks .universal-app-nav-btn,
  .bar-top .navlinks .universal-home-nav-btn,
  .bar-top .navlinks .hub-fullscreen-toggle,
  .bar-top .navlinks .music-toggle{flex-basis:34px!important;width:34px!important;min-width:34px!important;max-width:34px!important;height:34px!important;min-height:34px!important}
  .bar-top .navlinks .music-settings-btn{flex-basis:30px!important;width:30px!important;min-width:30px!important;max-width:30px!important;height:34px!important;min-height:34px!important}
}
/* The Abyss Gaming Hub v233Y — iPhone Dynamic Island / status-bar safe top-bar fix. */
:root{
  --gh-safe-top:env(safe-area-inset-top,0px);
  --gh-safe-right:env(safe-area-inset-right,0px);
  --gh-safe-bottom:env(safe-area-inset-bottom,0px);
  --gh-safe-left:env(safe-area-inset-left,0px);
}

@media (max-width:760px), (hover:none) and (pointer:coarse){
  /*
    Keep the sticky glass backdrop edge-to-edge, but place the interactive
    toolbar beneath the iPhone status bar / notch / Dynamic Island.
    Loaded after v232N so the modern one-row toolbar wins visually while this
    layer owns the device-safe spacing.
  */
  .top{
    top:0!important;
    margin-top:-14px!important;
    margin-right:calc(-12px - var(--gh-safe-right))!important;
    margin-left:calc(-12px - var(--gh-safe-left))!important;
    padding-top:max(10px,calc(var(--gh-safe-top) + 10px))!important;
    padding-right:max(10px,calc(var(--gh-safe-right) + 10px))!important;
    padding-bottom:8px!important;
    padding-left:max(10px,calc(var(--gh-safe-left) + 10px))!important;
  }

  .bar-top{
    margin-top:0!important;
  }

  /* Overlays opened from the toolbar must remain below the same cutout. */
  .music-popover{
    top:max(78px,calc(var(--gh-safe-top) + 68px))!important;
    right:max(12px,calc(var(--gh-safe-right) + 10px))!important;
    max-width:calc(100vw - var(--gh-safe-left) - var(--gh-safe-right) - 24px)!important;
  }
  .gh-account-shade{
    padding-top:max(20px,calc(var(--gh-safe-top) + 12px))!important;
    padding-right:max(12px,calc(var(--gh-safe-right) + 12px))!important;
    padding-bottom:max(20px,calc(var(--gh-safe-bottom) + 12px))!important;
    padding-left:max(12px,calc(var(--gh-safe-left) + 12px))!important;
  }

  .collection,
  .section,
  [id]{
    scroll-margin-top:max(92px,calc(var(--gh-safe-top) + 80px))!important;
  }
}

/* Native fullscreen removes the browser/status-bar cutout from the content
   viewport, so don't retain a phantom top gap there. */
:fullscreen{
  --gh-safe-top:0px;
  --gh-safe-right:0px;
  --gh-safe-bottom:0px;
  --gh-safe-left:0px;
}
:-webkit-full-screen{
  --gh-safe-top:0px;
  --gh-safe-right:0px;
  --gh-safe-bottom:0px;
  --gh-safe-left:0px;
}
/* v232Q — Desktop Apps launcher visual overhaul
   Goal: let app artwork breathe at full size instead of clipping it into generic tiles. */

#desktop .private-game-launchers{
  grid-template-columns:repeat(5,minmax(150px,1fr));
  gap:24px 18px;
  padding:20px 20px 24px;
  align-items:start;
}

#desktop .desktop-app-launcher-shell{
  position:relative;
  display:grid;
  grid-template-rows:auto auto;
  align-items:start;
  justify-items:stretch;
  min-width:0;
  overflow:visible;
}

#desktop .desktop-app-launcher-shell .universal-app-tile{
  width:100%;
  min-height:0!important;
  padding:0 4px 2px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  transform:none;
}

#desktop .desktop-app-launcher-shell .universal-app-tile::before{
  content:none!important;
  display:none!important;
}

#desktop .desktop-app-launcher-shell .universal-app-tile-art{
  width:100%;
  height:auto!important;
  aspect-ratio:1/1;
  margin:0 auto 12px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  display:grid;
  place-items:center;
  transition:transform .24s cubic-bezier(.2,.72,.22,1),filter .24s ease;
}


#desktop .desktop-app-launcher-shell .universal-app-tile-art::after{
  content:"";
  position:absolute;
  left:9%;
  right:9%;
  top:13%;
  bottom:13%;
  border-radius:50%;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 45%, rgba(138,237,255,.40) 0%, rgba(138,237,255,.24) 26%, rgba(152,112,255,.18) 46%, rgba(76,27,128,0) 72%),
    radial-gradient(circle at 50% 70%, rgba(255,255,255,.12) 0%, rgba(255,255,255,0) 55%);
  filter:blur(22px);
  opacity:0;
  transform:scale(.82);
  transition:opacity .24s ease, transform .24s cubic-bezier(.2,.72,.22,1), filter .24s ease;
  z-index:0;
}

#desktop .desktop-app-launcher-shell .universal-app-tile-art img{
  position:relative;
  z-index:1;
}
#desktop .desktop-app-launcher-shell .universal-app-tile-art img{
  width:100%!important;
  height:100%!important;
  max-width:100%;
  max-height:100%;
  padding:0!important;
  margin:0;
  object-fit:contain!important;
  object-position:center center!important;
  border-radius:0!important;
  overflow:visible!important;
  filter:drop-shadow(0 16px 22px rgba(0,0,0,.34));
  transform:none!important;
}

#desktop .desktop-app-launcher-shell .tile-name{
  margin-top:0;
  text-align:center;
  font-size:19px;
  line-height:1.05;
  letter-spacing:-.035em;
  color:#f2fdff;
  text-shadow:0 0 18px rgba(103,232,255,.16);
}

#desktop .desktop-app-launcher-shell .tile-meta{
  min-height:2.7em;
  margin:6px auto 0;
  max-width:240px;
  text-align:center;
  color:rgba(205,220,239,.72);
  font-size:11px;
  line-height:1.35;
}

/* Old progress/tag furniture made the launcher cards feel boxed-in. */
#desktop .desktop-app-launcher-shell .tile-tags,
#desktop .desktop-app-launcher-shell .bar{
  display:none!important;
}

/* Running state is communicated by a glow + a separate control rail, not an overlay. */
#desktop .desktop-app-launcher-shell.is-running .universal-app-tile{
  border:0!important;
  box-shadow:none!important;
}

#desktop .desktop-app-launcher-shell.is-running .universal-app-tile-art{
  filter:drop-shadow(0 0 18px rgba(103,232,255,.18));
}

#desktop .desktop-app-runtime-controls{
  display:none;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:32px;
  margin-top:10px;
}

#desktop .desktop-app-launcher-shell.is-running .desktop-app-runtime-controls{
  display:flex;
}

#desktop .desktop-app-running-badge,
#desktop .desktop-app-runtime-close{
  position:static!important;
  inset:auto!important;
  width:auto;
  height:auto;
  min-height:28px;
  margin:0;
  padding:6px 10px;
  border-radius:999px;
  backdrop-filter:blur(9px);
  box-shadow:0 8px 20px rgba(0,0,0,.22);
}

#desktop .desktop-app-running-badge{
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(103,232,255,.32);
  background:rgba(3,14,27,.62);
  color:#bff8ff;
  font:900 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.06em;
  text-transform:uppercase;
  pointer-events:none;
}

#desktop .desktop-app-running-badge::before{
  content:"";
  width:6px;
  height:6px;
  margin-right:6px;
  border-radius:50%;
  background:#67e8ff;
  box-shadow:0 0 10px rgba(103,232,255,.9);
}

#desktop .desktop-app-runtime-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(8,15,29,.66);
  color:#effcff;
  font:900 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.055em;
  text-transform:uppercase;
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}

#desktop .desktop-app-runtime-close:hover{
  border-color:rgba(255,112,135,.55);
  background:rgba(90,20,38,.78);
  transform:translateY(-1px);
}

#desktop .desktop-app-runtime-close:focus-visible{
  outline:2px solid rgba(103,232,255,.85);
  outline-offset:2px;
}

#desktop .desktop-app-running-badge[hidden],
#desktop .desktop-app-runtime-close[hidden]{display:none!important}

@media (hover:hover) and (pointer:fine){
  #desktop .desktop-app-launcher-shell .universal-app-tile:hover{
    transform:none!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  #desktop .desktop-app-launcher-shell .universal-app-tile:hover .universal-app-tile-art{
    transform:translateY(-5px) scale(1.025)!important;
    border:0!important;
    box-shadow:none!important;
    filter:brightness(1.08) saturate(1.08) drop-shadow(0 0 20px rgba(138,237,255,.18)) drop-shadow(0 22px 28px rgba(0,0,0,.28));
  }
  #desktop .desktop-app-launcher-shell .universal-app-tile:hover .universal-app-tile-art::after{
    opacity:1;
    transform:scale(1.03);
    filter:blur(28px);
  }
  #desktop .desktop-app-launcher-shell .universal-app-tile:hover .universal-app-tile-art img{
    filter:brightness(1.04) saturate(1.06) contrast(.985);
  }
  #desktop .desktop-app-launcher-shell.is-running .universal-app-tile:hover .universal-app-tile-art{
    filter:brightness(1.08) saturate(1.08) drop-shadow(0 0 24px rgba(103,232,255,.30)) drop-shadow(0 22px 28px rgba(0,0,0,.28));
  }
  #desktop .desktop-app-launcher-shell.is-running .universal-app-tile:hover .universal-app-tile-art::after{
    opacity:1;
    transform:scale(1.05);
    filter:blur(30px);
  }
}

#desktop .desktop-app-launcher-shell .universal-app-tile:focus-visible{
  outline:0!important;
  transform:none!important;
  border:0!important;
  box-shadow:none!important;
}
#desktop .desktop-app-launcher-shell .universal-app-tile:focus-visible .universal-app-tile-art{
  filter:drop-shadow(0 0 0 rgba(0,0,0,0)) drop-shadow(0 0 18px rgba(103,232,255,.55));
}
#desktop .desktop-app-launcher-shell .universal-app-tile:focus-visible .universal-app-tile-art::after{
  opacity:.85;
  transform:scale(1.02);
  filter:blur(26px);
}

@media(max-width:1080px){
  #desktop .private-game-launchers{grid-template-columns:repeat(3,minmax(160px,1fr));gap:22px 18px}
}

@media(max-width:720px){
  #desktop .private-game-launchers{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;padding:16px 12px 20px}
  #desktop .desktop-app-launcher-shell .tile-name{font-size:17px}
  #desktop .desktop-app-launcher-shell .tile-meta{font-size:10px;max-width:190px;min-height:2.7em}
  #desktop .desktop-app-runtime-controls{margin-top:8px;gap:6px}
  #desktop .desktop-app-running-badge,
  #desktop .desktop-app-runtime-close{min-height:26px;padding:6px 8px;font-size:8px}
}

@media(max-width:390px){
  #desktop .private-game-launchers{gap:16px 9px;padding-inline:9px}
  #desktop .desktop-app-launcher-shell .tile-name{font-size:16px}
  #desktop .desktop-app-launcher-shell .tile-meta{font-size:9px}
}
/* v232T — Home My Collections grid visual overhaul.
   Grid view only. Carousel view remains unchanged. */

#privateCollectionTiles:not(.is-carousel-view){
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:30px 20px;
  padding:22px 20px 28px;
  align-items:start;
}

#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile{
  min-width:0;
  min-height:0!important;
  padding:0 5px 4px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  transform:none;
  animation:none!important;
  filter:none!important;
}

/* Remove the legacy card wash / completion sweep from grid view. */
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile::before,
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile::after,
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .private-completed-watermark{
  content:none!important;
  display:none!important;
  animation:none!important;
}

#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .tile-art{
  order:1;
  position:relative;
  width:100%;
  height:auto!important;
  aspect-ratio:1/1;
  margin:0 auto 12px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  display:grid;
  place-items:center;
  transition:transform .24s cubic-bezier(.2,.72,.22,1),filter .24s ease;
}

/* Soft shared launcher-style aura. */
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .tile-art::after{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  top:12%;
  bottom:12%;
  z-index:0;
  border-radius:50%;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 45%,rgba(138,237,255,.38) 0%,rgba(138,237,255,.22) 28%,rgba(152,112,255,.17) 48%,rgba(76,27,128,0) 74%),
    radial-gradient(circle at 50% 72%,rgba(255,255,255,.10) 0%,rgba(255,255,255,0) 56%);
  filter:blur(23px);
  opacity:0;
  transform:scale(.82);
  transition:opacity .24s ease,transform .24s cubic-bezier(.2,.72,.22,1),filter .24s ease;
}

#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .image-art img{
  position:relative;
  z-index:1;
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:100%;
  max-height:100%;
  padding:var(--art-pad,6px)!important;
  margin:0;
  object-fit:contain!important;
  object-position:center center!important;
  transform:translate(var(--art-x,0px),var(--art-y,0px)) scale(var(--art-scale,1))!important;
  transform-origin:center center!important;
  border-radius:0!important;
  filter:drop-shadow(0 17px 22px rgba(0,0,0,.32));
  transition:filter .24s ease;
}

#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .private-tile-placeholder{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:72%;
  height:72%;
  border:1px solid rgba(103,232,255,.15);
  border-radius:28px;
  background:linear-gradient(145deg,rgba(25,51,72,.58),rgba(35,25,70,.58));
  filter:drop-shadow(0 15px 22px rgba(0,0,0,.30));
}

#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .tile-name{
  order:2;
  margin:0;
  text-align:center;
  font-size:19px;
  line-height:1.08;
  letter-spacing:-.035em;
  color:#f2fdff;
  text-shadow:0 0 18px rgba(103,232,255,.14);
}

#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .tile-meta{
  order:3;
  min-height:2.7em;
  max-width:240px;
  margin:6px auto 0;
  text-align:center;
  color:rgba(205,220,239,.74);
  font-size:11px;
  line-height:1.35;
}

/* Completion moves into the caption lane instead of covering the art. */
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .private-completed-badge{
  order:4;
  position:static!important;
  align-self:center;
  margin:8px auto 0;
  padding:5px 8px;
  border:1px solid rgba(255,233,145,.50);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(100,66,12,.70),rgba(183,123,24,.68));
  color:#fff2b0;
  box-shadow:0 0 16px rgba(255,197,69,.12);
  font-size:8px;
  letter-spacing:.09em;
  text-shadow:0 1px 3px rgba(0,0,0,.42);
  animation:none!important;
}
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .private-completed-badge::after{content:none!important;display:none!important}

/* Pills are redundant here; the compact acquisition line already carries the useful info. */
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .tile-tags{
  order:5;
  display:none!important;
}

#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .bar{
  order:6;
  width:min(150px,72%);
  height:4px;
  margin:10px auto 0;
  border:0!important;
  border-radius:999px;
  background:rgba(255,255,255,.085)!important;
  overflow:hidden;
  box-shadow:none!important;
}
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .bar i{
  border-radius:inherit;
  background:linear-gradient(90deg,#67e8ff,#b88cff)!important;
  box-shadow:0 0 13px rgba(103,232,255,.20);
}
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile.collection-complete .bar i{
  background:linear-gradient(90deg,#ffd666,#fff0a8,#f0a82e)!important;
  box-shadow:0 0 13px rgba(255,210,82,.24);
}

@media (hover:hover) and (pointer:fine){
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile:hover{
    transform:none!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    filter:none!important;
  }
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile:hover .tile-art{
    transform:translateY(-5px) scale(1.025)!important;
    filter:brightness(1.07) saturate(1.07) drop-shadow(0 0 20px rgba(138,237,255,.16));
  }
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile:hover .tile-art::after{
    opacity:1;
    transform:scale(1.03);
    filter:blur(29px);
  }
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile:hover .image-art img{
    filter:brightness(1.035) saturate(1.045) contrast(.99) drop-shadow(0 18px 24px rgba(0,0,0,.28));
  }
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile.collection-complete:hover .tile-art::after{
    background:
      radial-gradient(circle at 50% 45%,rgba(255,229,123,.34) 0%,rgba(255,197,69,.20) 28%,rgba(167,112,255,.15) 50%,rgba(76,27,128,0) 74%),
      radial-gradient(circle at 50% 72%,rgba(255,255,255,.10) 0%,rgba(255,255,255,0) 56%);
  }
}

#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile:focus-visible{
  outline:0!important;
  transform:none!important;
  border:0!important;
  box-shadow:none!important;
}
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile:focus-visible .tile-art{
  filter:drop-shadow(0 0 18px rgba(103,232,255,.52));
}
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile:focus-visible .tile-art::after{
  opacity:.86;
  transform:scale(1.02);
  filter:blur(27px);
}

@media(max-width:720px){
  #privateCollectionTiles:not(.is-carousel-view){
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px 12px;
    padding:18px 12px 24px;
  }
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .tile-name{font-size:17px}
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .tile-meta{font-size:10px;max-width:190px;min-height:2.7em}
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .bar{width:min(126px,78%)}
}

@media(max-width:390px){
  #privateCollectionTiles:not(.is-carousel-view){gap:20px 9px;padding-inline:9px}
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .tile-name{font-size:16px}
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .tile-meta{font-size:9px}
}

@media(prefers-reduced-motion:reduce){
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .tile-art,
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .tile-art::after,
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile .image-art img{transition:none!important}
}
/* v232U — Individual collection Carousel / Grid switch.
   Applies only inside collection detail pages; Home collection modes remain unchanged. */

.private-collection-display-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:8px auto 4px;
  width:max-content;
  max-width:calc(100% - 24px);
}
.private-collection-display-controls .private-collection-view-mode{
  margin:0;
  max-width:none;
}
.private-collection-detail-layout-toggle{
  width:38px;
  height:38px;
  padding:0;
  flex:0 0 38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(103,232,255,.18);
  border-radius:50%;
  background:rgba(3,10,22,.46);
  color:#dffaff;
  backdrop-filter:blur(8px);
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
.private-collection-detail-layout-toggle:hover,
.private-collection-detail-layout-toggle:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(103,232,255,.56);
  background:rgba(13,34,54,.9);
  box-shadow:0 0 0 3px rgba(103,232,255,.07),0 10px 28px rgba(0,0,0,.25);
  outline:none;
}
.private-collection-detail-layout-toggle[aria-pressed="true"]{
  border-color:rgba(184,140,255,.48);
  background:linear-gradient(135deg,rgba(25,71,95,.78),rgba(73,53,130,.72));
}
.private-collection-detail-layout-toggle svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.private-collection-detail-layout-toggle .private-detail-layout-carousel{fill:currentColor;stroke:none}
.private-collection-detail-layout-toggle svg[hidden]{display:none!important}

.private-detail-grid{
  display:grid;
  gap:28px 20px;
  width:100%;
  padding:26px 22px 30px;
  box-sizing:border-box;
  align-items:start;
}
.private-detail-console-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
.private-detail-game-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr))}

.private-detail-grid-card{
  position:relative;
  min-width:0;
  margin:0;
  padding:0 4px 4px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:inherit;
  font:inherit;
  text-align:center;
  overflow:visible;
}
button.private-detail-grid-card,
.private-detail-grid-main{
  appearance:none;
  cursor:pointer;
}
.private-detail-grid-main{
  display:flex;
  width:100%;
  min-width:0;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  flex-direction:column;
  align-items:stretch;
  text-align:center;
}

.private-detail-grid-art{
  position:relative;
  display:grid;
  place-items:center;
  width:100%;
  margin:0 auto 12px;
  overflow:visible;
  background:transparent;
  border:0;
  box-shadow:none;
  transition:transform .24s cubic-bezier(.2,.72,.22,1),filter .24s ease;
}
.private-detail-console-art{aspect-ratio:1.32/1}
.private-detail-game-art{aspect-ratio:4/5}

.private-detail-grid-art::after{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  top:10%;
  bottom:10%;
  z-index:0;
  pointer-events:none;
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 46%,rgba(138,237,255,.38) 0%,rgba(138,237,255,.22) 28%,rgba(152,112,255,.17) 48%,rgba(76,27,128,0) 74%),
    radial-gradient(circle at 50% 72%,rgba(255,255,255,.10) 0%,rgba(255,255,255,0) 56%);
  filter:blur(23px);
  opacity:0;
  transform:scale(.82);
  transition:opacity .24s ease,transform .24s cubic-bezier(.2,.72,.22,1),filter .24s ease;
}
.private-detail-grid-art img{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  border:0;
  background:transparent;
  box-shadow:none;
  filter:drop-shadow(0 17px 23px rgba(0,0,0,.32));
  transition:filter .24s ease;
}
.private-detail-game-art img{
  border-radius:8px;
  filter:drop-shadow(0 17px 23px rgba(0,0,0,.34));
}
.private-detail-game-placeholder{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:72%;
  height:72%;
  border:1px solid rgba(103,232,255,.15);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(25,51,72,.58),rgba(35,25,70,.58));
  font-size:52px;
  filter:drop-shadow(0 15px 22px rgba(0,0,0,.30));
}

.private-detail-grid-card strong{
  display:block;
  margin:0;
  color:#f2fdff;
  font-size:18px;
  line-height:1.08;
  letter-spacing:-.03em;
  text-shadow:0 0 18px rgba(103,232,255,.14);
}
.private-detail-grid-card small{
  display:block;
  min-height:2.55em;
  max-width:230px;
  margin:6px auto 0;
  color:rgba(205,220,239,.74);
  font-size:10.5px;
  line-height:1.35;
}
.private-detail-grid-status{
  display:block;
  width:min(154px,92%);
  min-height:31px;
  margin:9px auto 0;
  padding:6px 9px;
  border-radius:999px;
  font-size:9px;
  font-weight:900;
  text-align:center;
  text-align-last:center;
}

@media (hover:hover) and (pointer:fine){
  .private-detail-grid-card:hover .private-detail-grid-art,
  .private-detail-grid-main:hover .private-detail-grid-art{
    transform:translateY(-5px) scale(1.025);
    filter:brightness(1.07) saturate(1.07) drop-shadow(0 0 20px rgba(138,237,255,.16));
  }
  .private-detail-grid-card:hover .private-detail-grid-art::after,
  .private-detail-grid-main:hover .private-detail-grid-art::after{
    opacity:1;
    transform:scale(1.03);
    filter:blur(29px);
  }
  .private-detail-grid-card:hover .private-detail-grid-art img,
  .private-detail-grid-main:hover .private-detail-grid-art img{
    filter:brightness(1.035) saturate(1.045) contrast(.99) drop-shadow(0 18px 24px rgba(0,0,0,.28));
  }
}

.private-detail-grid-card:focus-visible,
.private-detail-grid-main:focus-visible{
  outline:none;
}
.private-detail-grid-card:focus-visible .private-detail-grid-art,
.private-detail-grid-main:focus-visible .private-detail-grid-art{
  filter:drop-shadow(0 0 18px rgba(103,232,255,.52));
}
.private-detail-grid-card:focus-visible .private-detail-grid-art::after,
.private-detail-grid-main:focus-visible .private-detail-grid-art::after{
  opacity:.86;
  transform:scale(1.02);
  filter:blur(27px);
}

@media(max-width:720px){
  .private-collection-display-controls{gap:6px;margin-top:7px}
  .private-collection-detail-layout-toggle{width:36px;height:36px;flex-basis:36px}
  .private-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px;padding:20px 12px 26px}
  .private-detail-grid-card strong{font-size:16px}
  .private-detail-grid-card small{font-size:9px;max-width:190px}
  .private-detail-grid-status{width:min(142px,94%);font-size:8.5px}
}
@media(max-width:390px){
  .private-detail-grid{gap:20px 9px;padding-inline:9px}
  .private-detail-grid-card strong{font-size:15px}
  .private-detail-grid-card small{font-size:8.5px}
}
@media(prefers-reduced-motion:reduce){
  .private-collection-detail-layout-toggle,
  .private-detail-grid-art,
  .private-detail-grid-art::after,
  .private-detail-grid-art img{transition:none!important}
}
/* v232V — Unified completed-collection state for Home Grid + Carousel.
   Completion belongs in the caption/status lane, never over the artwork. */

/* Shared status label under the ordinary collection summary. */
#privateCollectionTiles .private-home-collection-completion{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:center;
  width:max-content;
  max-width:100%;
  margin:8px auto 0;
  padding:6px 10px;
  border:1px solid rgba(255,226,111,.58);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(85,56,9,.72),rgba(176,113,17,.66));
  color:#fff0a2;
  box-shadow:0 0 17px rgba(255,197,69,.16),inset 0 1px rgba(255,255,255,.10);
  text-shadow:0 1px 3px rgba(0,0,0,.42),0 0 10px rgba(255,213,92,.20);
  font-size:9px;
  font-weight:950;
  line-height:1;
  letter-spacing:.075em;
  text-transform:uppercase;
  white-space:nowrap;
}
#privateCollectionTiles .private-home-collection-completion[hidden]{display:none!important}

/* Grid: keep the status below the normal name/progress copy. */
#privateCollectionTiles:not(.is-carousel-view) .private-home-collection-completion{
  order:4;
}

/* Completely retire the old overlay completion furniture on the Home grid. */
#privateCollectionTiles:not(.is-carousel-view) .private-completed-watermark,
#privateCollectionTiles:not(.is-carousel-view) .private-completed-badge{
  display:none!important;
}

/* A completed grid collection carries a warm persistent aura even at rest. */
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile.collection-complete .tile-art::after{
  opacity:.78;
  transform:scale(.98);
  filter:blur(27px);
  background:
    radial-gradient(circle at 50% 44%,rgba(255,239,159,.52) 0%,rgba(255,206,79,.34) 27%,rgba(232,157,40,.19) 49%,rgba(112,66,18,0) 75%),
    radial-gradient(circle at 50% 72%,rgba(255,250,214,.14) 0%,rgba(255,255,255,0) 58%);
}
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile.collection-complete .image-art img{
  filter:brightness(1.035) saturate(1.04) drop-shadow(0 0 11px rgba(255,223,126,.32)) drop-shadow(0 18px 23px rgba(0,0,0,.28));
}
#privateCollectionTiles:not(.is-carousel-view) .private-collection-tile.collection-complete .tile-name{
  color:#fff8d7;
  text-shadow:0 0 16px rgba(255,211,82,.27);
}

@media (hover:hover) and (pointer:fine){
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile.collection-complete:hover .tile-art::after{
    opacity:1;
    transform:scale(1.06);
    filter:blur(32px);
    background:
      radial-gradient(circle at 50% 44%,rgba(255,244,180,.66) 0%,rgba(255,209,82,.44) 27%,rgba(239,163,44,.24) 50%,rgba(112,66,18,0) 76%),
      radial-gradient(circle at 50% 72%,rgba(255,252,224,.18) 0%,rgba(255,255,255,0) 58%);
  }
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile.collection-complete:hover .image-art img{
    filter:brightness(1.08) saturate(1.065) drop-shadow(0 0 18px rgba(255,223,126,.45)) drop-shadow(0 18px 23px rgba(0,0,0,.26));
  }
}

/* Carousel: status sits under name + acquisition text, like the game status lane. */
.private-home-collection-carousel .private-home-carousel-completion{
  margin-top:9px;
  color:#fff0a2;
}
.private-home-collection-carousel .private-console-carousel-caption{
  min-height:118px;
}

/* Completed carousel art swaps the normal cyan/purple center aura for gold. */
.private-home-collection-carousel-item.collection-complete .private-console-carousel-glow{
  background:radial-gradient(ellipse,
    rgba(255,252,221,.34) 0%,
    rgba(255,226,111,.52) 22%,
    rgba(255,188,55,.34) 47%,
    rgba(166,100,31,.18) 66%,
    transparent 84%);
}
.private-home-collection-carousel-item.collection-complete[data-carousel-offset="0"] .private-console-carousel-glow{
  opacity:1;
  filter:blur(36px);
}
.private-home-collection-carousel-item.collection-complete[data-carousel-offset="0"] img{
  filter:brightness(1.055) saturate(1.045) drop-shadow(0 0 11px rgba(255,228,139,.45)) drop-shadow(0 15px 22px rgba(0,0,0,.32));
}
.private-home-collection-carousel.has-active-completed-collection .private-console-carousel-caption strong{
  color:#fff8d7;
  text-shadow:0 0 19px rgba(255,210,75,.38);
}

@media(max-width:720px){
  #privateCollectionTiles .private-home-collection-completion{font-size:8px;padding:5px 8px;margin-top:7px}
  .private-home-collection-carousel .private-console-carousel-caption{min-height:106px}
}

@media(max-width:430px){
  .private-home-collection-carousel .private-console-carousel-caption{min-height:102px}
}

@media(prefers-reduced-motion:reduce){
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile.collection-complete .tile-art::after,
  #privateCollectionTiles:not(.is-carousel-view) .private-collection-tile.collection-complete .image-art img,
  .private-home-collection-carousel-item.collection-complete .private-console-carousel-glow,
  .private-home-collection-carousel-item.collection-complete img{transition:none!important}
}
/* v232W — Individual collection completed-state cleanup.
   Removes the giant hero watermark and replaces the title-row badge with a clean
   completion line below the summary, plus a contained gold aura. */

.collection.collection-complete .collection-hero::after{
  content:none!important;
  display:none!important;
}

.collection.collection-complete [data-private-completed-badge],
.collection.collection-complete .private-completed-page-badge{
  display:none!important;
}

.private-collection-page-completion{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:0 0 12px;
  padding:7px 11px;
  border:1px solid rgba(255,231,133,.50);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(255,215,92,.18),rgba(255,171,46,.12));
  color:#fff0aa;
  font-size:10px;
  font-weight:1000;
  letter-spacing:.12em;
  text-transform:uppercase;
  box-shadow:0 10px 28px rgba(255,184,42,.18);
}
.private-collection-page-completion[hidden]{display:none!important}

.collection.collection-complete .big-art{
  position:relative;
  border-color:rgba(255,230,138,.56);
  background:
    radial-gradient(circle at 50% 38%,rgba(255,242,177,.16),transparent 54%),
    var(--grad);
  box-shadow:
    0 0 0 1px rgba(255,230,138,.08),
    0 0 34px rgba(255,204,82,.18),
    0 18px 45px rgba(255,184,42,.18);
}
.collection.collection-complete .big-art::after{
  content:"";
  position:absolute;
  inset:-18%;
  z-index:0;
  pointer-events:none;
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 45%,rgba(255,235,160,.28) 0%,rgba(255,213,94,.18) 34%,rgba(255,170,46,.10) 52%,rgba(255,170,46,0) 72%),
    radial-gradient(circle at 50% 66%,rgba(255,255,255,.08),rgba(255,255,255,0) 58%);
  filter:blur(24px);
}
.collection.collection-complete .big-art > *{
  position:relative;
  z-index:1;
}
.collection.collection-complete .hero-image img{
  filter:drop-shadow(0 0 10px rgba(255,238,177,.18)) drop-shadow(0 0 22px rgba(255,203,64,.18)) drop-shadow(0 18px 18px rgba(0,0,0,.26));
}
.collection.collection-complete .private-collection-hero-copy h2{
  text-shadow:0 0 18px rgba(255,221,120,.12);
}
.collection.collection-complete .private-collection-statusbar-track{
  border-color:rgba(255,231,133,.20);
  box-shadow:inset 0 1px 4px rgba(0,0,0,.34),0 0 18px rgba(255,196,64,.06);
}

@media(max-width:760px){
  .private-collection-page-completion{margin-bottom:11px;font-size:9px;padding:6px 10px}
  .collection.collection-complete .big-art::after{inset:-15%;filter:blur(20px)}
}
@media(prefers-reduced-motion:reduce){
  .collection.collection-complete .big-art,
  .collection.collection-complete .hero-image img{transition:none!important}
}


/* v232X — Compact completed collection header.
   Completed pages no longer repeat the same 100% state across multiple rows. */
.collection.collection-complete .private-collection-hero-copy [data-private-collection-summary]{
  display:inline-flex;
  width:auto;
  margin:0 8px 0 0!important;
  min-height:0;
  color:rgba(226,235,244,.82);
  white-space:nowrap;
  vertical-align:middle;
}
.collection.collection-complete .private-collection-page-completion{
  display:inline-flex;
  margin:0!important;
  vertical-align:middle;
}
.collection.collection-complete .private-collection-statusbar{
  display:none!important;
}
@media(max-width:520px){
  .collection.collection-complete .private-collection-hero-copy [data-private-collection-summary],
  .collection.collection-complete .private-collection-page-completion{
    white-space:normal;
  }
}


/* v232Z — definitive compact collection hero structure.
   Uses a dedicated inner row so the edit button never participates in layout. */
.private-collection-page .collection-hero{
  display:block!important;
  position:relative!important;
  min-height:0!important;
  padding:18px 20px!important;
}
.private-collection-page .private-collection-hero-main{
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr)!important;
  gap:18px!important;
  align-items:center!important;
  width:min(760px,calc(100% - 56px))!important;
  min-width:0!important;
}
.private-collection-page .big-art.hero-image{
  width:132px!important;
  height:132px!important;
  margin:0!important;
  align-self:center!important;
  justify-self:start!important;
  border-radius:26px!important;
}
.private-collection-page .private-collection-hero-copy{
  display:block!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
}
.private-collection-page .private-collection-title-row{
  display:block!important;
  width:auto!important;
  margin:0 0 9px!important;
}
.private-collection-page .private-collection-hero-copy h2{
  margin:0!important;
  font-size:clamp(34px,4.2vw,56px)!important;
  line-height:.92!important;
  letter-spacing:-.065em!important;
}
.private-collection-page .private-collection-hero-meta{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  flex-wrap:wrap!important;
  min-height:30px!important;
}
.private-collection-page .private-collection-hero-meta [data-private-collection-summary]{
  display:inline-flex!important;
  width:auto!important;
  margin:0!important;
  min-height:0!important;
  line-height:1.2!important;
}
.private-collection-page .private-collection-page-completion{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  margin:0!important;
  min-width:max-content!important;
  padding:7px 11px!important;
  white-space:nowrap!important;
  line-height:1!important;
}
.private-collection-page .private-collection-statusbar{
  width:min(480px,100%)!important;
  margin-top:10px!important;
}
.private-collection-page .private-collection-edit-icon{
  position:absolute!important;
  top:16px!important;
  right:16px!important;
  left:auto!important;
  margin:0!important;
  z-index:8!important;
}
.collection.collection-complete.private-collection-page .collection-hero{
  background:
    radial-gradient(circle at 82px 66px,rgba(255,224,120,.13),transparent 165px),
    linear-gradient(140deg,rgba(15,25,52,.90),rgba(13,18,34,.76))!important;
}
.collection.collection-complete.private-collection-page .private-collection-statusbar{
  display:none!important;
}

@media(max-width:760px){
  .private-collection-page .collection-hero{padding:14px 14px!important}
  .private-collection-page .private-collection-hero-main{
    grid-template-columns:86px minmax(0,1fr)!important;
    gap:12px!important;
    width:calc(100% - 48px)!important;
  }
  .private-collection-page .big-art.hero-image{
    width:86px!important;
    height:86px!important;
    border-radius:20px!important;
  }
  .private-collection-page .private-collection-hero-copy h2{
    font-size:clamp(27px,8vw,40px)!important;
  }
  .private-collection-page .private-collection-title-row{margin-bottom:7px!important}
  .private-collection-page .private-collection-hero-meta{gap:7px!important}
  .private-collection-page .private-collection-page-completion{
    padding:6px 9px!important;
    font-size:8.5px!important;
  }
  .private-collection-page .private-collection-edit-icon{
    top:10px!important;
    right:10px!important;
  }
}
/* v234Z R86 — app-icon rendering-quality correction layered onto the R84 mobile/app-cover system.
   R84 folds the R83 visual refresh into the canonical CSS delivery pipeline and adds
   a mobile quick-jump strip plus a horizontal snap launcher to reduce long phone scrolls. */

/* ===== Sleek app-cover presentation ===== */
#desktop .desktop-app-launcher-shell .universal-app-tile-art,
.public-game-art,
.game-zone-carousel-item img,
.game-zone-feature-art,
.bar-top .navlinks .universal-app-nav-btn img,
.rpg-title-emblem{
  image-rendering:auto;
}

#desktop .desktop-app-launcher-shell .universal-app-tile-art{
  max-width:152px;
  margin:0 auto 10px!important;
}

#desktop .desktop-app-launcher-shell .universal-app-tile-art img{
  width:100%!important;
  height:100%!important;
  border-radius:0!important;
  filter:none!important;
  image-rendering:auto!important;
  object-fit:contain!important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transform:none!important;
  will-change:auto!important;
}

#desktop .desktop-app-launcher-shell .tile-name{margin-top:2px}
#desktop .desktop-app-launcher-shell .tile-meta{
  min-height:2.55em;
  max-width:210px;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}

.bar-top .navlinks .universal-app-nav-btn img{
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:0;
  filter:none;
  image-rendering:auto!important;
  transform:none!important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

.public-game-art img,
.game-zone-carousel-item img,
.game-art,
.rpg-title-emblem{
  border-radius:0!important;
  image-rendering:auto!important;
  object-fit:contain;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

.public-game-art{
  border-radius:28px;
  background:radial-gradient(circle at 50% 30%,rgba(124,231,255,.11),rgba(255,255,255,.025) 68%);
}

#desktop .private-game-launchers{
  grid-template-columns:repeat(5,minmax(138px,1fr));
  gap:20px 16px;
}
#desktop .desktop-app-launcher-shell .universal-app-tile{padding:0 2px 2px!important}

/* ===== Mobile Home quick jump ===== */
.mobile-home-jump{display:none}

@media(max-width:760px){
  body.view-home .mobile-home-jump{
    position:sticky;
    top:max(66px,calc(var(--gh-device-safe-top,0px) + 58px));
    z-index:14;
    display:flex;
    align-items:center;
    gap:7px;
    width:calc(100% - 18px);
    margin:8px 9px 5px;
    padding:6px;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    border:1px solid rgba(140,232,255,.12);
    border-radius:17px;
    background:rgba(4,13,26,.82);
    box-shadow:0 12px 30px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.035);
    backdrop-filter:blur(15px);
    -webkit-backdrop-filter:blur(15px);
  }
  .mobile-home-jump::-webkit-scrollbar{display:none}
  .mobile-home-jump button{
    appearance:none;
    flex:0 0 auto;
    min-height:34px;
    padding:7px 11px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:12px;
    background:rgba(255,255,255,.045);
    color:#b9d8e2;
    font:900 9px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
    letter-spacing:.045em;
    cursor:pointer;
    scroll-snap-align:start;
  }
  .mobile-home-jump button[aria-current="true"]{
    border-color:rgba(103,232,255,.30);
    background:linear-gradient(145deg,rgba(103,232,255,.13),rgba(184,140,255,.09));
    color:#e7fbff;
  }
  .mobile-home-jump button:focus-visible{outline:2px solid rgba(103,232,255,.72);outline-offset:2px}

  /* Desktop Apps becomes one short, swipeable launcher row instead of a tall phone grid. */
  .section-head.desktop-apps-header-v227g{padding:12px 13px 8px}
  .desktop-apps-collapsible-inner-v227g{padding-bottom:2px}
  #desktop .private-game-launchers{
    display:grid!important;
    grid-template-columns:none!important;
    grid-auto-flow:column;
    grid-auto-columns:minmax(112px,31vw);
    align-items:start;
    gap:11px;
    padding:10px 10px 14px;
    overflow-x:auto;
    overflow-y:hidden;
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    touch-action:pan-x pan-y;
    -webkit-overflow-scrolling:touch;
  }
  #desktop .private-game-launchers::-webkit-scrollbar{display:none}
  #desktop .private-game-launchers > .desktop-app-launcher-shell,
  #desktop .private-game-launchers > .universal-app-tile{
    min-width:0;
    scroll-snap-align:start;
    scroll-snap-stop:normal;
  }
  #desktop .desktop-app-launcher-shell .universal-app-tile-art,
  #desktop .private-game-launchers > .universal-app-tile .universal-app-tile-art{
    max-width:104px;
    margin:0 auto 7px!important;
  }
  #desktop .desktop-app-launcher-shell .tile-name,
  #desktop .private-game-launchers > .universal-app-tile .tile-name{
    font-size:14px!important;
    line-height:1.05!important;
  }
  #desktop .desktop-app-launcher-shell .tile-meta,
  #desktop .private-game-launchers > .universal-app-tile .tile-meta{
    max-width:125px;
    min-height:0!important;
    margin-top:4px!important;
    font-size:8px!important;
    line-height:1.2!important;
    -webkit-line-clamp:1;
  }
  #desktop .desktop-app-runtime-controls{margin-top:6px!important}

  /* Keep major Home sections tighter without changing their functionality. */
  .private-collection-section-head,
  .private-price-hero{padding-left:14px!important;padding-right:14px!important}
  .private-collection-section-head h2,
  .private-price-hero h2{font-size:24px!important}
  .private-price-page>.private-price-refresh-status,
  .private-price-dashboard-toolbar,
  .private-price-card-grid,
  .private-price-table-panel,
  .private-price-empty{margin-left:10px!important;margin-right:10px!important}

  /* When Analytics is collapsed, keep the summary header extremely compact. */
  .private-analytics.is-collapsed-v227f .private-analytics-header-v194a{min-height:58px!important;padding-top:10px!important;padding-bottom:10px!important}
}

@media(max-width:560px){
  #desktop .private-game-launchers{grid-auto-columns:minmax(104px,34vw);gap:9px;padding-inline:8px}
  #desktop .desktop-app-launcher-shell .universal-app-tile-art,
  #desktop .private-game-launchers > .universal-app-tile .universal-app-tile-art{max-width:94px}
  #desktop .desktop-app-launcher-shell .tile-name,
  #desktop .private-game-launchers > .universal-app-tile .tile-name{font-size:13px!important}
  .private-price-dashboard-toolbar{top:68px!important}
}

@media(max-width:430px){
  #desktop .private-game-launchers{grid-auto-columns:minmax(108px,40vw)}
  #desktop .desktop-app-launcher-shell .universal-app-tile-art,
  #desktop .private-game-launchers > .universal-app-tile .universal-app-tile-art{max-width:98px}
  #desktop .desktop-app-launcher-shell .tile-meta,
  #desktop .private-game-launchers > .universal-app-tile .tile-meta{display:none!important}
  .mobile-home-jump{gap:5px!important;padding:5px!important}
  .mobile-home-jump button{min-height:32px;padding:7px 10px}
}

@media(prefers-reduced-motion:reduce){
  .mobile-home-jump{scroll-behavior:auto}
}

/* R86: the generated PNGs already carry their own alpha-rounded silhouette.
   Do not clip, re-filter, or fractionally scale the raster again in CSS. */
@media (hover:hover) and (pointer:fine){
  #desktop .desktop-app-launcher-shell .universal-app-tile:hover .universal-app-tile-art{
    transform:translateY(-5px)!important;
  }
  #desktop .desktop-app-launcher-shell .universal-app-tile:hover .universal-app-tile-art img{
    filter:none!important;
    transform:none!important;
  }
}

.public-game-art img,
.game-zone-carousel-item img,
.game-art,
.rpg-title-emblem,
.bar-top .navlinks .universal-app-nav-btn img,
#desktop .desktop-app-launcher-shell .universal-app-tile-art img{
  -ms-interpolation-mode:bicubic;
}
