/*
 * Gamers & Collectors
 * gc-performance-v2.css
 * PERFORMANCE V3.3 — HOME COMPACT LOADING
 *
 * Mobile-first perceived performance + Settings density.
 */

/******************************************************
 * Destination snapshot
 ******************************************************/

.gcFastRouteSnapshot{
  position:fixed;
  inset:0;
  z-index:2147483000;
  overflow:auto;
  overscroll-behavior:none;
  pointer-events:none;
  visibility:visible !important;
  opacity:1;
  background:
    radial-gradient(circle at 12% 4%,rgba(28,129,145,.18),transparent 34%),
    radial-gradient(circle at 90% 90%,rgba(92,61,180,.13),transparent 36%),
    #061116;
  transition:opacity .16s ease;
}

.gcFastSnapshotContent{min-height:100%;}

.gcFastSnapshotStatus{
  position:fixed;
  top:max(9px,env(safe-area-inset-top));
  right:10px;
  z-index:2;
  min-height:27px;
  display:inline-flex;
  align-items:center;
  padding:4px 9px;
  border:1px solid rgba(91,226,237,.18);
  border-radius:999px;
  background:rgba(5,20,26,.84);
  color:#89dfe7;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  font-size:9px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.gcFastSnapshotDone{opacity:0;}

/******************************************************
 * Profile
 ******************************************************/

.gcFastRoute-profile #profileLoadingState{
  min-height:min(58vh,520px);
}

.gcFastRoute-profile #profileLoadingState .gcProfileLoadingInner{
  min-height:0;
}

.gcFastProfilePainted #profileLoadingState{
  display:none !important;
}

.gcFastProfileRefreshing #profileContent::before{
  content:"Updating profile";
  position:fixed;
  top:calc(env(safe-area-inset-top) + 52px);
  left:50%;
  z-index:78;
  min-height:23px;
  display:inline-flex;
  align-items:center;
  padding:3px 9px;
  border:1px solid rgba(74,218,231,.15);
  border-radius:999px;
  background:rgba(6,20,26,.78);
  color:#73dce6;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  font-size:8px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
  transform:translateX(-50%);
  pointer-events:none;
}

.gcFastLibraryRefreshing{position:relative;}

.gcFastLibraryRefreshing::before{
  content:"Refreshing collection…";
  position:sticky;
  top:0;
  z-index:4;
  display:block;
  width:max-content;
  max-width:100%;
  margin:0 0 8px auto;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(11,32,39,.90);
  color:#71dbe5;
  font-size:9px;
  font-weight:850;
  letter-spacing:.04em;
}

/******************************************************
 * Game picker — never wipe usable results while typing
 ******************************************************/

#gameSearchResults.gcFastSearchRefreshing{
  position:relative;
  min-height:96px;
  opacity:.82;
  transition:opacity .14s ease;
}

#gameSearchResults.gcFastSearchRefreshing::before{
  content:"Searching…";
  position:sticky;
  top:0;
  z-index:5;
  display:flex;
  width:max-content;
  margin:0 8px 8px auto;
  padding:4px 8px;
  border:1px solid rgba(72,221,234,.16);
  border-radius:999px;
  background:rgba(7,24,30,.92);
  color:#77dce5;
  font-size:9px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}

#gameSearch.gcFastSearchInputBusy{
  background-image:linear-gradient(90deg,transparent,rgba(96,222,234,.06),transparent);
  background-size:200% 100%;
  animation:gcFastSearchSweep 1.1s linear infinite;
}

@keyframes gcFastSearchSweep{
  to{background-position:-200% 0;}
}

/******************************************************
 * Settings — show the real structure immediately
 * No private values are cached by this package.
 ******************************************************/

.gcFastSettingsBoot #settingsLoadingState{
  visibility:hidden !important;
  height:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border:0 !important;
}

.gcFastSettingsBoot #settingsContent[hidden]{
  display:block !important;
}

.gcFastSettingsBoot #settingsContent{
  position:relative;
  pointer-events:none;
  user-select:none;
}

