/* v139 App Store hardening: centralised final overrides. */
.auth-provider-block{display:grid;gap:8px;}.auth-apple-button,.auth-google-button{width:100%;min-height:44px;border-radius:10px;font:inherit;font-weight:700;letter-spacing:.04em;display:flex;align-items:center;justify-content:center;gap:9px;}.auth-apple-button{background:#fff;color:#050505;border:1px solid rgba(255,255,255,.85);}.auth-apple-mark{font-size:1.2em;line-height:1;}.auth-provider-note{display:block;color:#9eabc0;text-align:center;line-height:1.35;}.social-safety-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;}.social-safety-actions button{min-height:40px;padding:0 14px;border-radius:10px;}.social-report-button{border:1px solid rgba(220,170,76,.45);background:rgba(45,34,18,.85);color:#f0ca7c;}.social-block-button{border:1px solid rgba(206,92,92,.45);background:rgba(54,18,20,.86);color:#f0a3a3;}
@media (max-height:760px) and (max-width:599px){html,body{overflow:hidden;}.phone-stage{transform-origin:top left!important;}.page,.sheet{overscroll-behavior:contain;}.sheet-content,.settings-content,.stats-content,.quests-content,.rewards-content,.teams-content{min-height:0;}}

@media (min-width:600px){body{place-items:start center!important;}.phone-stage{margin-left:0!important;margin-right:0!important;}}

/* v147 launch-candidate: Lumen Pass social stats are unlocked by the viewer's Pass.
   Keep one authoritative touch scroller so iOS/WKWebView does not hand the gesture
   to the parent sheet. */
#sheetOverlay > .sheet.ally-profile-modal-v45.social-profile-modal-v48.profile-has-pass-v48{
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  height:min(770px,calc(100dvh - 12px)) !important;
  max-height:calc(100dvh - 12px) !important;
}
#sheetOverlay > .sheet.ally-profile-modal-v45.social-profile-modal-v48.profile-has-pass-v48 .ally-profile-v45{
  height:100% !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
}
#sheetOverlay > .sheet.ally-profile-modal-v45.social-profile-modal-v48.profile-has-pass-v48 .ally-profile-head-v45,
#sheetOverlay > .sheet.ally-profile-modal-v45.social-profile-modal-v48.profile-has-pass-v48 .ally-profile-hero-v45,
#sheetOverlay > .sheet.ally-profile-modal-v45.social-profile-modal-v48.profile-has-pass-v48 .social-profile-fixed-assets-v48,
#sheetOverlay > .sheet.ally-profile-modal-v45.social-profile-modal-v48.profile-has-pass-v48 .social-profile-fixed-actions-v48{
  flex:0 0 auto !important;
}
#sheetOverlay > .sheet.ally-profile-modal-v45.social-profile-modal-v48.profile-has-pass-v48 .ally-profile-progress-v45{
  flex:1 1 auto !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
}
#sheetOverlay > .sheet.ally-profile-modal-v45.social-profile-modal-v48.profile-has-pass-v48 .ally-profile-stats-scroll-v45.is-scrollable{
  flex:1 1 auto !important;
  height:auto !important;
  min-height:118px !important;
  max-height:none !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  overscroll-behavior-y:contain !important;
  touch-action:pan-y !important;
  contain:none !important;
  pointer-events:auto !important;
}
#sheetOverlay > .sheet.ally-profile-modal-v45.social-profile-modal-v48.profile-has-pass-v48 .ally-profile-stats-grid-v45{
  min-height:max-content !important;
  padding-bottom:12px !important;
}
@media (max-height:700px){
  #sheetOverlay > .sheet.ally-profile-modal-v45.social-profile-modal-v48.profile-has-pass-v48{
    height:calc(100dvh - 8px) !important;
  }
  #sheetOverlay > .sheet.ally-profile-modal-v45.social-profile-modal-v48.profile-has-pass-v48 .ally-profile-stats-scroll-v45.is-scrollable{
    min-height:104px !important;
  }
}

/* v147 Lumen Path density: keep Path / Inventory close to the content and show
   substantially more journey rewards without shrinking the labels into illegibility. */
