/* PokéLocke v15.40 — native shared app shell, detached from legacy v11-nav */
:root{
  --v1540-deep:#073255;
  --v1540-deep-2:#0b466f;
  --v1540-line:rgba(116,191,238,.65);
  --v1540-shadow:0 22px 44px rgba(4,29,51,.20);
  --v1540-card:rgba(247,251,255,.88);
  --v1540-card-strong:rgba(247,251,255,.94);
}

html{background:#083454}
body.v1539-app-page{
  position:relative;
  min-height:100vh;
  margin:0;
  overflow-x:hidden;
  background-color:#0b416c !important;
  background-image:
    linear-gradient(180deg,rgba(4,31,53,.22) 0%,rgba(4,31,53,.06) 24%,rgba(4,31,53,.08) 70%,rgba(4,31,53,.36) 100%),
    var(--v1540-page-bg) !important;
  background-size:cover !important;
  background-position:center top !important;
  background-repeat:no-repeat !important;
  background-attachment:fixed !important;
}
body.v1539-theme-play{--v1540-page-bg:url('../ui/page-backgrounds/play-bg.png')}
body.v1539-theme-leaderboard{--v1540-page-bg:url('../ui/page-backgrounds/leaderboard-bg.png')}
body.v1539-theme-community{--v1540-page-bg:url('../ui/page-backgrounds/community-bg.png')}
body.v1539-theme-saves{--v1540-page-bg:url('../ui/page-backgrounds/saves-bg.png')}

/* Disable legacy page/background decorations that otherwise cover the new scenes. */
body.v1539-app-page::before,
body.v1539-app-page::after{display:none !important;content:none !important}

/* Header: same visual language as the final login page, without any v11-nav inheritance. */
.v1539-topbar{
  position:relative;
  z-index:50;
  width:100%;
  padding:16px 24px 0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.v1539-topbar .v1535-topbar-inner{
  width:min(1400px,calc(100% - 0px)) !important;
  min-height:84px !important;
  margin:0 auto !important;
  padding:7px 18px !important;
  display:grid !important;
  grid-template-columns:232px minmax(510px,1fr) auto !important;
  align-items:center !important;
  gap:18px !important;
  border:1.5px solid rgba(103,193,250,.70) !important;
  border-radius:25px !important;
  background:linear-gradient(180deg,rgba(7,61,103,.95),rgba(6,45,77,.98)) !important;
  box-shadow:0 18px 44px rgba(3,24,44,.24),inset 0 1px 0 rgba(255,255,255,.10) !important;
  backdrop-filter:blur(14px) !important;
}
.v1539-topbar .v1535-brand{
  position:relative !important;
  display:block !important;
  width:218px !important;
  height:62px !important;
  padding:0 !important;
  text-decoration:none !important;
}
.v1539-topbar .v1535-brand>img{
  position:absolute !important;
  left:1px !important;
  top:-9px !important;
  width:154px !important;
  height:88px !important;
  object-fit:contain !important;
  filter:drop-shadow(0 7px 10px rgba(0,0,0,.28)) !important;
}
.v1539-topbar .v1535-alpha{
  position:absolute !important;
  left:145px !important;
  top:2px !important;
  padding:4px 10px !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#ff664b,#e23d3e) !important;
  color:#fff !important;
  font-size:9px !important;
  font-weight:950 !important;
  line-height:1 !important;
  letter-spacing:.04em !important;
}
.v1539-topbar .v1535-brand small{
  position:absolute !important;
  left:3px !important;
  bottom:-7px !important;
  color:#d7ebfb !important;
  font-size:8.5px !important;
  font-weight:850 !important;
  line-height:1 !important;
  letter-spacing:.105em !important;
  white-space:nowrap !important;
}

.v1539-topbar .v1535-mainnav{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  min-width:0 !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  position:static !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.v1539-topbar .v1535-mainnav a{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  min-width:auto !important;
  min-height:46px !important;
  height:46px !important;
  padding:0 13px !important;
  margin:0 !important;
  border:0 !important;
  border-radius:16px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#f3faff !important;
  font:850 14px/1 Inter,"Segoe UI",system-ui,sans-serif !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}
.v1539-topbar .v1535-mainnav a::before,
.v1539-topbar .v1535-mainnav a::after{display:none !important;content:none !important}
.v1539-topbar .v1535-mainnav a img{
  display:block !important;
  width:20px !important;
  height:20px !important;
  object-fit:contain !important;
  flex:0 0 20px !important;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.18)) !important;
}
.v1539-topbar .v1535-mainnav a:hover{background:rgba(255,255,255,.10) !important}
.v1539-topbar .v1535-mainnav a.is-active,
.v1539-topbar .v1535-mainnav a[aria-current="page"]{
  background:linear-gradient(180deg,#ffdc4d,#f5c817) !important;
  color:#163b61 !important;
  box-shadow:0 5px 0 #c28d04,0 11px 20px rgba(94,66,4,.18) !important;
}
.v1539-topbar .v1535-mainnav a.is-active img,
.v1539-topbar .v1535-mainnav a[aria-current="page"] img{filter:brightness(.48) saturate(1.25) !important}

/* Logged-in account cluster created by navigation-v11.js. */
.v1539-topbar .v149-account-cluster{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  justify-self:end !important;
  gap:8px !important;
  min-width:0 !important;
  white-space:nowrap !important;
}
.v1539-topbar .v149-account-cluster>.v11-account-link,
.v1539-topbar .v1539-nav-profile{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:9px !important;
  min-width:130px !important;
  min-height:46px !important;
  height:46px !important;
  padding:0 13px !important;
  border:1.4px solid rgba(141,209,252,.82) !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,#2b89e9,#1963b9) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 18px rgba(5,32,58,.20) !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:0 !important;
}
.v1539-topbar .v149-nav-user-icon{
  display:grid !important;
  place-items:center !important;
  width:28px !important;
  height:28px !important;
  flex:0 0 28px !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.18) !important;
  color:#fff !important;
  font-size:14px !important;
}
.v1539-topbar .v149-account-cluster>.v11-account-link b{
  display:block !important;
  margin:0 !important;
  color:#fff !important;
  font:850 13px/1.05 Inter,"Segoe UI",system-ui,sans-serif !important;
}
.v1539-topbar .v149-account-cluster>.v11-account-link small{
  display:block !important;
  margin:0 0 0 auto !important;
  color:#dceeff !important;
  font:800 8px/1 Inter,"Segoe UI",system-ui,sans-serif !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
}
.v1539-topbar .v149-session-actions{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
}
.v1539-topbar .v149-nav-action{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  min-width:92px !important;
  min-height:46px !important;
  height:46px !important;
  padding:0 13px !important;
  margin:0 !important;
  border:1.4px solid rgba(156,204,236,.48) !important;
  border-radius:16px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 8px 18px rgba(5,32,58,.18) !important;
  color:#fff !important;
  font:850 13px/1 Inter,"Segoe UI",system-ui,sans-serif !important;
  text-decoration:none !important;
}
.v1539-topbar .v149-nav-action span{color:inherit !important;font-size:14px !important}
.v1539-topbar .v149-nav-action b{color:inherit !important;font:inherit !important}
.v1539-topbar .v149-nav-action.is-admin{background:linear-gradient(180deg,#b98a17,#8d6712) !important;border-color:rgba(255,218,113,.72) !important}
.v1539-topbar .v149-nav-action.is-logout{background:linear-gradient(180deg,#dc5352,#b63a3e) !important;border-color:rgba(255,174,174,.72) !important}
.v1539-topbar .v149-nav-action:hover,
.v1539-topbar .v149-account-cluster>.v11-account-link:hover{transform:translateY(-1px) !important;filter:brightness(1.05) !important}

/* Page body/content. Keep original functionality, make the new scene visible around and through cards. */
body.v1539-app-page main.shell{
  position:relative !important;
  z-index:2 !important;
  width:min(1400px,calc(100% - 48px)) !important;
  margin:0 auto !important;
  padding-top:26px !important;
  padding-bottom:30px !important;
  background:transparent !important;
}
body.v1539-app-page .v11-home-grid,
body.v1539-app-page .v11-board-shell,
body.v1539-app-page .v1463-community-shell,
body.v1539-app-page .v14-saves-shell{background:transparent !important}

body.v1539-app-page .v11-intro,
body.v1539-app-page .v11-start-card,
body.v1539-app-page .v11-join-card,
body.v1539-app-page .v11-stat-card,
body.v1539-app-page .v1463-home-changelog,
body.v1539-app-page .v11-board-head,
body.v1539-app-page .v1463-community-hero,
body.v1539-app-page .v14-page-head,
body.v1539-app-page .v11-board-tabs,
body.v1539-app-page .v1468-community-tabs,
body.v1539-app-page .v1468-board-scope,
body.v1539-app-page .v11-board-card,
body.v1539-app-page .v11-board-note,
body.v1539-app-page .v11-data-card,
body.v1539-app-page .v11-loading-card,
body.v1539-app-page .v14-message-card,
body.v1539-app-page .v14-saves-summary,
body.v1539-app-page .v14-save-list,
body.v1539-app-page #savesSummary,
body.v1539-app-page #saveList{
  border-color:rgba(137,185,225,.52) !important;
  box-shadow:var(--v1540-shadow) !important;
  backdrop-filter:blur(14px) !important;
}
body.v1539-app-page .v11-intro{
  background:rgba(238,247,253,.78) !important;
  border:1px solid rgba(146,192,228,.52) !important;
  border-radius:28px !important;
  padding:28px !important;
}
body.v1539-app-page .v11-start-card,
body.v1539-app-page .v11-data-card,
body.v1539-app-page .v11-board-card,
body.v1539-app-page .v14-saves-summary,
body.v1539-app-page .v14-save-list,
body.v1539-app-page #savesSummary,
body.v1539-app-page #saveList{
  background:var(--v1540-card-strong) !important;
}
body.v1539-app-page .v11-board-head,
body.v1539-app-page .v1463-community-hero,
body.v1539-app-page .v14-page-head{
  background:linear-gradient(135deg,rgba(210,236,252,.90),rgba(246,251,255,.84)) !important;
  border:1px solid rgba(139,190,229,.56) !important;
  border-radius:28px !important;
}
body.v1539-app-page .v11-board-tabs,
body.v1539-app-page .v1468-community-tabs,
body.v1539-app-page .v1468-board-scope,
body.v1539-app-page .v11-board-note,
body.v1539-app-page .v11-loading-card,
body.v1539-app-page .v14-message-card{
  background:rgba(244,250,255,.86) !important;
}
body.v1539-app-page .v1463-community-grid,
body.v1539-app-page #savesView{background:transparent !important}

/* Saves used a large solid page block in legacy CSS. Neutralize it explicitly. */
body.v1539-theme-saves .v14-saves-shell,
body.v1539-theme-saves #savesView,
body.v1539-theme-saves .v14-save-list,
body.v1539-theme-saves .v14-saves-summary{background-color:transparent !important}
body.v1539-theme-saves #saveList{background:rgba(242,249,253,.86) !important;border-radius:24px !important;padding:12px !important}

/* Community legacy grid/paper background should no longer cover its harbor scene. */
body.v1539-theme-community,
body.v1539-theme-community .v1463-community-shell{background-color:transparent !important;background-image:none}
body.v1539-theme-community{background-image:linear-gradient(180deg,rgba(4,31,53,.20),rgba(4,31,53,.08) 66%,rgba(4,31,53,.34)),var(--v1540-page-bg) !important}

/* Shared footer from login page. */
.v1539-footer{
  position:relative !important;
  z-index:5 !important;
  width:100% !important;
  margin:4px 0 0 !important;
  padding:0 24px !important;
  background:linear-gradient(180deg,rgba(6,43,72,.97),rgba(5,35,60,.99)) !important;
  border-top:1px solid rgba(109,185,235,.38) !important;
  box-shadow:0 -10px 28px rgba(3,24,44,.16) !important;
}
.v1539-footer .v1535-footer-inner{
  width:min(1400px,calc(100% - 0px)) !important;
  min-height:50px !important;
  margin:0 auto !important;
}

@media(max-width:1280px){
  .v1539-topbar .v1535-topbar-inner{grid-template-columns:205px minmax(430px,1fr) auto !important;gap:12px !important}
  .v1539-topbar .v1535-mainnav{gap:8px !important}
  .v1539-topbar .v1535-mainnav a{padding:0 9px !important;font-size:12px !important}
  .v1539-topbar .v149-account-cluster>.v11-account-link{min-width:112px !important}
  .v1539-topbar .v149-nav-action{min-width:78px !important;padding:0 9px !important}
}
@media(max-width:980px){
  body.v1539-app-page{background-attachment:scroll !important}
  .v1539-topbar{padding:10px 10px 0 !important}
  .v1539-topbar .v1535-topbar-inner{
    width:100% !important;
    min-height:78px !important;
    grid-template-columns:190px auto !important;
    gap:12px !important;
    padding:8px 12px !important;
  }
  .v1539-topbar .v1535-mainnav{
    position:fixed !important;
    z-index:100 !important;
    left:8px !important;
    right:8px !important;
    bottom:8px !important;
    width:auto !important;
    padding:7px !important;
    border:1px solid #82b8de !important;
    border-radius:18px !important;
    background:rgba(7,51,86,.97) !important;
    box-shadow:0 16px 35px rgba(0,0,0,.28) !important;
    justify-content:space-around !important;
    gap:4px !important;
  }
  .v1539-topbar .v1535-mainnav a{flex:1 1 0 !important;min-width:0 !important;padding:0 7px !important;font-size:11px !important}
  .v1539-topbar .v149-account-cluster{justify-self:end !important;gap:5px !important}
  .v1539-topbar .v149-account-cluster>.v11-account-link{min-width:46px !important;width:46px !important;padding:0 !important;justify-content:center !important}
  .v1539-topbar .v149-account-cluster>.v11-account-link b,
  .v1539-topbar .v149-account-cluster>.v11-account-link small{display:none !important}
  .v1539-topbar .v149-nav-action{min-width:42px !important;width:42px !important;padding:0 !important;font-size:0 !important}
  .v1539-topbar .v149-nav-action b{display:none !important}
  body.v1539-app-page main.shell{width:calc(100% - 24px) !important;padding-top:18px !important;padding-bottom:92px !important}
  .v1539-footer{padding:0 14px 84px !important}
}