.gcFastSettingsBoot #settingsContent::after{
  content:"Refreshing your settings…";
  position:fixed;
  top:max(9px,env(safe-area-inset-top));
  right:10px;
  z-index:90;
  min-height:27px;
  display:inline-flex;
  align-items:center;
  padding:4px 9px;
  border:1px solid rgba(88,224,236,.17);
  border-radius:999px;
  background:rgba(6,20,26,.88);
  color:#7fe0e9;
  font-size:9px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.gcFastSettingsBoot #settingsContent input,
.gcFastSettingsBoot #settingsContent textarea,
.gcFastSettingsBoot #settingsContent select{
  color:transparent !important;
  text-shadow:none !important;
  caret-color:transparent !important;
}

.gcFastSettingsBoot #settingsContent input::placeholder,
.gcFastSettingsBoot #settingsContent textarea::placeholder{
  color:transparent !important;
}

.gcFastSettingsBoot .gcSettingsCard,
.gcFastSettingsBoot .gcAccountSecurityCard,
.gcFastSettingsBoot .gcSettingsReferralCard{
  overflow:hidden;
  background-image:linear-gradient(105deg,transparent 0%,transparent 38%,rgba(95,226,238,.035) 48%,transparent 58%,transparent 100%);
  background-size:220% 100%;
  animation:gcFastSettingsSkeleton 1.45s linear infinite;
}

@keyframes gcFastSettingsSkeleton{
  to{background-position:-220% 0;}
}

/******************************************************
 * SETTINGS — dedicated phone composition
 ******************************************************/