.lumen-path-celestial-shell-v98{
  gap:3px !important;
}
.lumen-path-view-tabs-v98{
  margin:0 auto 2px !important;
  padding-bottom:7px !important;
}
.lumen-path-view-tabs-v98 button{
  padding-bottom:5px !important;
}
.lumen-path-view-tabs-v98 button::after{
  bottom:-8px !important;
}
.lumen-path-panel-v98{
  grid-template-rows:auto minmax(0,1fr) !important;
  gap:3px !important;
  padding:6px 8px 8px !important;
}
.lumen-path-progress-v97{
  min-height:31px !important;
  grid-template-columns:98px minmax(0,1fr) 72px !important;
  gap:6px !important;
  padding:0 1px 4px !important;
}
.lumen-path-progress-v97 .lumen-path-progress-main span{
  font-size:.32rem !important;
  line-height:1.05 !important;
}
.lumen-path-progress-v97 .lumen-path-progress-main strong{
  font-size:.52rem !important;
  line-height:1 !important;
}
.lumen-path-progress-v97 .lumen-path-track{
  height:6px !important;
}
.lumen-path-step-v97,
.lumen-path-step-v97.left,
.lumen-path-step-v97.right,
.lumen-path-step-v97.major,
.lumen-path-step-v97.major.left,
.lumen-path-step-v97.major.right{
  grid-template-columns:30px 44px minmax(0,1fr) auto !important;
  min-height:58px !important;
  gap:7px !important;
  padding:4px 2px !important;
}
.lumen-path-step-v97 .lumen-path-step-art{
  width:42px !important;
  height:42px !important;
  object-fit:contain !important;
}
@media(max-width:430px){
  .lumen-path-view-tabs-v98{margin-bottom:1px !important;padding-bottom:6px !important;}
  .lumen-path-progress-v97{min-height:29px !important;grid-template-columns:92px minmax(0,1fr) 68px !important;}
  .lumen-path-step-v97,
  .lumen-path-step-v97.left,
  .lumen-path-step-v97.right,
  .lumen-path-step-v97.major,
  .lumen-path-step-v97.major.left,
  .lumen-path-step-v97.major.right{min-height:56px !important;}
}

/* v150 Teams academy identity card: reserve visible space for rank progress. */
body.secondary-screen-active .iphone-teams-page.teams-sleek-page .teams-academy-card-sleek{
  min-height:160px !important;
  grid-template-rows:minmax(76px, auto) auto !important;
  align-content:start !important;
  padding-bottom:12px !important;
}
body.secondary-screen-active .iphone-teams-page.teams-sleek-page .teams-academy-rank-sleek{
  min-height:34px !important;
  position:relative !important;
  z-index:4 !important;
}
@media (max-width:430px){
  body.secondary-screen-active .iphone-teams-page.teams-sleek-page .teams-academy-card-sleek{
    min-height:151px !important;
    grid-template-rows:minmax(66px, auto) auto !important;
    padding-bottom:11px !important;
  }
}


