/* t1067u/t1068u — cinematic body stage; UI pass-through; Mesh3D polish */
.phone.pul-skin.pul-immersive{
  --pul-lime:#C8F24A; --pul-lime-deep:#9BE01A;
  --bg:#050505; --paper:#111111; --ink:#F4F7F0; --muted:#9AA396;
  --accent:#C8F24A !important; --neon:#C8F24A !important; --on-accent:#0A0C05;
  --line:rgba(255,255,255,.10);
  background: transparent !important;
  color:var(--ink);
  overflow:hidden;
  height:100dvh; max-height:100dvh;
  position:relative;
}
.phone.pul-skin.pul-immersive .mesh-bg,
.phone.pul-skin.pul-immersive .screen{ background:transparent !important; color:var(--ink); }

/* Body canvas always receives gestures */
#pulBodyStage{
  position:absolute; inset:0; width:100%; height:100%; z-index:1;
  pointer-events:auto !important;
  background:transparent; border:0 !important; outline:0 !important;
  box-shadow:none !important; border-radius:0 !important;
}
#pulBodyStage canvas{
  width:100%!important; height:100%!important; display:block;
  touch-action:none !important; border:0 !important; background:transparent !important;
}
#pulBodyStage .pul-body-fallback{
  position:absolute; inset:0; display:none; place-items:center; color:#C8F24A;
  font-weight:800; text-align:center; padding:24px; pointer-events:none;
}
.phone.pul-skin.no-webgl #pulBodyStage .pul-body-fallback{ display:grid; }
.pul-body-load{
  position:absolute; left:50%; top:42%; transform:translate(-50%,-50%);
  width:min(200px,70%); z-index:2; text-align:center; pointer-events:none;
  transition:opacity .4s ease;
}
.pul-body-load.hide{ opacity:0; visibility:hidden; }
.pul-body-load-bar{
  height:5px; border-radius:999px; width:0%;
  background:linear-gradient(90deg,#7a9e2a,#C8F24A);
  box-shadow:0 0 14px rgba(200,242,74,.4);
}
.pul-body-load-txt{ margin-top:10px; font-size:11px; font-weight:800; color:rgba(200,242,74,.85); }

/* Screens float above but NEVER block the body center */
.phone.pul-skin.pul-immersive .v6-strip,
.phone.pul-skin.pul-immersive .screen,
.phone.pul-skin.pul-immersive .tabs{
  position:relative; z-index:3;
  pointer-events:none !important;
}
.phone.pul-skin.pul-immersive .screen a,
.phone.pul-skin.pul-immersive .screen button,
.phone.pul-skin.pul-immersive .screen input,
.phone.pul-skin.pul-immersive .screen select,
.phone.pul-skin.pul-immersive .screen textarea,
.phone.pul-skin.pul-immersive .screen .wcard,
.phone.pul-skin.pul-immersive .screen .stat,
.phone.pul-skin.pul-immersive .screen .cal,
.phone.pul-skin.pul-immersive .screen .qi,
.phone.pul-skin.pul-immersive .screen .chip,
.phone.pul-skin.pul-immersive .screen .avatar-chip,
.phone.pul-skin.pul-immersive .screen [role="button"],
.phone.pul-skin.pul-immersive .tabs nav,
.phone.pul-skin.pul-immersive .tabs button,
.phone.pul-skin.pul-immersive .v6-strip a,
.phone.pul-skin.pul-immersive .v6-strip button{
  pointer-events:auto !important;
}

/* Cinematic scrim — open mid-band for the figure */
.phone.pul-skin.pul-immersive .screen{
  background:linear-gradient(180deg,
    rgba(5,5,5,.22) 0%,
    rgba(5,5,5,.04) 16%,
    transparent 30%,
    transparent 58%,
    rgba(5,5,5,.5) 78%,
    rgba(5,5,5,.92) 100%) !important;
}
.phone.pul-skin.pul-immersive #s-home{
  background:linear-gradient(180deg,
    rgba(5,5,5,.18) 0%, transparent 22%, transparent 55%,
    rgba(5,5,5,.45) 72%, rgba(5,5,5,.9) 100%) !important;
}
.phone.pul-skin.pul-immersive #s-anatomy{
  background:linear-gradient(180deg, rgba(5,5,5,.2) 0%, transparent 14%, transparent 62%, rgba(5,5,5,.65) 100%) !important;
}
.phone.pul-skin.pul-immersive #s-cal,
.phone.pul-skin.pul-immersive #s-work,
.phone.pul-skin.pul-immersive #s-smooth,
.phone.pul-skin.pul-immersive #s-progress,
.phone.pul-skin.pul-immersive .screen.on,
.phone.pul-skin.pul-immersive .screen.active{
  background-color: transparent !important;
}
.phone.pul-skin.pul-immersive #s-work .pad,
.phone.pul-skin.pul-immersive #s-cal .pad,
.phone.pul-skin.pul-immersive #s-smooth .pad,
.phone.pul-skin.pul-immersive #s-progress .pad{ background:transparent !important; }