@media(max-width:620px){

  .gcSettingsPage{
    padding:max(9px,env(safe-area-inset-top)) 0 max(92px,calc(74px + env(safe-area-inset-bottom))) !important;
  }

  .gcSettingsShell{
    width:calc(100% - 12px) !important;
    max-width:none !important;
  }

  .gcSettingsHeader{
    align-items:center !important;
    gap:10px !important;
    margin:2px 2px 12px !important;
  }

  .gcSettingsBack{
    width:40px !important;
    height:40px !important;
    flex-basis:40px !important;
    border-radius:13px !important;
  }

  .gcSettingsEyebrow{
    font-size:9px !important;
    letter-spacing:.13em !important;
  }

  .gcSettingsTitle{
    margin-top:4px !important;
    font-size:30px !important;
    line-height:1.02 !important;
  }

  .gcSettingsSubtitle{
    margin-top:7px !important;
    font-size:12px !important;
    line-height:1.42 !important;
  }

  .gcSettingsGrid{gap:9px !important;}

  .gcSettingsCard,
  .gcAccountSecurityCard,
  .gcSettingsReferralCard{
    padding:13px !important;
    border-radius:17px !important;
    box-shadow:0 12px 28px rgba(0,0,0,.15) !important;
  }

  .gcSettingsSectionHeader,
  .gcSettingsReferralHeader{
    gap:9px !important;
    margin-bottom:11px !important;
  }

  .gcSettingsSectionHeader h2,
  .gcAccountSecuritySectionHead h3{
    font-size:17px !important;
    line-height:1.15 !important;
  }

  .gcSettingsSectionHeader p,
  .gcSettingsReferralHeader p,
  .gcAccountSecurityHelp{
    margin-top:4px !important;
    font-size:11px !important;
    line-height:1.4 !important;
  }

  .gcSettingsIdentity{
    grid-template-columns:52px minmax(0,1fr) !important;
    gap:10px !important;
  }

  .gcSettingsIdentityAvatar{
    width:52px !important;
    height:52px !important;
    border-radius:16px !important;
  }

  .gcSettingsIdentityName{font-size:17px !important;}

  .gcSettingsIdentityMeta{
    margin-top:3px !important;
    font-size:11px !important;
  }

  .gcSettingsSlug{
    margin-top:6px !important;
    padding:5px 8px !important;
    font-size:10px !important;
  }

  .gcSettingsAvatarGrid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:7px !important;
  }

  .gcSettingsAvatarOption{
    min-height:100px !important;
    gap:6px !important;
    padding:8px 5px !important;
    border-radius:14px !important;
  }

  .gcSettingsAvatarImage{
    width:50px !important;
    height:50px !important;
  }

  .gcSettingsAvatarName{font-size:10px !important;}

  .gcSettingsRows{border-radius:14px !important;}

  .gcSettingsRow{
    min-height:54px !important;
    gap:10px !important;
    padding:9px 10px !important;
  }

  .gcSettingsRowTitle{font-size:12px !important;}

  .gcSettingsRowDescription{
    margin-top:2px !important;
    font-size:9.5px !important;
    line-height:1.33 !important;
  }

  .gcSettingsSwitch{
    width:44px !important;
    height:26px !important;
    flex-basis:44px !important;
  }

  .gcSettingsSwitchTrack::after{
    width:20px !important;
    height:20px !important;
  }

  .gcSettingsSwitch input:checked + .gcSettingsSwitchTrack::after{
    transform:translateX(18px) !important;
  }

  .gcSettingsFieldGrid,
  .gcAccountSecurityTwo{
    grid-template-columns:1fr !important;
    gap:9px !important;
  }

  .gcSettingsField{gap:5px !important;}

  .gcSettingsFieldLabel,
  .gcAccountSecurityMiniLabel{font-size:10.5px !important;}

  .gcSettingsField small{
    min-height:0 !important;
    font-size:9px !important;
  }

  .gcSettingsInput,
  .gcSettingsTextarea,
  .gcSettingsSelect,
  .gcAccountSecurityInput{
    min-height:46px !important;
    border-radius:13px !important;
    font-size:16px !important;
  }

  .gcSettingsTextarea{
    min-height:82px !important;
    padding:10px !important;
  }

  .gcSettingsLanding{margin-top:10px !important;}

  .gcSettingsLanding label{
    margin-bottom:6px !important;
    font-size:9px !important;
  }

  .gcSettingsPrivateActions,
  .gcSettingsReferralActions,
  .gcAccountSecurityActions{margin-top:11px !important;}

  .gcSettingsActionButton,
  .gcSettingsPrivateSaveButton,
  .gcAccountSecurityButton{
    width:100% !important;
    min-width:0 !important;
    min-height:46px !important;
    padding:0 13px !important;
    border-radius:13px !important;
  }

  .gcSettingsReferralLinkRow{
    grid-template-columns:1fr auto !important;
    gap:6px !important;
  }

  .gcSettingsReferralLink{
    min-width:0 !important;
    font-size:11px !important;
  }

  .gcSettingsReferralCopy{min-width:66px !important;}

  .gcAccountSecuritySection{padding:11px 0 !important;}
  .gcAccountSecuritySummary{gap:7px !important;}

  .gcAccountSecurityEmail{
    font-size:12px !important;
    overflow-wrap:anywhere !important;
  }

  .gcAccountSecurityCard{
    margin-bottom:calc(84px + env(safe-area-inset-bottom)) !important;
  }

  .gcSettingsSaveDock{
    bottom:max(6px,env(safe-area-inset-bottom)) !important;
    margin-top:10px !important;
    padding:7px !important;
    border-radius:15px !important;
    box-shadow:0 12px 30px rgba(0,0,0,.30) !important;
  }

  .gcSettingsSaveButton{
    width:100% !important;
    min-width:0 !important;
    min-height:46px !important;
    border-radius:12px !important;
  }

  .gcSettingsMessage{
    margin-bottom:6px !important;
    padding:8px 9px !important;
    font-size:10px !important;
  }

}

/******************************************************
 * Profile game picker — phone density
 ******************************************************/

@media(max-width:620px){

  #gamePickerModal .gamePickerPanel,
  #gamePickerModal .gamePickerDialog,
  #profileLibraryModal .gcProfileLibraryPanel{
    width:100% !important;
    max-width:none !important;
    max-height:calc(100dvh - env(safe-area-inset-top)) !important;
    border-radius:18px 18px 0 0 !important;
  }

  #gamePickerModal .gamePickerHeader,
  #profileLibraryModal .gcProfileLibraryHeader{
    padding:12px 12px 9px !important;
  }

  #gamePickerModal .gamePickerBody{
    gap:8px !important;
    padding:8px 10px !important;
  }

  #gamePickerModal .gameSearchCard{min-height:62px !important;}

  #gamePickerModal .gameCover{
    width:40px !important;
    height:56px !important;
    object-fit:contain !important;
  }

}