/* v151 — Lumen Pass timer increment setting */
.settings-timer-increment-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  width:100%;
  padding:12px 14px;
  border-bottom:1px solid rgba(229,194,120,.12);
}
.settings-timer-increment-row > span { min-width:0; }
.settings-timer-increment-row strong { display:block; }
.settings-timer-increment-row small { display:block; margin-top:3px; color:var(--muted); line-height:1.25; }
.settings-timer-increment-options {
  display:flex;
  gap:4px;
  padding:3px;
  border:1px solid rgba(208,167,85,.22);
  border-radius:999px;
  background:rgba(7,12,19,.34);
}
.settings-timer-increment-options button {
  min-width:46px;
  min-height:30px;
  padding:0 8px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:var(--muted);
  font:700 .62rem/1 Cinzel,serif;
  letter-spacing:.035em;
  white-space:nowrap;
}
.settings-timer-increment-options button.active {
  color:#241706;
  background:linear-gradient(180deg,#f2d58e,#c99b43);
  box-shadow:0 1px 0 rgba(255,255,255,.22) inset,0 4px 12px rgba(0,0,0,.18);
}
@media (max-width:380px) {
  .settings-timer-increment-row { grid-template-columns:1fr; gap:8px; }
  .settings-timer-increment-options { width:max-content; max-width:100%; }
}

/* v152 — Open celestial Lumen Path surface + inspectable reward nodes. */
.lumen-path-celestial-shell-v98{
  position:relative !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 12% 12%,rgba(87,119,255,.16),transparent 28%),
    radial-gradient(circle at 88% 24%,rgba(166,95,255,.10),transparent 30%),
    radial-gradient(circle at 48% 92%,rgba(227,171,76,.08),transparent 34%),
    linear-gradient(180deg,rgba(4,13,30,.98),rgba(3,10,24,.99)) !important;
}
.lumen-path-celestial-shell-v98::before,
.lumen-path-celestial-shell-v98::after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
  border-radius:50%;
  filter:blur(20px);
  opacity:.45;
}
.lumen-path-celestial-shell-v98::before{
  width:160px;height:160px;left:-78px;top:24%;
  background:radial-gradient(circle,rgba(70,105,255,.30),transparent 68%);
}
.lumen-path-celestial-shell-v98::after{
  width:190px;height:190px;right:-110px;bottom:12%;
  background:radial-gradient(circle,rgba(177,91,255,.20),transparent 70%);
}
.lumen-path-panel-v98,
.lumen-path-panel-celestial{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:2px 3px 5px !important;
}
.lumen-path-progress-v97{
  position:relative !important;
  z-index:2 !important;
  padding:2px 3px 6px !important;
  border-bottom:1px solid rgba(124,153,220,.16) !important;
  background:linear-gradient(90deg,transparent,rgba(55,80,137,.08),transparent) !important;
}
.lumen-path-journey-v97{
  position:relative !important;
  padding:0 2px 10px !important;
  border:0 !important;
  border-radius:0 !important;
  background:
    linear-gradient(90deg,transparent 0%,rgba(56,84,153,.045) 45%,rgba(116,71,166,.035) 70%,transparent 100%) !important;
  box-shadow:none !important;
}
.lumen-path-journey-v97::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.32;
  background-image:
    radial-gradient(circle at 8% 9%,rgba(255,239,188,.95) 0 1px,transparent 1.5px),
    radial-gradient(circle at 82% 16%,rgba(129,170,255,.85) 0 1px,transparent 1.4px),
    radial-gradient(circle at 38% 41%,rgba(206,170,255,.72) 0 1px,transparent 1.4px),
    radial-gradient(circle at 91% 74%,rgba(255,217,134,.76) 0 1px,transparent 1.5px);
  background-size:83px 83px,109px 109px,131px 131px,157px 157px;
}
.lumen-path-steps-v97{position:relative !important;z-index:1 !important;border-top:0 !important;}
.lumen-path-step-v97{
  cursor:pointer !important;
  border-bottom-color:rgba(104,137,204,.12) !important;
  transition:background .16s ease,transform .16s ease,opacity .16s ease !important;
}
.lumen-path-step-v97:hover,
.lumen-path-step-v97:focus-visible{
  outline:none !important;
  background:linear-gradient(90deg,rgba(71,104,184,.12),rgba(120,75,170,.07),transparent 88%) !important;
}
.lumen-path-step-v97:focus-visible{box-shadow:inset 0 0 0 1px rgba(226,190,101,.28) !important;}
.lumen-path-step-v97 .lumen-path-step-art{
  padding:3px !important;
  border-radius:50% !important;
  background:radial-gradient(circle,rgba(93,130,225,.14),rgba(12,25,51,.05) 65%,transparent 72%) !important;
  filter:drop-shadow(0 0 9px rgba(100,143,255,.24)) !important;
}
.lumen-path-step-v97.unlocked .lumen-path-step-art{filter:drop-shadow(0 0 10px rgba(239,194,91,.24)) !important;}
.lumen-path-step-v97.type-final{
  background:
    radial-gradient(circle at 13% 50%,rgba(244,201,106,.14),transparent 25%),
    linear-gradient(90deg,rgba(91,57,119,.12),transparent 86%) !important;
}
.lumen-path-step-v97.type-final .lumen-path-step-index{
  box-shadow:0 0 0 3px rgba(5,17,36,.90),0 0 15px rgba(234,188,84,.26) !important;
}
.lumen-path-preview-v152 .reward-universal-showcase-v69 img{filter:drop-shadow(0 0 18px rgba(111,148,255,.28));}
.lumen-path-preview-target-v152{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:4px 0 2px;padding:9px 11px;border:1px solid rgba(113,143,207,.18);border-radius:10px;
  background:rgba(8,20,42,.48);
}
.lumen-path-preview-target-v152 span{color:#91a7c8;font-size:.48rem;font-weight:800;letter-spacing:.08em;}
.lumen-path-preview-target-v152 strong{color:#efd087;font-size:.68rem;}
.lumen-path-preview-available-v152{color:#efcc7c !important;}
@media(max-width:430px){
  .lumen-path-panel-v98,.lumen-path-panel-celestial{padding:1px 1px 4px !important;}
  .lumen-path-journey-v97{padding-inline:1px !important;}
}


/* v153 — cohesive timer setting, compact Lifetime upgrade, celestial reward tiles */
.settings-timer-increment-cycle > span:last-child{
  color:var(--text) !important;
  font:inherit !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  min-width:42px;
  text-align:right;
}
.lumen-pass-active-copy.cosmic button[data-buy-lumen-pass="lifetime"]{
  width:auto !important;
  min-width:116px !important;
  max-width:150px !important;
  min-height:30px !important;
  padding:0 11px !important;
  margin:6px auto 0 !important;
  font-size:.43rem !important;
}
.lumen-path-upgrade-banner button[data-buy-lumen-pass="lifetime"]{
  min-width:92px !important;
  min-height:34px !important;
  padding:0 9px !important;
  font-size:.55rem !important;
}
.lumen-path-step-v97{
  margin:3px 2px !important;
  border:1px solid rgba(104,137,204,.16) !important;
  border-radius:12px !important;
  background:
    radial-gradient(circle at 18% 50%,rgba(100,139,229,.10),transparent 36%),
    linear-gradient(100deg,rgba(9,24,52,.72),rgba(21,24,60,.54) 56%,rgba(32,19,58,.42)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 5px 13px rgba(0,0,0,.12) !important;
}
.lumen-path-step-v97.unlocked{
  border-color:rgba(222,183,92,.24) !important;
  background:
    radial-gradient(circle at 18% 50%,rgba(232,190,87,.10),transparent 36%),
    linear-gradient(100deg,rgba(19,31,60,.78),rgba(39,30,65,.58) 58%,rgba(43,27,60,.46)) !important;
}
.lumen-path-step-v97.claimed{
  background:
    radial-gradient(circle at 18% 50%,rgba(211,174,83,.075),transparent 36%),
    linear-gradient(100deg,rgba(11,28,48,.62),rgba(24,31,55,.48) 58%,rgba(32,28,49,.40)) !important;
}
.lumen-path-step-v97:hover,.lumen-path-step-v97:focus-visible{
  background:
    radial-gradient(circle at 18% 50%,rgba(117,156,245,.15),transparent 38%),
    linear-gradient(100deg,rgba(18,40,78,.80),rgba(46,34,83,.62) 58%,rgba(51,30,72,.50)) !important;
}

/* v153 — compress Teams academy identity card while preserving all key metadata. */
body.secondary-screen-active .iphone-teams-page.teams-sleek-page .teams-academy-card-sleek{
  min-height:144px !important;
  grid-template-rows:minmax(68px, auto) auto !important;
  gap:5px 10px !important;
  padding:8px 11px 7px !important;
}
.teams-sleek-page .teams-academy-card-sleek .teams-banner-wrap{
  width:58px !important;
  height:67px !important;
  align-self:start !important;
  margin-top:1px !important;
}
.teams-sleek-page .teams-academy-card-sleek .teams-banner{
  width:53px !important;
  height:64px !important;
}
.teams-sleek-page .teams-academy-card-sleek .teams-banner img{
  width:33px !important;
  height:33px !important;
}
.teams-sleek-page .teams-academy-card-sleek .teams-academy-copy{
  align-self:start !important;
  padding-top:1px !important;
}
.teams-sleek-page .teams-academy-card-sleek .teams-academy-motto{
  margin-top:3px !important;
}
.teams-academy-meta-sleek{
  margin-top:5px !important;
  gap:4px 11px !important;
}
body.secondary-screen-active .iphone-teams-page.teams-sleek-page .teams-academy-rank-sleek{
  min-height:29px !important;
  gap:7px !important;
  padding-top:4px !important;
}
.teams-academy-rank-track{
  grid-template-columns:26px minmax(0,1fr) 26px !important;
  gap:5px !important;
}
.teams-academy-rank-badge{
  width:26px !important;
  height:26px !important;
}
@media (max-width:430px){
  body.secondary-screen-active .iphone-teams-page.teams-sleek-page .teams-academy-card-sleek{
    min-height:136px !important;
    grid-template-columns:54px minmax(0,1fr) !important;
    grid-template-rows:minmax(61px, auto) auto !important;
    gap:4px 8px !important;
    padding:7px 9px 6px !important;
  }
  .teams-sleek-page .teams-academy-card-sleek .teams-banner-wrap{
    width:50px !important;
    height:59px !important;
  }
  .teams-sleek-page .teams-academy-card-sleek .teams-banner{
    width:46px !important;
    height:57px !important;
  }
  .teams-sleek-page .teams-academy-card-sleek .teams-banner img{
    width:29px !important;
    height:29px !important;
  }
  .teams-sleek-page .teams-academy-card-sleek .teams-academy-motto{
    margin-top:2px !important;
  }
  .teams-academy-meta-sleek{
    margin-top:4px !important;
    gap:3px 8px !important;
  }
  body.secondary-screen-active .iphone-teams-page.teams-sleek-page .teams-academy-rank-sleek{
    min-height:27px !important;
    gap:5px !important;
    padding-top:3px !important;
  }
  .teams-academy-rank-label{min-width:58px !important;}
  .teams-academy-rank-track{grid-template-columns:24px minmax(0,1fr) 24px !important;gap:4px !important;}
  .teams-academy-rank-badge{width:24px !important;height:24px !important;}
}


/* v154 — Castle room sheets use the current neutral modal header and uncarded close control. */
#sheetOverlay > .sheet .castle-upgrade-shell .castle-upgrade-head{
  position:relative !important;
  top:auto !important;
  margin:0 0 4px !important;
  padding:0 0 12px !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:14px !important;
  border:0 !important;
  border-bottom:1px solid var(--ui-divider) !important;
  background:transparent !important;
  box-shadow:none !important;
}
#sheetOverlay > .sheet .castle-upgrade-shell .castle-upgrade-head .kicker{
  color:#aab3c1 !important;
  font-size:max(.75rem,12px) !important;
  line-height:1.1 !important;
  letter-spacing:.08em !important;
  text-transform:none !important;
}
#sheetOverlay > .sheet .castle-upgrade-shell .castle-upgrade-head .sheet-title{
  margin-top:2px !important;
  color:#ead3a2 !important;
  font-size:1.42rem !important;
  line-height:1.08 !important;
  letter-spacing:.005em !important;
  text-transform:none !important;
}
#sheetOverlay > .sheet .castle-upgrade-shell .castle-upgrade-head :is(.muted,.castle-upgrade-cap){
  margin-top:3px !important;
  color:#949faf !important;
  font-size:max(.75rem,12px) !important;
  line-height:1.35 !important;
}
#sheetOverlay > .sheet .castle-upgrade-shell .castle-upgrade-head .close-button{
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  min-height:38px !important;
  flex:0 0 38px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#d9bd82 !important;
  box-shadow:none !important;
  text-shadow:none !important;
  font:400 1.08rem/1 system-ui,-apple-system,sans-serif !important;
}
#sheetOverlay > .sheet .castle-upgrade-shell .castle-upgrade-head .close-button:hover{
  border:0 !important;
  background:transparent !important;
  color:#f1d79e !important;
}