/* Glass cards — NO cheap tilt/parallax (fights the body) */
.phone.pul-skin.pul-immersive .wcard,
.phone.pul-skin.pul-immersive .stat,
.phone.pul-skin.pul-immersive .cal,
.phone.pul-skin.pul-immersive .avatar-chip,
.phone.pul-skin.pul-immersive .cal-chrome{
  background:rgba(12,12,12,.58)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  color:var(--ink)!important;
  backdrop-filter:blur(16px) saturate(1.15);
  -webkit-backdrop-filter:blur(16px) saturate(1.15);
  box-shadow: 0 16px 36px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.07)!important;
  transition: opacity .3s cubic-bezier(.22,1,.36,1), transform .32s cubic-bezier(.22,1.2,.36,1);
  will-change: opacity, transform;
}
.phone.pul-skin.pul-immersive .qi,
.phone.pul-skin.pul-immersive .quick a,
.phone.pul-skin.pul-immersive .home-grid a,
.phone.pul-skin.pul-immersive #s-home .pad > a,
.phone.pul-skin.pul-immersive #s-home button.chip{
  background:rgba(18,18,18,.55)!important; color:var(--ink)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  backdrop-filter:blur(12px);
}
.phone.pul-skin.pul-immersive .btn-primary,
.phone.pul-skin.pul-immersive .cal-mode button.on,
.phone.pul-skin.pul-immersive .sticky-chips .chip.on,
.phone.pul-skin.pul-immersive #weekDots button.on{
  background:var(--pul-lime)!important; color:#0A0C05!important; border-color:var(--pul-lime)!important;
  box-shadow:0 0 28px rgba(200,242,74,.4)!important;
}
.phone.pul-skin.pul-immersive .tabs nav{
  background:rgba(10,10,10,.78)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  backdrop-filter:blur(20px) saturate(1.25);
  box-shadow:0 16px 40px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.08)!important;
  transition: transform .35s cubic-bezier(.22,1,.36,1), opacity .3s ease;
}
.phone.pul-skin.pul-immersive .tabs nav button{ color:#9AA396!important; }
.phone.pul-skin.pul-immersive .tabs nav button.on{ color:var(--pul-lime)!important; }
.phone.pul-skin.pul-immersive .tabs nav button.nav-start{
  background:radial-gradient(circle at 35% 30%, #E8FF8A, var(--pul-lime) 55%, #7AB800)!important;
  color:#0A0C05!important;
}

/* HUD / dock — collapse while body-focus */
.pul-hud-strip{
  position:absolute; z-index:4; left:14px; right:14px;
  top:calc(8px + var(--safe-t, 62px));
  display:flex; gap:8px; pointer-events:none;
  transition: opacity .3s ease, transform .35s cubic-bezier(.22,1,.36,1);
}
.pul-hud-pill{
  flex:1; background:rgba(12,12,12,.58); border:1px solid rgba(255,255,255,.12);
  border-radius:14px; padding:8px 10px;
  backdrop-filter:blur(14px); color:#F4F7F0;
  pointer-events:none;
}
.pul-hud-pill b{ display:block; font-size:17px; font-weight:800; }
.pul-hud-pill span{ font-size:9px; text-transform:uppercase; letter-spacing:.12em; color:#9AA396; font-weight:700; }
.pul-hud-pill.lime{
  background:rgba(200,242,74,.14); border-color:rgba(200,242,74,.4);
}
.pul-hud-pill.lime b{ color:#C8F24A; }

.pul-ex-dock{
  position:absolute; z-index:4; left:12px; right:12px;
  bottom:calc(118px + var(--safe-b,0px));
  display:flex; gap:6px; overflow-x:auto; pointer-events:none;
  scrollbar-width:none;
  transition: opacity .3s ease, transform .35s cubic-bezier(.22,1,.36,1);
}
.phone.pul-sheet-open .pul-ex-dock{ pointer-events:auto; }
.pul-ex-dock::-webkit-scrollbar{ display:none; }
.pul-ex-dock button{
  flex:0 0 auto; appearance:none; border:1px solid rgba(255,255,255,.14);
  background:rgba(12,12,12,.7); color:#F4F7F0; border-radius:999px;
  padding:7px 11px; font:inherit; font-size:10px; font-weight:800;
  text-transform:uppercase; letter-spacing:.08em;
  pointer-events:auto;
}
.pul-ex-dock button.on{
  background:#C8F24A; color:#0A0C05; border-color:#C8F24A;
  box-shadow:0 0 18px rgba(200,242,74,.35);
}
.pul-sheet-handle{
  position:absolute; z-index:5; left:50%; transform:translateX(-50%);
  bottom:calc(92px + var(--safe-b,0px));
  appearance:none; border:1px solid rgba(255,255,255,.14);
  background:rgba(12,12,12,.72); color:#F4F7F0; border-radius:999px;
  padding:6px 14px; font-size:10px; font-weight:800; letter-spacing:.08em;
  text-transform:uppercase; backdrop-filter:blur(12px);
  pointer-events:auto; transition: opacity .25s ease;
}
.pul-ui-chip{
  position:absolute; z-index:6; right:14px; left:auto;
  top:auto; bottom: calc(100px + var(--safe-b, 0px));
  appearance:none; border:1px solid rgba(200,242,74,.35);
  background:rgba(12,12,12,.75); color:#C8F24A; border-radius:999px;
  padding:12px 16px; font-size:12px; font-weight:900; letter-spacing:.06em;
  min-height:48px; min-width:48px;
  pointer-events:none; opacity:0;
  transform: translate3d(0, 10px, 0);
  transition: opacity .3s cubic-bezier(.22,1,.36,1), transform .34s cubic-bezier(.22,1.2,.36,1);
  transition-delay: 0s;
  box-shadow: 0 8px 28px rgba(0,0,0,.45), 0 0 0 1px rgba(200,242,74,.35);
}
.phone.pul-skin.pul-immersive:not(.pul-body-focus) .pul-ui-chip{
  opacity: 0;
  transform: translate3d(0, 10px, 0);
  pointer-events: none;
  transition-delay: 0s;
}

.pul-callout{
  position:absolute; z-index:8; right:14px; top:38%;
  display:flex; align-items:center; pointer-events:none;
  opacity:0; transform: translate3d(18px,0,0) scale(.94);
  transition: opacity .32s cubic-bezier(.22,1,.36,1), transform .36s cubic-bezier(.22,1.2,.36,1);
}
.pul-callout.on{ opacity:1; transform: translate3d(0,0,0) scale(1); }
.pul-callout-line{ width:40px; height:1px; background:linear-gradient(90deg, transparent, rgba(200,242,74,.85)); }
.pul-callout-card{
  background:rgba(10,10,10,.82); border:1px solid rgba(200,242,74,.4);
  border-radius:14px; padding:10px 12px; backdrop-filter:blur(14px); color:#F4F7F0;
  box-shadow:0 0 24px rgba(200,242,74,.18);
  max-width:160px;
}
.pul-callout-card b{ display:block; font-size:18px; font-weight:800; color:#C8F24A; }
.pul-callout-card span{ font-size:9px; letter-spacing:.06em; text-transform:uppercase; color:#9AA396; font-weight:700; line-height:1.35; }
.pul-muscle-chip{
  position:absolute; z-index:8; left:50%; bottom:calc(150px + var(--safe-b,0px));
  display:flex; gap:8px; align-items:center;
  background:rgba(12,12,12,.88); color:#fff; border-radius:999px; padding:10px 14px;
  font-weight:800; font-size:12px; border:1px solid rgba(255,255,255,.16);
  pointer-events:none;
  opacity:0; transform: translate3d(-50%, 12px, 0);
  transition: opacity .3s cubic-bezier(.22,1,.36,1), transform .34s cubic-bezier(.22,1.2,.36,1);
}
.pul-muscle-chip.on{ opacity:1; pointer-events:auto; transform: translate3d(-50%, 0, 0); }
.pul-muscle-chip button{
  appearance:none; border:0; background:var(--pul-lime); color:#0A0C05;
  border-radius:999px; padding:8px 12px; font-weight:900; font-size:12px;
}

/* ——— t1072u choreographed collapse / restore (opacity + transform only) ——— */
/* Resting transition defaults = restore timing (staggered in) */
.pul-hud-strip{
  transition: opacity .3s cubic-bezier(.22,1,.36,1), transform .32s cubic-bezier(.22,1.2,.36,1);
  transition-delay: .1s;
  transform: translate3d(0,0,0);
}
.pul-ex-dock{
  transition: opacity .3s cubic-bezier(.22,1,.36,1), transform .32s cubic-bezier(.22,1.2,.36,1);
  transition-delay: .08s;
  transform: translate3d(0,0,0);
}
.pul-sheet-handle{
  transition: opacity .28s cubic-bezier(.22,1,.36,1), transform .3s cubic-bezier(.22,1.2,.36,1);
  transition-delay: .06s;
  /* keep centered */
  transform: translate3d(-50%,0,0);
}
.phone.pul-skin.pul-immersive .tabs nav{
  transition: opacity .3s cubic-bezier(.22,1,.36,1), transform .34s cubic-bezier(.22,1.2,.36,1);
  transition-delay: .04s;
  transform: translate3d(0,0,0);
}
.phone.pul-skin.pul-immersive .v6-strip{
  transition: opacity .28s cubic-bezier(.22,1,.36,1), transform .3s cubic-bezier(.22,1.2,.36,1);
  transition-delay: .08s;
  transform: translate3d(0,0,0);
}
.phone.pul-skin.pul-immersive .screen > *:not(.anatomy-view){
  transition: opacity .3s cubic-bezier(.22,1,.36,1), transform .32s cubic-bezier(.22,1.2,.36,1);
  transition-delay: .12s;
  transform: translate3d(0,0,0);
}
.phone.pul-skin.pul-immersive #s-anatomy .an-top,
.phone.pul-skin.pul-immersive #s-anatomy .an-hud{
  transition: opacity .28s cubic-bezier(.22,1,.36,1), transform .3s cubic-bezier(.22,1.2,.36,1);
  transition-delay: .1s;
  transform: translate3d(0,0,0);
}

/* Collapse (body-focus): stagger out — panels first, nav last; no layout shift */
.phone.pul-skin.pul-immersive.pul-body-focus .screen > *:not(.anatomy-view){
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translate3d(0, 10px, 0) !important;
  transition-delay: 0s;
}
.phone.pul-skin.pul-immersive.pul-body-focus .pul-hud-strip,
.phone.pul-skin.pul-immersive.pul-body-focus .v6-strip{
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translate3d(0, -10px, 0) !important;
  transition-delay: .04s;
}
.phone.pul-skin.pul-immersive.pul-body-focus .pul-ex-dock{
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translate3d(0, 14px, 0) !important;
  transition-delay: .06s;
}
.phone.pul-skin.pul-immersive.pul-body-focus .pul-sheet-handle{
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translate3d(-50%, 14px, 0) !important;
  transition-delay: .08s;
}
.phone.pul-skin.pul-immersive.pul-body-focus .tabs nav{
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translate3d(0, 18px, 0) !important;
  transition-delay: .1s;
}
.phone.pul-skin.pul-immersive.pul-body-focus #s-anatomy .an-top,
.phone.pul-skin.pul-immersive.pul-body-focus #s-anatomy .an-hud{
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translate3d(0, -8px, 0) !important;
  transition-delay: .02s;
}
.phone.pul-skin.pul-immersive.pul-body-focus .screen{ background: transparent !important; }
.phone.pul-skin.pul-immersive.pul-body-focus .pul-ui-chip{
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) !important;
  pointer-events: auto !important;
  transition-delay: .22s;
}

.phone.pul-anatomy-mode .pul-hud-strip{ display:none !important; }
.phone.pul-anatomy-mode:not(.pul-body-focus) .pul-ex-dock{ opacity:.35; }
.phone.pul-anatomy-mode .eyebrow.scroll-hint{ display:none !important; }

.phone.pul-skin.pul-immersive .eyebrow.scroll-hint{
  position:absolute; left:0; right:0; bottom:calc(130px + var(--safe-b,0px));
  text-align:center; color:rgba(244,247,240,.4)!important; font-size:10px; letter-spacing:.18em;
  pointer-events:none; z-index:3;
}

/* Depth gradient backdrop + vignette */
.phone.pul-skin.pul-immersive::before{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(70% 50% at 50% 42%, transparent 30%, rgba(0,0,0,.55) 100%),
    radial-gradient(90% 55% at 50% -8%, rgba(200,242,74,.14), transparent 52%),
    radial-gradient(55% 40% at 88% 22%, rgba(90,160,255,.06), transparent 50%),
    linear-gradient(180deg, #0a0c0a 0%, #050505 45%, #030403 100%);
}

@media (prefers-reduced-motion: reduce){
  .phone.pul-skin.pul-immersive .wcard,
  .phone.pul-skin.pul-immersive .tabs nav,
  .pul-hud-strip, .pul-ex-dock{ transition:none!important; transform:none!important; }
  .phone.pul-body-focus .pul-hud-strip,
  .phone.pul-body-focus .tabs nav{ opacity:0.15 !important; }
}

/* ——— t1069u / t1070u UX + t1072u motion ——— */
/* 44px minimum tap targets */
.phone.pul-skin.pul-immersive .tabs nav button,
.phone.pul-skin.pul-immersive .pul-ex-dock button,
.phone.pul-skin.pul-immersive .pul-sheet-handle,
.phone.pul-skin.pul-immersive .pul-ui-chip,
.phone.pul-skin.pul-immersive .pul-muscle-chip button,
.phone.pul-skin.pul-immersive .an-sports button,
.phone.pul-skin.pul-immersive .an-toggle button{
  min-height:44px; min-width:44px;
}
.phone.pul-skin.pul-immersive .qi,
.phone.pul-skin.pul-immersive .home-grid a,
.phone.pul-skin.pul-immersive #s-home .pad > a{
  min-height:56px; min-width:56px;
}

/* Scroll zones: content pans; body stage stays rotate/pinch */
.phone.pul-skin.pul-immersive .screen{
  touch-action: pan-y;
  overscroll-behavior: contain;
}
#pulBodyStage, #pulBodyStage canvas{ touch-action: none !important; }

/* Tab panels: exclusive pul-pane-active (v6 keeps every screen .on in the strip) */
.phone.pul-skin.pul-immersive .v6-strip{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  transform: none !important;
  overflow: visible !important;
  z-index:3;
  pointer-events:none !important;
}
.phone.pul-skin.pul-immersive .screen{
  display:flex !important;
  position:absolute !important;
  left:0; right:0; top:0; bottom:0;
  width:100% !important;
  max-width:100% !important;
  opacity:0 !important;
  visibility:hidden;
  transform: translate3d(0, 12px, 0) !important;
  transition:
    opacity .3s cubic-bezier(.22,1,.36,1),
    transform .34s cubic-bezier(.22,1.2,.36,1),
    visibility 0s linear .34s;
  animation: none !important;
  pointer-events: none !important;
  z-index:3;
  will-change: opacity, transform;
}
/* .on alone is NOT enough — v6 marks all strip kids .on */
.phone.pul-skin.pul-immersive .screen.on{
  animation: none !important;
}
.phone.pul-skin.pul-immersive .screen.pul-pane-active{
  opacity:1 !important;
  visibility:visible;
  transform: translate3d(0, 0, 0) !important;
  transition:
    opacity .32s cubic-bezier(.22,1,.36,1),
    transform .34s cubic-bezier(.22,1.2,.36,1),
    visibility 0s;
  z-index:4;
}
/* Kill v6 horizontal pane motion competing with fades */
.phone.pul-skin.pul-immersive .screen.v6-pane,
.phone.pul-skin.pul-immersive .screen.m-pane,
.phone.pul-skin.pul-immersive .screen.v6-near{
  /* keep classes; opacity/transform owned above */
}
.phone.pul-skin.pul-immersive .screen.pul-pane-out{
  opacity:0 !important;
  visibility:hidden;
  transform: translate3d(0, -8px, 0) !important;
  transition:
    opacity .26s cubic-bezier(.4,0,.2,1),
    transform .28s cubic-bezier(.4,0,.2,1),
    visibility 0s linear .28s;
  pointer-events:none !important;
  z-index:3;
}

/* Gesture hint — shown once */
.pul-gesture-hint{
  position:absolute; z-index:6; left:50%; bottom: calc(168px + var(--safe-b,0px));
  transform:translate3d(-50%, 8px, 0);
  background:rgba(10,10,10,.82); color:#F4F7F0;
  border:1px solid rgba(200,242,74,.35); border-radius:999px;
  padding:10px 16px; font-size:12px; font-weight:700; letter-spacing:.02em;
  pointer-events:none; opacity:0;
  transition: opacity .35s cubic-bezier(.22,1,.36,1), transform .35s cubic-bezier(.22,1.2,.36,1);
  white-space:nowrap; backdrop-filter:blur(12px);
}
.pul-gesture-hint.on{ opacity:1; transform:translate3d(-50%, 0, 0); }
.pul-gesture-hint.hide{ opacity:0; transform:translate3d(-50%, 8px, 0); }

/* Sheet swipe affordance */
.pul-sheet-handle{ min-height:44px !important; bottom: calc(88px + var(--safe-b,0px)) !important; }
.phone.pul-sheet-open .pul-ex-dock{
  pointer-events:auto !important;
  opacity:1 !important;
  transform: translate3d(0,0,0) !important;
  transition-delay: 0s !important;
  padding:10px 4px 6px;
  background:rgba(8,8,8,.72);
  border-radius:18px 18px 0 0;
  border:1px solid rgba(255,255,255,.1);
  border-bottom:0;
}
.pul-sheet-scrim{
  display:block; position:absolute; inset:0; z-index:3;
  background:rgba(0,0,0,.25);
  pointer-events:none; opacity:0;
  transition: opacity .28s cubic-bezier(.22,1,.36,1);
}
.phone.pul-sheet-open .pul-sheet-scrim{ opacity:1; pointer-events:auto; }

/* Tap feedback — transform only */
.phone.pul-skin.pul-immersive button:active,
.phone.pul-skin.pul-immersive a:active,
.phone.pul-skin.pul-immersive .wcard:active,
.phone.pul-skin.pul-immersive .qi:active{
  transform: scale(.97);
}

.pul-empty{
  text-align:center; padding:28px 18px; color:rgba(244,247,240,.55);
  font-weight:700; font-size:13px; pointer-events:none;
}
.pul-body-load{ z-index:5; }

@media (prefers-reduced-motion: reduce){
  .phone.pul-skin.pul-immersive .screen,
  .phone.pul-skin.pul-immersive .screen.on,
  .phone.pul-skin.pul-immersive .screen.pul-pane-out,
  .phone.pul-skin.pul-immersive .tabs nav,
  .pul-hud-strip, .pul-ex-dock, .pul-sheet-handle, .pul-ui-chip,
  .phone.pul-skin.pul-immersive .screen > *:not(.anatomy-view),
  .pul-gesture-hint, .pul-sheet-scrim{
    transition:none !important;
    animation:none !important;
  }
  .phone.pul-body-focus .pul-hud-strip,
  .phone.pul-body-focus .tabs nav{ opacity:0.15 !important; transform:none !important; }
  .pul-ui-chip{ opacity:0 !important; }
  .phone.pul-body-focus .pul-ui-chip{ opacity:1 !important; }
}


/* ——— t1074u / t1073u top + bottom clearance above menus ——— */
.phone.pul-skin.pul-immersive{
  --pul-nav-h: 92px;
  --pul-hud-h: 64px;
  --pul-bottom-clear: calc(var(--pul-nav-h) + var(--safe-b, 0px) + 28px);
  --pul-top-clear: calc(var(--safe-t, 62px) + var(--pul-hud-h) + 12px);
}
.phone.pul-skin.pul-immersive .screen,
.phone.pul-skin.pul-immersive .screen.on,
.phone.pul-skin.pul-immersive .screen.pul-pane-active{
  padding-top: var(--pul-top-clear) !important;
  padding-bottom: calc(var(--pul-bottom-clear) + 36px) !important;
  scroll-padding-top: var(--pul-top-clear);
  scroll-padding-bottom: calc(var(--pul-bottom-clear) + 36px);
}
.phone.pul-anatomy-mode{
  --pul-hud-h: 12px;
}
.phone.pul-skin.pul-immersive .home-chrome,
.phone.pul-skin.pul-immersive .screen > .pad:first-of-type,
.phone.pul-skin.pul-immersive #s-cal > .pad:first-of-type,
.phone.pul-skin.pul-immersive #s-work > .pad:first-of-type,
.phone.pul-skin.pul-immersive #s-smooth > .pad:first-of-type,
.phone.pul-skin.pul-immersive #s-progress > .pad:first-of-type{
  padding-top: 4px;
}
.phone.pul-skin.pul-immersive .back{
  top: calc(10px + var(--safe-t, 62px));
}
.phone.pul-skin.pul-immersive .pul-ex-dock{
  bottom: calc(var(--pul-nav-h) + var(--safe-b, 0px) + 12px) !important;
}
.phone.pul-skin.pul-immersive .pul-sheet-handle{
  bottom: calc(var(--pul-nav-h) + var(--safe-b, 0px) + 4px) !important;
}
.phone.pul-skin.pul-immersive .pul-ui-chip{
  bottom: calc(var(--pul-nav-h) + var(--safe-b, 0px) + 56px) !important;
}
.phone.pul-skin.pul-immersive .pul-muscle-chip{
  bottom: calc(var(--pul-nav-h) + var(--safe-b, 0px) + 64px) !important;
}
/* sticky / fixed workout CTAs sit above nav */
.phone.pul-skin.pul-immersive .sticky-cta,
.phone.pul-skin.pul-immersive .sticky-bar,
.phone.pul-skin.pul-immersive #btnTimer,
.phone.pul-skin.pul-immersive #btnDone,
.phone.pul-skin.pul-immersive #btnGoHard,
.phone.pul-skin.pul-immersive .detail-actions,
.phone.pul-skin.pul-immersive .sticky-chips{
  bottom: calc(var(--pul-nav-h) + var(--safe-b, 0px) + 10px) !important;
  margin-bottom: 0;
  z-index: 6;
}
/* keep clearance vars stable during collapse so restore has no layout jump */
.phone.pul-body-focus{
  --pul-nav-h: 92px;
}

/* ——— t1076u body-home + left panel ——— */
.phone.pul-redesign{ --pul-panel-w: 100%; --pul-mini-scale: 0.27; }
.phone.pul-redesign .tabs,
.phone.pul-redesign .tabs nav,
.phone.pul-redesign .tabs nav button{
  display:none !important;
  pointer-events:none !important;
  visibility:hidden !important;
  z-index:0 !important;
}
.phone.pul-redesign .pul-hud-strip,
.phone.pul-redesign .pul-ex-dock,
.phone.pul-redesign .pul-sheet-handle,
.phone.pul-redesign .eyebrow.scroll-hint,
.phone.pul-redesign .pul-radial{ display:none !important; }

.phone.pul-redesign #pulBodyStage{
  transform-origin: 100% 100%;
  transition: none; /* spring-driven with the panel */
  transform: none;
  will-change: auto;
}
.phone.pul-redesign.pul-nav-open #pulBodyStage{
  z-index: 11;
  transform: translate3d(-10px, calc(-1 * (var(--safe-b, 0px) + 28px)), 0) scale(0.27);
}
.phone.pul-redesign.pul-nav-morph #pulBodyStage{
  will-change: transform;
}