/******************************************************
 * Long pages — reduce work below viewport
 ******************************************************/

.gcFastRoute-home main > section,
.gcFastRoute-profile main > section,
.gcFastRoute-settings main > section{
  content-visibility:auto;
  contain-intrinsic-size:auto 320px;
}

@media(prefers-reduced-motion:reduce){
  #gameSearch.gcFastSearchInputBusy,
  .gcFastSettingsBoot .gcSettingsCard,
  .gcFastSettingsBoot .gcAccountSecurityCard,
  .gcFastSettingsBoot .gcSettingsReferralCard{
    animation:none !important;
  }

  .gcFastRouteSnapshot{transition:none !important;}
}


/******************************************************
 * Performance V2 — Games / Members hydration
 ******************************************************/

.gcPerfV2Refreshing.gcFastRoute-games
.gamesHubPage::after,
.gcPerfV2Refreshing.gcFastRoute-members
.gcMembersPage::after{
  content:"Refreshing";
  position:fixed;
  top:max(9px,env(safe-area-inset-top));
  right:10px;
  z-index:120;
  min-height:25px;
  display:inline-flex;
  align-items:center;
  padding:3px 8px;
  border:1px solid rgba(75,220,232,.17);
  border-radius:999px;
  background:rgba(5,19,25,.88);
  color:#79dce6;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  pointer-events:none;
}

.gcPerfV2GamesPainted
.featuredSkeleton,
.gcPerfV2GamesPainted
.skeletonLine{
  animation:none !important;
}

.gcPerfV2MembersPainted
#membersLoadingState{
  display:none !important;
}

@media(max-width:620px){

  .gcMembersPageShell{
    padding-top:max(9px,env(safe-area-inset-top)) !important;
  }

  .gcMembersContainer{
    width:calc(100% - 12px) !important;
  }

  .gcMembersHero{
    padding:18px 14px !important;
    border-radius:20px !important;
  }

  .gcMembersTitle{
    font-size:38px !important;
  }

  .gcMembersIntro{
    margin-top:10px !important;
    font-size:12px !important;
    line-height:1.45 !important;
  }

  .gcMembersStats{
    gap:6px !important;
    margin-top:15px !important;
  }

  .gcMembersStat{
    min-height:60px !important;
    padding:10px 8px !important;
    border-radius:13px !important;
  }

  .gcMembersStat strong{
    font-size:19px !important;
  }

  .gcMembersToolbar{
    top:4px !important;
    gap:7px !important;
    margin:10px 0 9px !important;
    padding:7px !important;
    border-radius:16px !important;
  }

  .gcMembersSearch{
    height:44px !important;
    border-radius:12px !important;
  }

  .gcMembersClearFilters{
    min-height:44px !important;
    padding:0 10px !important;
    border-radius:12px !important;
  }

  .gcMembersFilterGrid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:6px !important;
  }

  .gcMembersFilter{
    height:42px !important;
    border-radius:12px !important;
  }

  .gcMembersGrid{
    grid-template-columns:1fr !important;
    gap:9px !important;
  }

  .gcMemberHubCard{
    min-height:0 !important;
    padding:13px !important;
    border-radius:18px !important;
  }

}


/******************************************************
 * Home privacy-safe visual snapshot placeholder
 ******************************************************/

.gcFastHomeActivityPlaceholder{
  margin-top:18px;
  padding:18px;
  border:1px solid rgba(101,228,241,.10);
  border-radius:20px;
  background:rgba(13,29,37,.76);
}