/* v158 — compact purchase restoration and bottom-of-Path lifetime CTA. */
.lumen-pass-restore-purchases{
  width:max-content !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:4px auto 0 !important;
  padding:2px 5px !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#8996a8 !important;
  font-size:.48rem !important;
  line-height:1.15 !important;
  font-weight:600 !important;
  letter-spacing:.045em !important;
  text-transform:none !important;
}
.lumen-pass-restore-purchases:hover,
.lumen-pass-restore-purchases:focus-visible{
  color:#c9ae74 !important;
  text-decoration:underline !important;
}
.lumen-path-celestial-shell-v98 > .lumen-path-upgrade-banner{
  order:99 !important;
  flex:0 0 auto !important;
  margin-top:4px !important;
  margin-bottom:0 !important;
}
#sheetOverlay .settings-sheet-modal .settings-restore-purchases-row > span:last-child{
  color:#dfb861 !important;
}

/* v165 — notification cards + iPhone Safari visible-viewport hardening. */
.lumen-notification-host{
  position:absolute;
  top:74px;
  left:10px;
  right:10px;
  z-index:140;
  display:grid;
  pointer-events:none;
  opacity:0;
  transform:translateY(-8px);
  transition:opacity .18s ease,transform .18s ease;
}
.lumen-notification-host.visible{
  opacity:1;
  transform:translateY(0);
}
.lumen-notification-card{
  pointer-events:auto;
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 28px;
  align-items:center;
  gap:9px;
  min-height:64px;
  padding:9px 8px 9px 10px;
  border:1px solid rgba(215,171,96,.28);
  border-radius:11px;
  background:linear-gradient(180deg,rgba(14,23,37,.985),rgba(8,14,24,.99));
  box-shadow:0 12px 28px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(14px);
}
.lumen-notification-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(215,171,96,.24);
  border-radius:50%;
  color:#efc86f;
  background:rgba(215,171,96,.07);
  font-size:1rem;
  font-weight:700;
}
.lumen-notification-copy{
  min-width:0;
  display:grid;
  gap:3px;
}
.lumen-notification-copy strong{
  color:#efd39a;
  font-size:.70rem;
  line-height:1.1;
  letter-spacing:.025em;
}
.lumen-notification-copy span{
  color:#c4b79e;
  font-size:.56rem;
  line-height:1.28;
}
.lumen-notification-close{
  width:28px;
  height:28px;
  border:0;
  padding:0;
  border-radius:6px;
  background:transparent;
  color:#ad9e86;
  font-size:1rem;
  display:grid;
  place-items:center;
}
.lumen-notification-card.break .lumen-notification-icon{color:#c9d7b3;border-color:rgba(145,183,128,.26);background:rgba(105,151,90,.08);}
.lumen-notification-card.timer .lumen-notification-icon{color:#a9c7ee;border-color:rgba(112,154,209,.28);background:rgba(72,113,170,.08);}
.lumen-notification-card.quest .lumen-notification-icon{color:#efc86f;}
.lumen-notification-card.streak .lumen-notification-icon{color:#e7b96a;}

/* The transformed phone canvas is centered inside the visible Safari viewport.
   Keep the surrounding gutter the same dark app surface rather than exposing a
   browser-default strip when the address/search bar shortens the viewport. */
@media (max-width:599px){
  html,body{background:#05080d !important;overscroll-behavior:none !important;}
  .phone-stage{will-change:transform;}
}
@media (max-width:599px){
  body{place-items:start start !important;}
  .phone-stage{transform-origin:top left !important;}
}

/* v167 — dev-mode Extended Stats premium preview. */
.extended-stats-premium-gate-v167{
  position:relative;
  min-height:430px;
  margin-top:3px;
  overflow:hidden;
  border-radius:10px;
}
.extended-stats-premium-blur-v167{
  filter:blur(4.5px);
  opacity:.42;
  pointer-events:none;
  user-select:none;
  transform:translateZ(0);
}
.extended-stats-premium-cta-v167{
  position:absolute;
  top:38px;
  left:14px;
  right:14px;
  z-index:2;
  display:grid;
  justify-items:center;
  gap:7px;
  padding:15px 14px 14px;
  border:1px solid rgba(222,180,91,.38);
  border-radius:12px;
  background:linear-gradient(180deg,rgba(15,24,41,.96),rgba(8,14,25,.975));
  box-shadow:0 14px 34px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.04);
  text-align:center;
}
.extended-stats-premium-cta-v167 img{
  width:46px;
  height:46px;
  object-fit:contain;
  filter:drop-shadow(0 0 12px rgba(113,144,255,.28));
}
.extended-stats-premium-cta-v167 strong{
  color:#f1d38f;
  font-size:.76rem;
  line-height:1.15;
  letter-spacing:.055em;
}
.extended-stats-premium-cta-v167 span{
  max-width:280px;
  color:#c6b99e;
  font-size:.58rem;
  line-height:1.38;
}
.extended-stats-premium-cta-v167 button{
  min-width:148px;
  min-height:39px;
  padding:0 15px;
  border:1px solid rgba(235,194,95,.60);
  border-radius:8px;
  background:linear-gradient(180deg,#ad792a,#684316);
  color:#ffe9b5;
  font:700 .63rem/1 'Cinzel',serif;
  letter-spacing:.055em;
}


/* v168 — atomic Academy switching + fixed pager indicators. */
.teams-switching-page-v168{
  display:flex !important;
  flex-direction:column !important;
}
.teams-switch-loading-v168{
  flex:1 1 auto !important;
  min-height:0 !important;
  margin:12px 10px 8px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  text-align:center !important;
  color:#aebdd0 !important;
}
.teams-switch-spinner-v168{
  width:34px !important;
  height:34px !important;
  border:3px solid rgba(101,170,255,.18) !important;
  border-top-color:#65aaff !important;
  border-radius:50% !important;
  animation:lumenTeamSwitchSpinV168 .8s linear infinite !important;
}
.teams-switch-loading-v168 strong{
  color:#efd08c !important;
  font-size:.72rem !important;
  letter-spacing:.10em !important;
}
.teams-switch-loading-v168 p{
  margin:0 !important;
  color:#e8eef7 !important;
  font-size:.68rem !important;
}
.teams-switch-loading-v168 small{
  max-width:280px !important;
  color:#8597af !important;
  font-size:.43rem !important;
  line-height:1.35 !important;
}
@keyframes lumenTeamSwitchSpinV168{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.teams-switch-spinner-v168{animation-duration:1.8s !important}}

/* Indicators live in their own fixed-height slot immediately above Manage Academy,
   so member-count changes can never push them into or below the contributor list. */
.teams-dashboard-sleek .teams-pager-dots-slot{
  flex:0 0 22px !important;
  min-height:22px !important;
  height:22px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:0 !important;
}
.teams-dashboard-sleek .teams-pager-dots-slot-empty{visibility:hidden !important;}
.teams-dashboard-sleek .teams-pager-dots-fixed-v168{
  min-height:16px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  margin:0 !important;
  padding:0 !important;
}
.teams-dashboard-sleek .teams-pager-dots-fixed-v168 button{
  display:block !important;
  width:7px !important;
  min-width:7px !important;
  height:7px !important;
  min-height:7px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:999px !important;
  background:rgba(104,142,190,.27) !important;
}
.teams-dashboard-sleek .teams-pager-dots-fixed-v168 button.active{
  width:17px !important;
  background:#65aaff !important;
}


/* v168: keep the Academy pager controls anchored with the bottom management action. */
body.secondary-screen-active .teams-dashboard-sleek .teams-pager-dots-slot{
  position:sticky !important;
  bottom:58px !important;
  z-index:18 !important;
  background:linear-gradient(180deg,rgba(5,15,29,0),rgba(5,15,29,.96) 42%) !important;
}
body.secondary-screen-active .teams-dashboard-sleek .teams-floating-manage.teams-manage-sleek{
  position:sticky !important;
  bottom:0 !important;
  z-index:19 !important;
  background:linear-gradient(180deg,rgba(8,22,40,.98),rgba(5,16,30,.99)) !important;
}

/* v169 — deterministic Academy switch controls.
   The contributor pager never previews a different Academy's cached content;
   gestures select a target and the switch-loading screen renders first. */
body.secondary-screen-active .iphone-teams-page .teams-contributors-pager{
  overflow-x:hidden !important;
  scroll-snap-type:none !important;
  touch-action:pan-y !important;
}

/* Remove the old floating + control entirely. Create/Join remain available in
   Manage Academy, where they cannot collide with the Expedition card. */
.iphone-teams-page .teams-pager-add{display:none !important;}

/* Hard anchor the Academy dots and Manage Academy control to the phone canvas.
   This intentionally overrides all older sticky/fixed experiments. */
body.secondary-screen-active .iphone-teams-page .teams-pager-dots-slot{
  position:fixed !important;
  left:8px !important;
  right:8px !important;
  bottom:calc(132px + env(safe-area-inset-bottom, 0px)) !important;
  width:auto !important;
  height:22px !important;
  min-height:22px !important;
  margin:0 !important;
  padding:0 !important;
  z-index:42 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  pointer-events:none !important;
}
body.secondary-screen-active .iphone-teams-page .teams-pager-dots-slot .teams-pager-dots{
  pointer-events:auto !important;
  margin:0 !important;
  padding:5px 9px !important;
  min-height:22px !important;
  border-radius:999px !important;
  background:rgba(5,15,29,.84) !important;
  box-shadow:0 2px 10px rgba(0,0,0,.22) !important;
}
body.secondary-screen-active .iphone-teams-page .teams-floating-manage.teams-manage-sleek{
  position:fixed !important;
  left:8px !important;
  right:8px !important;
  bottom:calc(72px + env(safe-area-inset-bottom, 0px)) !important;
  width:auto !important;
  margin:0 !important;
  z-index:43 !important;
}
body.secondary-screen-active .iphone-teams-page .teams-dashboard-content{
  padding-bottom:142px !important;
}
@media (max-width:390px){
  body.secondary-screen-active .iphone-teams-page .teams-pager-dots-slot{
    bottom:calc(126px + env(safe-area-inset-bottom, 0px)) !important;
  }
  body.secondary-screen-active .iphone-teams-page .teams-floating-manage.teams-manage-sleek{
    bottom:calc(68px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* v1.70 — Settings information architecture. Keep rows compact but group related controls. */
#sheetOverlay .settings-sheet-modal .settings-list.settings-grouped-list{
  display:grid !important;
  gap:12px !important;
  border-top:0 !important;
  padding-top:4px !important;
}
#sheetOverlay .settings-sheet-modal .settings-group-panel{
  min-width:0 !important;
  overflow:hidden !important;
  border:1px solid rgba(137,153,176,.16) !important;
  border-radius:12px !important;
  background:rgba(9,18,29,.54) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018) !important;
}
#sheetOverlay .settings-sheet-modal .settings-group-heading{
  padding:9px 12px 7px !important;
  border-bottom:1px solid rgba(203,164,91,.14) !important;
  color:#cbaa68 !important;
  font-size:.57rem !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}
#sheetOverlay .settings-sheet-modal .settings-group-body{
  display:grid !important;
  gap:0 !important;
  min-width:0 !important;
}
#sheetOverlay .settings-sheet-modal .settings-group-body :is(.settings-row,.settings-volume-row){
  padding-left:12px !important;
  padding-right:12px !important;
}
#sheetOverlay .settings-sheet-modal .settings-group-body :is(.settings-row,.settings-volume-row):last-child{
  border-bottom:0 !important;
}
#sheetOverlay .settings-sheet-modal .settings-admin-panel{
  border-color:rgba(213,164,82,.24) !important;
}
#sheetOverlay .settings-sheet-modal .settings-developer-panel{
  border-color:rgba(112,145,188,.24) !important;
}
#sheetOverlay .settings-sheet-modal .settings-build-version{
  margin-top:14px !important;
  padding:4px 0 2px !important;
  color:#6f7f93 !important;
  font-size:.54rem !important;
  letter-spacing:.08em !important;
  text-align:center !important;
}