.pul-launcher{
  position:absolute; z-index:14; left:10px; top:50%;
  transform:translate3d(0,-50%,0);
  width:48px; display:flex; flex-direction:column; gap:6px;
  padding:6px; border-radius:28px;
  background:rgba(12,12,12,.62); border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(16px) saturate(1.2);
  -webkit-backdrop-filter:blur(16px) saturate(1.2);
  pointer-events:auto;
  transition: opacity .4s ease, transform .46s cubic-bezier(.22,1.2,.36,1);
}
.pul-launcher button{
  appearance:none; border:0; background:transparent; color:#F4F7F0;
  min-width:36px; min-height:36px; border-radius:999px;
  font:700 10px/1 inherit; letter-spacing:.04em;
  color:#C8F24A;
}
.pul-launcher button.on{ background:rgba(200,242,74,.2); }
.pul-launcher .pul-go{
  background:#C8F24A; color:#0A0C05; font-weight:900; font-size:11px;
  box-shadow:0 0 18px rgba(200,242,74,.35);
}

.pul-nav-sheet{
  position:absolute; z-index:7; left:0; top:0; bottom:0; width:var(--pul-panel-w, 100%);
  background:rgba(7,7,7,.94); border-right:1px solid rgba(255,255,255,.12);
  /* no backdrop-filter: iOS Safari composites it over later siblings */
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  opacity:0; pointer-events:none;
  transform: translate3d(-16%,0,0) scale(0.22, 0.72);
  transform-origin: 100% 100%; /* unfold as the body shrinks into the lower-right */
  transition: none;
}
.phone.pul-nav-open .pul-nav-sheet{
  opacity:1; pointer-events:auto; transform:none;
}
.pul-nav-sheet-head{
  display:flex; align-items:center; gap:10px;
  padding: calc(38px + var(--safe-t, 0px)) 16px 10px 64px;
}
.pul-nav-close{
  appearance:none; border:1px solid rgba(255,255,255,.14);
  background:rgba(12,12,12,.55); color:#C8F24A; border-radius:999px;
  min-height:40px; padding:8px 12px; font:800 12px inherit;
}
.pul-nav-title{ font-weight:800; color:#F4F7F0; letter-spacing:.04em; }
.pul-nav-sheet-head{ touch-action:none; }
.phone.pul-nav-dragging, .phone.pul-nav-dragging *{
  user-select:none !important; -webkit-user-select:none !important;
}

/* Screens occupy the left panel only when open; hidden on body-home */
.phone.pul-redesign:not(.pul-nav-open):not(.pul-nav-morph) .screen{
  opacity:0 !important; visibility:hidden !important; pointer-events:none !important;
}
.pul-nav-sheet-head{ position:relative; z-index:12; }
.phone.pul-redesign.pul-nav-open .screen,
.phone.pul-redesign.pul-nav-morph .screen{
  position:absolute !important;
  top: calc(var(--safe-t, 0px) + 78px) !important;
  left:0 !important; right:0 !important; bottom:0 !important;
  width:var(--pul-panel-w, 100%) !important;
  height:auto !important; max-height:none !important;
  overflow-x:hidden !important; overflow-y:auto !important;
  -webkit-overflow-scrolling:touch;
  padding-top: 8px !important;
  padding-left: 62px !important;
  padding-right: 16px !important;
  padding-bottom: calc(268px + var(--safe-b, 0px)) !important;
  background: transparent !important;
  z-index:8 !important;
  transform:none !important;
  box-sizing:border-box !important;
  color:#F4F7F0 !important;
}
.phone.pul-redesign.pul-nav-open .screen:not(.pul-pane-active),
.phone.pul-redesign.pul-nav-morph .screen:not(.pul-pane-active){
  opacity:0 !important; visibility:hidden !important; pointer-events:none !important;
}
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active,
.phone.pul-redesign.pul-nav-morph .screen.pul-pane-active{
  opacity:1 !important; visibility:visible !important;
  display:block !important;
}
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active{
  pointer-events:auto !important;
}
.phone.pul-redesign.pul-nav-morph .screen.pul-pane-active{
  pointer-events:none !important;
}
/* Beat pass-through + body-focus + m-reveal:0 so cards stay painted */
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active > *,
.phone.pul-redesign.pul-nav-open.pul-body-focus .screen.pul-pane-active,
.phone.pul-redesign.pul-nav-open.pul-body-focus .screen.pul-pane-active > *{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .m-reveal{
  opacity:1 !important; transform:none !important;
}
.phone.pul-redesign.pul-nav-open .v6-strip{
  position:static !important; transform:none !important;
  width:100% !important; overflow:visible !important;
  pointer-events:auto !important; opacity:1 !important;
}
/* Reflow full-width cards into the ~58% column */
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .wcard,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .rcard,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .hero,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .search-float,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .list,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .cal,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .cal-wrap,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .cal-chrome,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .pad,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .statrow,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .chart,
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .h-scroll{
  max-width:100% !important;
  width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active img{
  max-width:100% !important; height:auto !important;
}

/* Session chip */
.pul-session{ display:none; position:absolute; z-index:20; pointer-events:auto; }
.pul-session.on{
  display:flex; flex-direction:column; gap:8px;
  left:64px; right:14px; bottom: calc(16px + var(--safe-b,0px));
  background:rgba(10,10,10,.82); border:1px solid rgba(200,242,74,.35);
  border-radius:18px; padding:10px 12px;
  backdrop-filter:blur(16px);
  color:#F4F7F0;
  transform:none;
  animation: pulSesIn .4s cubic-bezier(.22,1.2,.36,1) both;
}
@keyframes pulSesIn{ from{ opacity:0; transform:translate3d(0,12px,0);} to{opacity:1;transform:none;} }
.phone.pul-nav-open .pul-session.on{
  left:62px; right:14px; width:auto;
}
.pul-ses-main{ appearance:none; border:0; background:transparent; color:inherit; text-align:left; padding:0; }
.pul-ses-main b{ display:block; font-size:28px; font-weight:800; color:#C8F24A; letter-spacing:.02em; }
.pul-ses-main .eyebrow{ color:#9AA396; font-size:10px; letter-spacing:.14em; text-transform:uppercase; }
.pul-ses-actions{ display:flex; gap:8px; }
.pul-ses-actions button, .pul-ses-sum button{
  flex:1; appearance:none; border:0; border-radius:999px; min-height:44px;
  font:800 13px inherit; background:rgba(255,255,255,.1); color:#F4F7F0;
}
.pul-ses-actions button[data-ses="resume"],
.pul-ses-sum button[data-ses="done"]{ background:#C8F24A; color:#0A0C05; }
.pul-ses-actions button.danger, .pul-ses-actions button[data-ses="stop"]{
  background:rgba(200,80,60,.25); color:#ffb4a8;
}
.pul-ses-sum b{ display:block; font-size:22px; margin:4px 0 8px; }
#s-detail #btnTimer, #s-detail #btnDone{ display:none !important; }

@media (prefers-reduced-motion: reduce){
  .phone.pul-redesign #pulBodyStage, .pul-nav-sheet, .pul-launcher, .pul-session.on{
    transition:none !important; animation:none !important;
  }
}

/* t1078u: callout + chip clear of rail / panel / session */
.phone.pul-redesign .pul-callout{
  z-index:16; right:12px; top:32%; max-width:46vw;
}
.phone.pul-nav-open .pul-callout{
  right: 3%; top: 30%;
  max-width: 38vw;
}
.phone.pul-redesign .pul-muscle-chip{
  left:auto; right:12px; transform: translate3d(0, 12px, 0);
  bottom: calc(18px + var(--safe-b, 0px));
}
.phone.pul-redesign .pul-muscle-chip.on{ transform: translate3d(0,0,0); }
.phone.pul-redesign .pul-session.on ~ .pul-muscle-chip,
.phone.pul-redesign:has(.pul-session.on) .pul-muscle-chip{
  bottom: calc(128px + var(--safe-b, 0px));
}
.phone.pul-nav-open .pul-muscle-chip{
  left: auto; right: 4%;
  bottom: calc(12px + var(--safe-b, 0px));
}
.phone.pul-nav-open .pul-session.on,
.phone.pul-nav-morph .pul-session.on{
  left: 62px;
  right: 36%;
  width: auto;
  bottom: calc(16px + var(--safe-b, 0px));
}
.phone.pul-redesign:not(.pul-nav-open) .pul-session.on{
  left: 64px;
  right: 14px;
  width: auto;
}

/* ——— t1079u brand + intro ——— */
.pul-brand{
  position:absolute; z-index:13;
  top: calc(10px + var(--safe-t, 0px));
  left: 68px; right: 16px;
  display:flex; align-items:center; justify-content:center; gap:8px;
  pointer-events:none;
  color:#C8F24A;
}
.pul-brand svg{ width:22px; height:22px; display:block; flex:0 0 auto; }
.pul-brand-word{
  font:800 13px/1 "Avenir Next", "Segoe UI", sans-serif;
  letter-spacing:.22em; text-transform:uppercase;
  color:#C8F24A;
}
.phone.pul-nav-open .pul-brand,
.phone.pul-nav-morph .pul-brand{
  left: 68px;
  right: 16px;
  justify-content: flex-start;
  transform:none;
}
.pul-intro{
  position:absolute; inset:0; z-index:50;
  background:#050505;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px;
  pointer-events:auto;
  opacity:1;
  transition: opacity .5s ease;
}
.pul-intro.out{ opacity:0; pointer-events:none; }
.pul-intro-mark{ width:88px; height:88px; }
.pul-intro-mark .ring, .pul-intro-mark .pulse{
  fill:none; stroke:#C8F24A; stroke-linecap:round; stroke-linejoin:round;
}
.pul-intro-mark .ring{ stroke-width:1.6; stroke-dasharray:96; stroke-dashoffset:96; opacity:.55;
  animation: pulDraw 1.05s cubic-bezier(.22,1,.36,1) forwards; }
.pul-intro-mark .pulse{ stroke-width:2.4; stroke-dasharray:80; stroke-dashoffset:80;
  animation: pulDraw 1.15s .12s cubic-bezier(.22,1,.36,1) forwards;
  filter: drop-shadow(0 0 10px rgba(200,242,74,.45)); }
.pul-intro-word{
  font:800 18px/1 "Avenir Next", "Segoe UI", sans-serif;
  letter-spacing:.28em; text-transform:uppercase; color:#C8F24A;
  opacity:0; transform:translate3d(0,10px,0);
  animation: pulWordIn .55s .55s cubic-bezier(.22,1,.36,1) forwards;
}
.pul-intro-skip{
  position:absolute; bottom: calc(28px + var(--safe-b,0px));
  font:700 11px/1 inherit; letter-spacing:.16em; text-transform:uppercase;
  color:rgba(244,247,240,.45);
}
@keyframes pulDraw{ to{ stroke-dashoffset:0; } }
@keyframes pulWordIn{ to{ opacity:1; transform:none; } }
.phone.pul-introing .pul-launcher,
.phone.pul-introing .pul-brand{
  opacity:0; pointer-events:none;
  transition: opacity .55s ease;
}
.phone.pul-redesign .pul-launcher,
.phone.pul-redesign .pul-brand{
  transition: opacity .55s ease, transform .46s cubic-bezier(.22,1.2,.36,1);
}
@media (prefers-reduced-motion: reduce){
  .pul-intro-mark .ring, .pul-intro-mark .pulse, .pul-intro-word{ animation:none !important; opacity:1; transform:none; stroke-dashoffset:0; }
  .pul-intro{ transition:none !important; }
}
.pul-brand .ring,.pul-brand .pulse{fill:none;stroke:#C8F24A;stroke-linecap:round;stroke-linejoin:round}
.pul-brand .ring{stroke-width:1.6;opacity:.55}
.pul-brand .pulse{stroke-width:2.4}

.phone.pul-redesign.pul-nav-open .cal-head,
.phone.pul-redesign.pul-nav-open .cal-chrome,
.phone.pul-redesign.pul-nav-open .search-float{
  flex-wrap:wrap;
  max-width:100%;
}
.phone.pul-redesign.pul-nav-open .cal-mode{ flex-shrink:0; }

.pul-mini-hit{
  display:none; position:absolute; z-index:16;
  top:auto;
  right: 6px;
  bottom: calc(var(--safe-b, 0px) + 8px);
  width: 32%; height: 30%;
  border:0; padding:0; background:transparent; cursor:pointer;
  pointer-events:auto;
}
.phone.pul-nav-open .pul-mini-hit,
.phone.pul-nav-morph .pul-mini-hit{ display:block; }

.pul-ses-actions button[data-ses="reset"],
.pul-ses-actions button[data-ses="reset-go"]{
  background:rgba(200,242,74,.14); color:#C8F24A;
}
.pul-ses-actions{ flex-wrap:wrap; }
.pul-ses-row{ display:flex; align-items:center; justify-content:space-between; gap:10px; font:700 13px inherit; }
.pul-ses-row [data-ses-time]{ font-size:22px; color:#C8F24A; font-weight:800; }

/* ——— t1084u full-width Mesh3D panel boards ——— */
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active,
.phone.pul-redesign.pul-nav-morph .screen.pul-pane-active{
  --pul-gutter: 16px;
  --pul-lime: #C8F24A;
  --pul-ink: #F4F7F0;
  --pul-muted: #9AA396;
}
.pul-board{ display:flex; flex-direction:column; gap:16px; width:100%; margin:0 0 18px; box-sizing:border-box; }
.pul-kicker{ margin:0; font-size:11px; letter-spacing:.16em; text-transform:uppercase; font-weight:700; color:var(--pul-muted,#9AA396); }
.pul-display{ margin:4px 0 0; font-size:28px; line-height:1.12; font-weight:800; letter-spacing:-.02em; color:var(--pul-ink,#F4F7F0); }
.pul-sub{ margin:6px 0 0; font-size:13px; line-height:1.4; color:var(--pul-muted,#9AA396); }
.pul-glass{
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;
  box-shadow: 0 12px 36px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.08);
}
.pul-hero{
  padding:18px;
  border-radius:24px;
  background:
    linear-gradient(135deg, rgba(200,242,74,.2), rgba(200,242,74,0) 46%),
    linear-gradient(180deg, rgba(22,22,18,.94), rgba(8,8,8,.96));
  border:1px solid rgba(200,242,74,.3);
  box-shadow: 0 16px 40px rgba(0,0,0,.4), inset 0 1px 0 rgba(200,242,74,.16);
}
.pul-hero .pul-cta{
  display:inline-flex; align-items:center; justify-content:center;
  margin-top:14px; min-height:44px; padding:0 16px; border:0; border-radius:999px;
  background:#C8F24A; color:#0A0C05; font:800 13px inherit;
}
.pul-statgrid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.pul-statcell{ padding:14px 12px; }
.pul-statcell b{ display:block; font-size:22px; font-weight:800; color:#C8F24A; letter-spacing:-.02em; }
.pul-statcell span{ display:block; margin-top:4px; font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:#9AA396; }
.pul-grid-2{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.pul-tile{ padding:14px; min-height:88px; text-align:left; color:inherit; width:100%;
  appearance:none; font:inherit; }
.pul-tile b{ display:block; font-size:15px; font-weight:800; color:#F4F7F0; }
.pul-tile span{ display:block; margin-top:6px; font-size:12px; color:#9AA396; }
.pul-row{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:12px 14px;
}
.pul-row strong{ display:block; font-size:14px; color:#F4F7F0; }
.pul-row em{ display:block; margin-top:3px; font-style:normal; font-size:12px; color:#9AA396; }
.pul-row .tag{ flex:0 0 auto; font-size:11px; font-weight:800; color:#C8F24A; letter-spacing:.06em; }
.pul-heat{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.pul-heat button{
  appearance:none; border:1px solid rgba(255,255,255,.1); border-radius:16px;
  min-height:72px; padding:10px 8px; color:#F4F7F0; font:inherit; text-align:left;
  background: linear-gradient(180deg, rgba(200,242,74, var(--v, .18)), rgba(12,12,12,.9));
}
.pul-heat button b{ display:block; font-size:13px; }
.pul-heat button span{ display:block; margin-top:6px; font-size:11px; color:#C8F24A; font-weight:800; }
.pul-rings{ display:flex; gap:14px; align-items:center; padding:16px 18px; }
.pul-rings svg{ width:92px; height:92px; flex:0 0 auto; }
.pul-rings .meta{ flex:1; min-width:0; }
.pul-rings .meta p{ margin:4px 0; font-size:13px; color:#F4F7F0; }
.pul-ach{ display:flex; flex-wrap:wrap; gap:8px; }
.pul-pill{
  display:inline-flex; align-items:center; min-height:32px; padding:0 12px;
  border-radius:999px; border:1px solid rgba(200,242,74,.28);
  background:rgba(200,242,74,.1); color:#C8F24A; font-size:12px; font-weight:700;
}
.pul-bars{ display:flex; align-items:flex-end; gap:6px; height:88px; padding:4px 2px 0; }
.pul-bars i{ flex:1; display:block; border-radius:6px 6px 2px 2px;
  background: linear-gradient(180deg, #C8F24A, rgba(200,242,74,.25));
  min-height:8px; }

.phone.pul-redesign.pul-nav-open .cal-chrome,
.phone.pul-redesign.pul-nav-open .cal-head,
.phone.pul-redesign.pul-nav-open .search-float,
.phone.pul-redesign.pul-nav-open .chip-row,
.phone.pul-redesign.pul-nav-open .list,
.phone.pul-redesign.pul-nav-open .cal-wrap,
.phone.pul-redesign.pul-nav-open .cal-agenda,
.phone.pul-redesign.pul-nav-open .pad{
  width:100%; max-width:100%; box-sizing:border-box;
}
.phone.pul-redesign.pul-nav-open .search-float{
  display:flex; gap:10px; margin:0 0 14px; padding:0;
}
.phone.pul-redesign.pul-nav-open .search-float input{
  flex:1; min-height:44px; border-radius:16px;
  border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06);
  color:#F4F7F0; padding:0 14px; font:inherit;
}
.phone.pul-redesign.pul-nav-open #workList,
.phone.pul-redesign.pul-nav-open #smoothList,
.phone.pul-redesign.pul-nav-open #calList{
  display:flex; flex-direction:column; gap:12px;
}
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .wcard{
  display:grid; grid-template-columns:108px 1fr; gap:0;
  border-radius:20px; overflow:hidden; margin:0;
  background:rgba(16,16,16,.82); border:1px solid rgba(255,255,255,.1);
}
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .wcard .pic{
  width:108px; height:100%; min-height:96px; aspect-ratio:auto;
  border-radius:0;
}
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .wcard .meta{ padding:12px 14px; }
.phone.pul-redesign.pul-nav-open .screen.pul-pane-active .wcard h3{ margin:0 0 4px; font-size:16px; color:#F4F7F0; }
.phone.pul-redesign.pul-nav-open .chip-row{
  display:flex; flex-wrap:wrap; gap:8px; margin:0 0 14px;
}
.phone.pul-redesign.pul-nav-open .cal-head h2,
.phone.pul-redesign.pul-nav-open #s-work h2,
.phone.pul-redesign.pul-nav-open #s-smooth h2,
.phone.pul-redesign.pul-nav-open #s-progress h2{
  font-size:30px; letter-spacing:-.03em; color:#F4F7F0;
}


.phone.pul-skin.pul-immersive.pul-redesign.pul-nav-open .screen,
.phone.pul-skin.pul-immersive.pul-redesign.pul-nav-open .screen.on,
.phone.pul-skin.pul-immersive.pul-redesign.pul-nav-open .screen.pul-pane-active,
.phone.pul-skin.pul-immersive.pul-redesign.pul-nav-morph .screen,
.phone.pul-skin.pul-immersive.pul-redesign.pul-nav-morph .screen.on,
.phone.pul-skin.pul-immersive.pul-redesign.pul-nav-morph .screen.pul-pane-active{
  padding-top: 8px !important;
  padding-bottom: calc(268px + var(--safe-b, 0px)) !important;
  scroll-padding-bottom: calc(268px + var(--safe-b, 0px));
}



.phone.pul-redesign.pul-nav-open #s-cal .cal-chrome,
.phone.pul-redesign.pul-nav-morph #s-cal .cal-chrome{
  position:static !important; top:auto !important; z-index:1 !important;
}



/* ——— t1086u rail icons, centered wordmark, session pill ——— */
.pul-launcher{
  left:8px !important;
  width:56px !important;
  padding:8px 6px !important;
  gap:6px !important;
  border-radius:32px !important;
  background:rgba(10,10,10,.56) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  backdrop-filter:blur(22px) saturate(1.35) !important;
  -webkit-backdrop-filter:blur(22px) saturate(1.35) !important;
  box-shadow:0 14px 40px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.1);
  overflow:visible;
}
.pul-rail-thumb{
  position:absolute; left:6px; right:6px; top:0;
  height:44px; border-radius:16px;
  background:rgba(200,242,74,.16);
  box-shadow:0 0 18px rgba(200,242,74,.4), inset 0 0 0 1px rgba(200,242,74,.45);
  pointer-events:none; z-index:0; opacity:0;
  transition: transform .38s cubic-bezier(.22,1.2,.36,1), opacity .28s ease;
}
.pul-launcher button{
  position:relative; z-index:1;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px;
  min-width:44px !important; min-height:44px !important;
  padding:4px 0 2px !important;
  background:transparent !important;
  color:#C8F24A !important;
  box-shadow:none !important;
}
.pul-launcher .pul-go{ background:transparent !important; color:#C8F24A !important; box-shadow:none !important; }
.pul-ico{ width:22px; height:22px; display:block; }
.pul-rail-lab{
  font:700 8px/1 inherit; letter-spacing:.08em; text-transform:uppercase;
  color:rgba(244,247,240,.62);
}
.pul-launcher button.on .pul-rail-lab,
.pul-launcher button.on .pul-ico{ color:#C8F24A; }
.pul-launcher button.on .pul-ico{
  animation: pulRailBounce .42s cubic-bezier(.22,1.35,.36,1);
  filter: drop-shadow(0 0 7px rgba(200,242,74,.7));
}
@keyframes pulRailBounce{
  0%{ transform:scale(.84); }
  58%{ transform:scale(1.14); }
  100%{ transform:scale(1); }
}
.pul-brand,
.phone.pul-nav-open .pul-brand,
.phone.pul-nav-morph .pul-brand{
  left:0 !important;
  right:0 !important;
  justify-content:center !important;
  transform:none !important;
}

.pul-session.on:not(.open){
  left:8px !important;
  right:auto !important;
  width:auto !important;
  top: calc(50% - 188px) !important;
  bottom:auto !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  animation:none !important;
}
.pul-ses-pill{
  appearance:none; border:1px solid rgba(200,242,74,.42);
  display:inline-flex; align-items:center; gap:8px;
  min-height:40px; padding:0 12px 0 10px; border-radius:999px;
  background:rgba(10,10,10,.72);
  color:#C8F24A; font:800 13px/1 inherit; letter-spacing:.04em;
  backdrop-filter:blur(16px) saturate(1.2);
  -webkit-backdrop-filter:blur(16px) saturate(1.2);
  box-shadow:0 8px 22px rgba(0,0,0,.35), 0 0 14px rgba(200,242,74,.22);
}
.pul-ses-dot{
  width:8px; height:8px; border-radius:50%;
  background:#C8F24A; box-shadow:0 0 8px #C8F24A;
}
.pul-session.paused:not(.open) .pul-ses-dot{
  background:#9AA396; box-shadow:none;
}
.pul-session.on.open{
  left:72px !important;
  right:16px !important;
  top:auto !important;
  bottom: calc(18px + var(--safe-b, 0px)) !important;
  width:auto !important;
  max-width: calc(100% - 88px);
  padding:12px 14px !important;
  border-radius:22px;
  background:rgba(10,10,10,.86) !important;
  border:1px solid rgba(200,242,74,.35) !important;
  backdrop-filter:blur(18px) saturate(1.2) !important;
  box-shadow:0 16px 40px rgba(0,0,0,.45) !important;
  transform-origin: left bottom;
  animation: pulSesIn .42s cubic-bezier(.22,1.2,.36,1) both;
}
.phone.pul-nav-open .pul-session.on.open,
.phone.pul-nav-morph .pul-session.on.open{
  left:72px !important;
  right:36% !important;
  bottom: calc(18px + var(--safe-b, 0px)) !important;
}
.phone.pul-redesign:not(.pul-nav-open) .pul-session.on.open{
  right:auto !important;
  width:min(292px, calc(100% - 88px)) !important;
}

.phone.pul-skin.pul-immersive.pul-redesign.pul-nav-open .screen,
.phone.pul-skin.pul-immersive.pul-redesign.pul-nav-open .screen.pul-pane-active,
.phone.pul-skin.pul-immersive.pul-redesign.pul-nav-morph .screen,
.phone.pul-skin.pul-immersive.pul-redesign.pul-nav-morph .screen.pul-pane-active{
  padding-left:72px !important;
}
.pul-nav-sheet-head{ padding-left:72px !important; }