.gcFastHomeActivityPlaceholderEyebrow{
  color:#68dce7;
  font-size:9px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.gcFastHomeActivityPlaceholderTitle{
  margin-top:5px;
  color:#edf9fc;
  font-size:20px;
  font-weight:900;
}

.gcFastHomeActivityPlaceholderLine{
  height:10px;
  margin-top:14px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
}

.gcFastHomeActivityPlaceholderLine.isShort{
  width:62%;
  margin-top:8px;
}

/******************************************************
 * PERFORMANCE V3 — local data / provisional paint
 ******************************************************/

.gcLocalCatalogueReady .gcBrowseV3Header::before{
  content:"";
  width:7px;
  height:7px;
  margin-right:7px;
  flex:0 0 auto;
  border-radius:50%;
  background:#53D99E;
  box-shadow:0 0 0 4px rgba(83,217,158,.08),0 0 14px rgba(83,217,158,.28);
}

.gcPerfV3MembersRefreshing #membersResultMeta::after{
  content:" · refreshing";
  color:#6f9ba4;
}

/******************************************************
 * Profile provisional hero
 ******************************************************/

.gcV3ProfilePreviewPainted #profileLoadingState{
  min-height:0 !important;
  display:block !important;
  padding:0 !important;
}

.gcV3ProfilePreview{
  width:min(760px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:86px minmax(0,1fr) 16px;
  align-items:center;
  gap:16px;
  padding:18px;
  border:1px solid rgba(90,225,236,.16);
  border-radius:24px;
  background:
    radial-gradient(circle at 10% 0%,rgba(43,200,216,.16),transparent 38%),
    linear-gradient(145deg,rgba(13,30,39,.98),rgba(7,16,22,.98));
  box-shadow:0 22px 60px rgba(0,0,0,.32);
}

.gcV3ProfilePreviewAvatar{
  width:86px;
  height:86px;
  display:grid;
  place-items:center;
  object-fit:cover;
  border:1px solid rgba(109,229,238,.20);
  border-radius:24px;
  background:#0b1a21;
  color:#7ce5ed;
  font-size:13px;
  font-weight:950;
}

.gcV3ProfilePreviewCopy{min-width:0;display:flex;flex-direction:column;gap:4px}
.gcV3ProfilePreviewEyebrow{color:#74DDE6;font-size:9px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.gcV3ProfilePreviewName{overflow:hidden;color:#F7FBFC;font-size:22px;font-weight:950;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}
.gcV3ProfilePreviewHandle{color:#8097A2;font-size:11px;font-weight:750}
.gcV3ProfilePreviewMeta{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}
.gcV3ProfilePreviewMeta span{padding:5px 8px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.04);color:#B9CAD1;font-size:9px;font-weight:850}
.gcV3ProfilePreviewPulse{width:10px;height:10px;border-radius:50%;background:#63DCE7;box-shadow:0 0 0 0 rgba(99,220,231,.35);animation:gcV3Pulse 1.5s infinite}

@keyframes gcV3Pulse{
  0%{box-shadow:0 0 0 0 rgba(99,220,231,.36)}
  70%{box-shadow:0 0 0 9px rgba(99,220,231,0)}
  100%{box-shadow:0 0 0 0 rgba(99,220,231,0)}
}

/******************************************************
 * Game provisional hero
 ******************************************************/

.gcV3GamePreview{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:20px;
  align-items:center;
  min-height:210px;
  padding:18px;
  border-radius:20px;
  background:
    radial-gradient(circle at 0 0,rgba(34,192,208,.15),transparent 38%),
    linear-gradient(145deg,rgba(13,28,36,.97),rgba(7,15,20,.98));
}

.gcV3GamePreviewCoverShell{
  width:150px;
  aspect-ratio:3/4;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.09);
  border-radius:17px;
  background:radial-gradient(circle at 50% 25%,rgba(55,169,184,.16),rgba(7,15,20,.95) 65%);
  box-shadow:0 15px 35px rgba(0,0,0,.30);
}

.gcV3GamePreviewCover{width:100%;height:100%;object-fit:contain}
.gcV3GamePreviewCover.isFallback{display:grid;place-items:center;color:#6DDCE6;font-weight:950}
.gcV3GamePreviewInfo{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.gcV3GamePreviewEyebrow{margin-bottom:6px;color:#6EDCE6;font-size:9px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.gcV3GamePreviewInfo h1{margin:0;color:#F8FCFD;font-size:clamp(25px,5vw,42px);line-height:1.04;letter-spacing:-.035em}
.gcV3GamePreviewDeveloper{margin-top:7px;color:#9AB0BA;font-size:12px;font-weight:750}
.gcV3GamePreviewMeta{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
.gcV3GamePreviewMeta span{padding:6px 9px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.04);color:#C0D0D6;font-size:9px;font-weight:800}
.gcV3GamePreviewLoading{display:flex;align-items:center;gap:7px;margin-top:15px;color:#6F8994;font-size:9px;font-weight:850;letter-spacing:.04em}
.gcV3GamePreviewLoading span{width:7px;height:7px;border-radius:50%;background:#55D7E3;animation:gcV3Pulse 1.5s infinite}


/******************************************************
 * Game opening transition — no half-rendered shell
 ******************************************************/

.gcV4GameOpening #gameHeaderCard,
.gcV4GameOpening #gameTabs,
.gcV4GameOpening #gameContent{
  visibility:hidden !important;
}

.gcV4GameOpeningCard{
  width:100%;
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  gap:16px;
  align-items:center;
  min-height:158px;
  margin:0 0 12px;
  padding:15px;
  overflow:hidden;
  border:1px solid rgba(102,222,234,.13);
  border-radius:23px;
  background:
    radial-gradient(circle at 0 0,rgba(42,189,204,.16),transparent 38%),
    linear-gradient(145deg,rgba(16,34,42,.98),rgba(7,18,24,.99));
  box-shadow:0 20px 55px rgba(0,0,0,.28);
  opacity:1;
  transition:opacity .16s ease;
}

.gcV4GameOpeningCard.isDone{
  opacity:0;
}

.gcV4GameOpeningCover{
  width:112px;
  aspect-ratio:3/4;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  border-radius:15px;
  background:#09171d;
}

.gcV4GameOpeningCover img{
  width:100%;
  height:100%;
  object-fit:contain;
}

.gcV4GameOpeningFallback{
  color:#6edce7;
  font-size:14px;
  font-weight:950;
  letter-spacing:.08em;
}

.gcV4GameOpeningCopy{
  min-width:0;
}

.gcV4GameOpeningEyebrow{
  margin-bottom:6px;
  color:#6edce7;
  font-size:8px;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.gcV4GameOpeningCopy h1{
  margin:0;
  color:#f7fbfc;
  font-size:22px;
  line-height:1.05;
  letter-spacing:-.03em;
}

.gcV4GameOpeningDeveloper{
  margin-top:7px;
  color:#a2b6bf;
  font-size:11px;
  font-weight:750;
}

.gcV4GameOpeningMeta{
  margin-top:6px;
  color:#748e99;
  font-size:9px;
  font-weight:800;
}

.gcV4GameOpeningProgress{
  height:3px;
  margin-top:14px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.06);
}

.gcV4GameOpeningProgress span{
  display:block;
  width:42%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#43d4e2,#8b6df0);
  animation:gcV4GameOpeningProgress 1.25s ease-in-out infinite alternate;
}

@keyframes gcV4GameOpeningProgress{
  from{transform:translateX(-30%)}
  to{transform:translateX(170%)}
}

.gcFastRoute-home .gcHomeActivityState:not([hidden]){
  min-height:88px !important;
  padding:14px 16px !important;
}

.gcFastRoute-home .gcHomeActivityState:not([hidden]) img{
  width:42px !important;
  height:42px !important;
}

@media(max-width:700px){
  .gcV4GameOpeningCard{
    grid-template-columns:88px minmax(0,1fr);
    gap:13px;
    min-height:132px;
    padding:13px;
    border-radius:19px;
  }

  .gcV4GameOpeningCover{
    width:88px;
    border-radius:13px;
  }

  .gcV4GameOpeningCopy h1{
    font-size:20px;
  }
}

/******************************************************
 * Settings — mobile native accordion
 ******************************************************/

@media(max-width:700px){
  .gcSettingsPage .gcSettingsGrid{
    gap:10px !important;
  }

  .gcSettingsPage .gcV3SettingsAccordion{
    overflow:hidden;
    border-radius:19px !important;
    transition:border-color .16s ease,background .16s ease;
  }

  .gcSettingsPage .gcV3SettingsAccordion > .gcSettingsSectionHeader{
    position:relative;
    min-height:58px;
    margin:0 !important;
    padding-right:42px !important;
    cursor:pointer;
  }

  .gcSettingsPage .gcV3SettingsAccordionToggle{
    position:absolute;
    top:50%;
    right:4px;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid rgba(255,255,255,.08);
    border-radius:12px;
    background:rgba(255,255,255,.035);
    transform:translateY(-50%);
    color:#8AA2AD;
  }

  .gcSettingsPage .gcV3SettingsAccordionToggle span{
    width:8px;
    height:8px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg) translate(-1px,-1px);
    transition:transform .16s ease;
  }

  .gcSettingsPage .gcV3SettingsAccordion.isCollapsed .gcV3SettingsAccordionToggle span{
    transform:rotate(-45deg) translate(-1px,1px);
  }

  .gcSettingsPage .gcV3SettingsAccordion.isCollapsed > :not(.gcSettingsSectionHeader){
    display:none !important;
  }

  .gcSettingsPage .gcV3SettingsAccordion.isCollapsed{
    padding-bottom:0 !important;
    background:linear-gradient(145deg,rgba(13,29,37,.95),rgba(8,17,23,.96)) !important;
  }

  .gcSettingsPage .gcSettingsSectionHeader .gcSettingsSectionLabel{
    font-size:13px !important;
  }

  .gcSettingsPage .gcSettingsSectionHeader p,
  .gcSettingsPage .gcSettingsSectionHeader .gcSettingsSectionDescription{
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    font-size:9px !important;
    line-height:1.35 !important;
  }

  .gcV3ProfilePreview{
    grid-template-columns:68px minmax(0,1fr) 12px;
    gap:12px;
    padding:14px;
    border-radius:20px;
  }
  .gcV3ProfilePreviewAvatar{width:68px;height:68px;border-radius:19px}
  .gcV3ProfilePreviewName{font-size:18px}

  .gcV3GamePreview{
    grid-template-columns:94px minmax(0,1fr);
    min-height:155px;
    gap:13px;
    padding:13px;
  }
  .gcV3GamePreviewCoverShell{width:94px;border-radius:14px}
  .gcV3GamePreviewInfo h1{font-size:22px}
  .gcV3GamePreviewMeta{margin-top:9px}
}

@media(prefers-reduced-motion:reduce){
  .gcV3ProfilePreviewPulse,
  .gcV3GamePreviewLoading span{animation:none !important}
}


/******************************************************
 * Home V6 — one subtle loader, not a wall of Korma
 ******************************************************/

.gcFastRoute-home .gcHomeV6CompactLoading{
  min-height:54px !important;
  display:flex !important;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  padding:12px 14px !important;
  border:1px solid rgba(100,222,233,.09);
  border-radius:15px;
  background:
    linear-gradient(
      135deg,
      rgba(15,36,44,.70),
      rgba(7,20,27,.76)
    );
  color:#8399a3;
  font-size:10px;
  font-weight:800;
  letter-spacing:.02em;
  text-align:left;
}

.gcFastRoute-home .gcHomeV6CompactLoading img,
.gcFastRoute-home .gcHomeV6CompactLoading svg{
  display:none !important;
}

.gcFastRoute-home .gcHomeV6Pulse{
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-radius:999px;
  background:#55d8e5;
  box-shadow:
    0 0 0 0 rgba(85,216,229,.38);
  animation:
    gcHomeV6Pulse 1.25s ease-out infinite;
}

@keyframes gcHomeV6Pulse{
  0%{
    box-shadow:
      0 0 0 0 rgba(85,216,229,.38);
    opacity:1;
  }

  70%{
    box-shadow:
      0 0 0 8px rgba(85,216,229,0);
    opacity:.72;
  }

  100%{
    box-shadow:
      0 0 0 0 rgba(85,216,229,0);
    opacity:1;
  }
}