/* Sky/Aura parity with Lift iOS: Today (AuraHome.swift), tab bar (Sky.swift SkyTabBar / native TabView),
   workout sheet (WorkoutView.swift, LiftApp.swift SetRow, SessionControls.swift) and TrainingPill.
   Loaded last. Every rule requires data-layout="sky"|"aura" except the two visibility switches below,
   which only hide the native tab labels/icons in Standard. */

:root:not([data-layout="sky"]):not([data-layout="aura"]) .tab-native {display:none}
:root:is([data-layout="sky"],[data-layout="aura"]) .tab-std {display:none}

:root:is([data-layout="sky"],[data-layout="aura"]) {
  --np-outline:1px;
  --np-panel:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.035));
  --np-highlight:inset 0 1px 0 rgba(255,255,255,.13);
  --np-elevation:var(--np-highlight);
  --np-primary:#f3f1ec;--np-primary-ink:#0b0b0f;
  --np-ink2:rgba(243,241,236,.62);--np-ink3:rgba(243,241,236,.45);
  --np-peach:#ffc7a3;--np-avatar-ink:#14131a;
  --np-row:rgba(21,19,31,.65);
  --np-band:rgba(255,255,255,.025);
  --np-done:color-mix(in srgb,var(--accent) 16%,transparent);
  --np-next:color-mix(in srgb,var(--accent) 10%,transparent);
  --np-next-line:color-mix(in srgb,var(--accent) 75%,transparent);
  --np-check-ink:#14131a;
  --np-sheet:linear-gradient(180deg,#191629,#0b0a12 340px);
}
:root[data-layout="sky"] {
  --np-panel:linear-gradient(rgba(255,255,255,.10),rgba(255,255,255,.10)),rgba(32,63,73,.28);
  --np-elevation:inset 0 1px 0 rgba(255,255,255,.13),0 3px 8px rgba(32,63,73,.12);
  --np-primary:#fff;--np-primary-ink:var(--deep);
  --np-ink2:rgba(255,255,255,.94);--np-ink3:rgba(255,255,255,.90);
  --np-peach:var(--sun);
  --np-row:rgba(32,63,73,.42);
  --np-band:rgba(32,63,73,.28);
  --np-check-ink:var(--deep);
  --np-sheet:linear-gradient(180deg,rgba(37,73,89,.92),rgba(49,89,107,.55) 220px,rgba(32,63,73,.0) 520px);
}
@media (min-resolution:2dppx) {
  :root:is([data-layout="sky"],[data-layout="aura"]) {--np-outline:.5px}
}
@media (prefers-reduced-transparency:reduce) {
  :root[data-layout="sky"] {--np-panel:#203f49}
  :root[data-layout="aura"] {--np-panel:#15131f}
}

/* Shared native controls: SecondaryActionButton (frost, 12px) and PrimaryActionButton (ink fill).
   Kept as separate rules so a workout selector never raises the Today buttons' specificity. */
:root:is([data-layout="sky"],[data-layout="aura"]) :is(.today-gear,.today-swap,.today-edit,.session-minimize,.session-sync),
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view :is(.native-exercise .session-tool,.native-exercise .add-set,.native-exercise .remove-set,.session-footer .add-exercise,.session-footer .cancel-workout),
:root:is([data-layout="sky"],[data-layout="aura"]) #profile-button {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:44px;padding:0 12px;margin:0;
  border:var(--np-outline) solid var(--line);border-radius:12px;
  background:var(--np-panel);box-shadow:var(--np-elevation);
  color:var(--ink);font:inherit;font-size:15px;font-weight:600;line-height:1.2;
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  transition:transform 120ms ease,opacity 120ms ease;
}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-primary,
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-footer .finish {
  display:flex;align-items:center;justify-content:center;gap:8px;
  min-height:46px;padding:0 14px;margin:0;border:0;border-radius:12px;
  background:var(--np-primary);color:var(--np-primary-ink);box-shadow:none;
  font:inherit;font-size:15px;font-weight:700;
  transition:transform 120ms ease,opacity 120ms ease;
}
:root:is([data-layout="sky"],[data-layout="aura"]) .focus-picker .focus-all {display:inline-flex;align-items:center;justify-content:center;gap:8px}
:root:is([data-layout="sky"],[data-layout="aura"]) :is(.today-primary,.today-swap,.today-gear,.today-edit,.today-card,.today-profile,.session-minimize,.session-sync,.session-tool,.focus-choice,#training-pill):not(:disabled):active,
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise :is(.add-set,.remove-set):not(:disabled):active,
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-footer button:not(:disabled):active {transform:scale(.96);opacity:1}
:root:is([data-layout="sky"],[data-layout="aura"]) :is(.today-primary,.today-swap,.today-gear,.today-edit,.today-card,.today-profile,.session-minimize,.session-sync,.session-tool,.focus-choice,#training-pill,#profile-button):focus-visible {outline:2px solid var(--accent);outline-offset:2px}
:root:is([data-layout="sky"],[data-layout="aura"]) :is(.today-swap,.today-primary,.session-tool,.add-set,.remove-set,.add-exercise):disabled {opacity:.45}
:root:is([data-layout="sky"],[data-layout="aura"]) .native-icon {flex:0 0 auto;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
:root:is([data-layout="sky"],[data-layout="aura"]) .native-icon .fill {fill:currentColor;stroke:none}
@media (prefers-reduced-motion:reduce) {
  :root:is([data-layout="sky"],[data-layout="aura"]) :is(.today-primary,.today-swap,.today-gear,.today-edit,.today-card,.session-minimize,.session-sync,.session-tool,#training-pill) {transition:none}
}

/* Toolbars: no light/dark toggle (layouts force dark); Settings is a gear like LiftToolbarButton. */
:root:is([data-layout="sky"],[data-layout="aura"]) #theme-button {display:none}
:root:is([data-layout="sky"],[data-layout="aura"]) #profile-button {width:auto;min-width:44px;height:44px;padding:0 12px;border-radius:12px;color:var(--ink)}
:root:is([data-layout="sky"],[data-layout="aura"]) :is(body[data-view="home"],body.session-open) .topbar {display:none}

/* Sky backdrop: Sky.meshColors on a 3x3 grid plus the static SkyClouds banks and sun haze. */
:root[data-layout="sky"] .app-shell:has(:is(#home-view,#workout-view,#history-view):not(.hidden)) {
  background:
    radial-gradient(34% 8% at 86% 17%,rgba(255,255,255,.20),transparent 72%),
    radial-gradient(20% 7% at 90% 16%,rgba(255,239,208,.18),transparent 72%),
    radial-gradient(52% 8% at 6% 30%,rgba(255,255,255,.17),transparent 72%),
    radial-gradient(64% 11% at 82% 60%,rgba(255,255,255,.12),transparent 72%),
    radial-gradient(80% 12% at 20% 92%,rgba(255,239,208,.15),transparent 72%),
    radial-gradient(70% 45% at 84% 18%,rgba(255,239,208,.12),transparent 70%),
    linear-gradient(180deg,rgba(32,63,73,.18),transparent 45%,rgba(32,63,73,.25)),
    radial-gradient(70% 42% at 0% 0%,#254959,transparent),
    radial-gradient(70% 42% at 100% 0%,#466474,transparent),
    radial-gradient(60% 34% at 43% 58%,#64898a,transparent),
    radial-gradient(70% 40% at 0% 100%,#536e67,transparent),
    radial-gradient(60% 40% at 50% 100%,#718878,transparent),
    radial-gradient(60% 40% at 100% 100%,#3f655f,transparent),
    linear-gradient(180deg,#31596b,#4c797e 50%,#5b7e81 70%,#5f7a6e);
}

/* ---------- Today ---------- */
:root:is([data-layout="sky"],[data-layout="aura"]) #home-view {gap:12px;padding-top:4px}
:root:is([data-layout="sky"],[data-layout="aura"]) #home-view > * {margin:0}
:root:is([data-layout="sky"],[data-layout="aura"]) #home-view > .today-edit.today-edit {order:99}
:root:is([data-layout="sky"],[data-layout="aura"]) #home-view h2 {margin:0}

:root:is([data-layout="sky"],[data-layout="aura"]) .today-head {display:flex;align-items:center;gap:6px;min-height:44px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-title {display:grid;gap:2px;flex:1 1 auto;min-width:0}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-title h2 {font-size:20px;font-weight:600;line-height:1.2;letter-spacing:-.4px;color:var(--ink)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-title span {font-size:12px;line-height:1.3;color:var(--np-ink3)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-streak {display:inline-flex;align-items:center;gap:3px;flex:0 0 auto;padding:4px 7px;border-radius:5px;background:rgba(255,190,150,.10);color:var(--np-peach);font-size:11px;font-weight:600;line-height:1.2;font-variant-numeric:tabular-nums}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-streak .native-icon {width:12px;height:12px;stroke-width:2}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-profiles {display:flex;gap:4px;flex:0 0 auto}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-profile {
  display:grid;place-items:center;width:32px;height:32px;margin:6px 1px;padding:0;
  border:0;border-radius:10px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
  color:color-mix(in srgb,var(--ink) 55%,transparent);font:inherit;font-size:13px;font-weight:600;
}
:root:is([data-layout="sky"],[data-layout="aura"]) button.today-profile {position:relative}
:root:is([data-layout="sky"],[data-layout="aura"]) button.today-profile::after {content:"";position:absolute;inset:-6px -1px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-profile.on {background:var(--avatar-on);box-shadow:none;color:var(--np-avatar-ink);opacity:1}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-gear {width:68px;flex:0 0 68px;padding:0}

:root:is([data-layout="sky"],[data-layout="aura"]) .today-hero {position:relative;display:grid;place-items:center;height:152px;margin-top:2px !important}
:root[data-layout="sky"] .today-hero {height:180px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-hero-ring {position:absolute;width:148px;height:148px}
:root[data-layout="sky"] .today-hero-ring {width:170px;height:170px}
:root:is([data-layout="sky"],[data-layout="aura"]) .native-ring {display:block;overflow:visible}
:root:is([data-layout="sky"],[data-layout="aura"]) .native-ring circle {fill:none;stroke-linecap:round}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-hero-ring circle {stroke-width:6.8}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-hero-ring .ring-track {stroke:rgba(255,255,255,.07)}
:root[data-layout="aura"] .today-hero-ring {filter:drop-shadow(0 0 6px color-mix(in srgb,currentColor 55%,transparent))}
:root[data-layout="sky"] .today-hero-ring circle {stroke-width:1.2}
:root[data-layout="sky"] .today-hero-ring .ring-track {stroke:rgba(255,255,255,.20)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-hero-copy {position:relative;display:grid;justify-items:center;gap:2px;text-align:center}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-hero-copy span {font-size:10px;font-weight:500;letter-spacing:1.4px;color:rgba(243,241,236,.5)}
:root[data-layout="sky"] .today-hero-copy span {color:var(--np-ink3)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-hero-copy strong {font-size:50px;font-weight:300;line-height:1;letter-spacing:-2.5px;font-variant-numeric:tabular-nums;color:var(--ink)}
:root[data-layout="sky"] .today-hero-copy strong {font-size:70px;font-weight:200}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-hero-copy b {font-size:13px;font-weight:600}

:root:is([data-layout="sky"],[data-layout="aura"]) .today-focus {display:grid;justify-items:center;gap:6px;text-align:center}
:root[data-layout="sky"] .today-focus {text-shadow:0 1px 2px rgba(32,63,73,.4)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-focus h2 {font-size:32px;font-weight:600;line-height:1.15;letter-spacing:-1.1px;color:var(--ink);text-wrap:balance}
:root[data-layout="sky"] .today-focus h2 {font-weight:300}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-focus p {margin:0;max-width:100%;font-size:13px;line-height:1.4;color:var(--np-ink2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-focus .today-also {display:flex;align-items:center;justify-content:center;gap:6px;font-size:12.5px;color:var(--np-ink3);min-width:0}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-also > span:first-child {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-chip {display:inline-block;flex:0 0 auto;padding:3px 6px;border-radius:5px;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);color:color-mix(in srgb,var(--ink) 82%,transparent);font-size:10.5px;font-weight:600;line-height:1.2;letter-spacing:.6px;white-space:nowrap;text-shadow:none;vertical-align:middle}

:root:is([data-layout="sky"],[data-layout="aura"]) .today-start {display:flex;gap:8px;padding:4px 0 !important}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-primary {flex:1 1 auto;min-width:0}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-primary span {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-swap {flex:0 0 56px;min-height:46px;padding:0}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-swap .native-icon {width:22px;height:22px}

:root:is([data-layout="sky"],[data-layout="aura"]) .today-card {
  display:block;width:100%;min-width:0;padding:14px 16px;
  border:var(--np-outline) solid var(--line);border-radius:14px;
  background:var(--np-panel);box-shadow:var(--np-elevation);
  color:var(--ink);font:inherit;text-align:left;
}
:root[data-layout="sky"] .today-card {-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-card[hidden] {display:none}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-insight {display:flex;align-items:center;gap:14px;cursor:pointer}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-insight-copy {display:grid;gap:6px;flex:1 1 auto;min-width:0;min-height:44px;align-content:center}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-insight-copy strong {font-size:15px;font-weight:600;line-height:1.3;letter-spacing:-.1px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-insight-copy span {font-size:13px;line-height:1.45;color:var(--np-ink2)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-insight-link {display:grid;justify-items:center;gap:6px;flex:0 0 72px;min-height:54px;align-content:center;color:var(--np-ink2)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-insight-link > span {display:flex;align-items:center;gap:6px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-insight-link .native-icon {width:22px;height:22px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-insight-link .native-icon.small {width:11px;height:11px;stroke-width:2.6}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-insight-link small {font-size:11px;font-weight:600}

:root:is([data-layout="sky"],[data-layout="aura"]) .today-recovery {display:grid;gap:10px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-card-head {display:flex;align-items:baseline;justify-content:space-between;gap:12px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-card-head h2 {font-size:13px;font-weight:600;line-height:1.3;color:var(--ink)}
:root[data-layout="sky"] .today-card-head h2 {font-size:10px;font-weight:500;letter-spacing:1.4px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-card-head span {font-size:12px;color:var(--np-ink3);text-align:right}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-rings {display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-ring-item {display:grid;justify-items:center;min-width:0;text-align:center}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-ring-wrap {position:relative;display:grid;place-items:center;width:44px;height:44px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-mini-ring {position:absolute;inset:0;width:44px;height:44px;filter:drop-shadow(0 0 3px color-mix(in srgb,currentColor 55%,transparent))}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-mini-ring circle {stroke-width:9.1}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-mini-ring .ring-track {stroke:rgba(255,255,255,.08)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-ring-wrap span {position:relative;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}
:root[data-layout="sky"] .today-ring-wrap span {font-size:16px;font-weight:300}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-ring-item b {margin-top:5px;font-size:12px;font-weight:400;color:color-mix(in srgb,var(--ink) 82%,transparent);overflow:hidden;text-overflow:ellipsis;max-width:100%}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-ring-item small {margin-top:1px;font-size:10.5px;line-height:1.3}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-legend {display:flex;align-items:center;gap:8px;font-size:11px;color:var(--np-ink3)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-legend i {flex:1 1 auto;height:5px;border-radius:2px;background:linear-gradient(90deg,#8ccfbd,#a7c9a6,#e2c281,#dd9c72,#d67b79)}

:root:is([data-layout="sky"],[data-layout="aura"]) .today-week {display:flex;align-items:center;gap:12px;padding:12px 16px 12px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-week-count {display:grid;gap:2px;flex:0 0 auto}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-week-count strong {font-size:20px;font-weight:500;line-height:1.1;font-variant-numeric:tabular-nums}
:root[data-layout="sky"] .today-week-count strong {font-size:26px;font-weight:300}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-week-count small {font-size:13px;font-weight:400;color:var(--np-ink3)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-week-count > span {font-size:12px;color:var(--np-ink3)}
:root[data-layout="sky"] .today-week-count > span {font-size:10px;letter-spacing:1.2px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-days {display:flex;gap:5px;margin-left:auto}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-days > div {display:grid;justify-items:center;gap:4px;width:23px}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-days span {font-size:10px;line-height:1.2;color:rgba(243,241,236,.4)}
:root[data-layout="sky"] .today-days span {color:var(--np-ink3)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-days i {display:block;box-sizing:border-box;width:22px;height:22px;border-radius:5px;border:1px solid rgba(255,255,255,.12)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-days i.on {border:0;background:var(--day-on)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-days i.today {border:1.5px solid var(--ink);box-shadow:0 0 6px rgba(160,150,255,.5)}

:root:is([data-layout="sky"],[data-layout="aura"]) .today-last {display:flex;align-items:center;gap:12px;cursor:pointer}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-last-icon {display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:10px;background:rgba(255,255,255,.06);color:var(--np-ink2)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-last-icon .native-icon {width:15px;height:15px;stroke-width:2}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-last-copy {display:grid;gap:3px;flex:1 1 auto;min-width:0}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-last-copy strong {display:flex;align-items:center;gap:7px;min-width:0;font-size:13px;font-weight:600}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-last-copy strong > span:first-child {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-last-copy small {font-size:12px;color:var(--np-ink3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-last-chevron {width:14px;height:14px;stroke-width:2.4;color:var(--np-ink3)}
:root:is([data-layout="sky"],[data-layout="aura"]) .today-edit {width:100%}

/* FocusPicker sheet. */
:root:is([data-layout="sky"],[data-layout="aura"]) .focus-picker .sheet {gap:12px}
:root:is([data-layout="sky"],[data-layout="aura"]) .focus-choice {display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:14px;border:var(--np-outline) solid var(--line);border-radius:14px;background:var(--np-panel);box-shadow:var(--np-elevation);color:var(--ink);font:inherit;text-align:left}
:root:is([data-layout="sky"],[data-layout="aura"]) .focus-choice > span {display:grid;gap:4px;flex:1 1 auto;min-width:0}
:root:is([data-layout="sky"],[data-layout="aura"]) .focus-choice strong {font-size:16px;font-weight:700;overflow-wrap:anywhere}
:root:is([data-layout="sky"],[data-layout="aura"]) .focus-choice small {font-size:12px;color:var(--np-ink2)}
:root:is([data-layout="sky"],[data-layout="aura"]) .focus-choice .native-icon {color:var(--accent)}
:root:is([data-layout="sky"],[data-layout="aura"]) .focus-picker .focus-all {justify-self:start}

/* ---------- Tab bar ---------- */
:root:is([data-layout="sky"],[data-layout="aura"]) #tabbar .tab-native svg {stroke-width:1.6}
:root:is([data-layout="sky"],[data-layout="aura"]) #tabbar .tab-icon.tab-native {width:22px;height:22px}
:root:is([data-layout="sky"],[data-layout="aura"]) #tabbar .tab-native .fill {fill:none}
:root[data-layout="aura"] #tabbar .tab-native .fill {fill:currentColor}
:root[data-layout="aura"] #tabbar .tab-native .cut {stroke:var(--bg);stroke-width:1.8}
:root[data-layout="sky"] #tabbar .aura-only,
:root[data-layout="aura"] #tabbar .sky-only {display:none}
:root:is([data-layout="sky"],[data-layout="aura"]) #tabbar button {font-size:10px;font-weight:500;letter-spacing:.1px}
:root:is([data-layout="sky"],[data-layout="aura"]) body.session-open #tabbar {display:none}

/* TrainingPill: dumbbell, title, sets + Tap to resume, chevron. */
:root:is([data-layout="sky"],[data-layout="aura"]) #training-pill:not(.hidden) {
  display:flex;align-items:center;gap:12px;
  left:12px;right:12px;bottom:calc(74px + env(safe-area-inset-bottom));transform:none;
  width:auto;max-width:696px;min-height:52px;margin:0 auto;padding:0 16px;
  border:var(--np-outline) solid var(--line);border-radius:14px;
  background:var(--np-panel);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);
  box-shadow:var(--np-elevation),0 10px 28px rgba(0,0,0,.28);
  color:var(--ink);text-align:left;white-space:normal;
}
:root[data-layout="aura"] #training-pill:not(.hidden) {background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.05)),rgba(21,19,31,.92)}
:root:is([data-layout="sky"],[data-layout="aura"]) #training-pill .pill-icon {color:var(--accent)}
:root:is([data-layout="sky"],[data-layout="aura"]) #training-pill .pill-copy {display:grid;gap:2px;flex:1 1 auto;min-width:0}
:root:is([data-layout="sky"],[data-layout="aura"]) #training-pill .pill-copy :is(strong,small) {overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:root:is([data-layout="sky"],[data-layout="aura"]) #training-pill strong {font-size:15px;font-weight:600}
:root:is([data-layout="sky"],[data-layout="aura"]) #training-pill small {font-size:12px;font-weight:400;color:var(--np-ink2)}
:root:is([data-layout="sky"],[data-layout="aura"]) #training-pill .pill-chevron {width:16px;height:16px;stroke-width:2.2}

/* Content clears the floating pill, as AuraHomeView pads 80pt while a workout is active. */
:root:is([data-layout="sky"],[data-layout="aura"]) body:has(#training-pill:not(.hidden)) .app-shell {padding-bottom:calc(7rem + 64px + env(safe-area-inset-bottom))}
:root[data-layout="aura"] #tabbar {background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.03)),rgba(11,10,18,.78);-webkit-backdrop-filter:blur(22px) saturate(140%);backdrop-filter:blur(22px) saturate(140%)}

/* Toast as a frosted native banner instead of a white slab. */
:root:is([data-layout="sky"],[data-layout="aura"]) .toast {
  bottom:calc(80px + env(safe-area-inset-bottom));min-height:48px;
  border:var(--np-outline) solid var(--line);border-radius:12px;
  background:rgba(21,19,31,.94);color:var(--ink);
  box-shadow:var(--np-highlight),0 12px 32px rgba(0,0,0,.32);font-size:14px;
  -webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);
}
:root[data-layout="sky"] .toast {background:rgba(32,63,73,.94)}
:root:is([data-layout="sky"],[data-layout="aura"]) body.session-open .toast {bottom:calc(16px + env(safe-area-inset-bottom))}
:root:is([data-layout="sky"],[data-layout="aura"]) .toast button {background:var(--np-primary);color:var(--np-primary-ink)}

/* ---------- Workout sheet ---------- */
:root:is([data-layout="sky"],[data-layout="aura"]) body.session-open .app-shell {padding-top:max(12px,env(safe-area-inset-top));padding-bottom:calc(28px + env(safe-area-inset-bottom))}
:root[data-layout="aura"] body.session-open .app-shell {background:var(--bg)}
:root:is([data-layout="sky"],[data-layout="aura"]) .session-sheet {
  position:relative;margin:0 -20px;padding:22px 16px 8px;
  border-top:var(--np-outline) solid var(--line);border-radius:38px 38px 0 0;
  background:var(--np-sheet);
}
@media (max-width:460px) {:root:is([data-layout="sky"],[data-layout="aura"]) .session-sheet {margin:0 -18px}}
@media (min-width:700px) {:root:is([data-layout="sky"],[data-layout="aura"]) .session-sheet {margin:0;border:var(--np-outline) solid var(--line);border-radius:28px}}
:root:is([data-layout="sky"],[data-layout="aura"]) .session-sheet::before {content:"";position:absolute;top:8px;left:50%;width:36px;height:5px;margin-left:-18px;border-radius:3px;background:rgba(255,255,255,.32)}
:root:is([data-layout="sky"],[data-layout="aura"]) .session-head {display:flex;align-items:center;gap:14px;min-height:56px;padding:0 4px 10px}
:root:is([data-layout="sky"],[data-layout="aura"]) .session-head h2 {flex:1 1 auto;min-width:0;margin:0;font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.2px;color:var(--ink);overflow-wrap:anywhere}
:root:is([data-layout="sky"],[data-layout="aura"]) .session-minimize {flex:0 0 44px;width:44px;height:44px;padding:0}
:root:is([data-layout="sky"],[data-layout="aura"]) .session-minimize .native-icon {width:22px;height:22px;stroke-width:2.2}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-status {
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:0 -16px;padding:14px 20px;border:0;border-top:var(--np-outline) solid var(--line);border-bottom:var(--np-outline) solid var(--line);border-radius:0;
  background:var(--np-band);color:var(--np-ink3);font-size:15px;font-weight:400;font-variant-numeric:tabular-nums;
}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-status #workout-timer {color:inherit;font-size:15px;font-weight:400}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-status strong {font-weight:400;color:inherit}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-sync-row {margin:0 -16px 16px;padding:12px 20px 14px;border-bottom:var(--np-outline) solid var(--line);background:var(--np-band)}
:root:is([data-layout="sky"],[data-layout="aura"]) .session-sync {gap:12px;padding:0 16px 0 14px;font-size:15px}
:root:is([data-layout="sky"],[data-layout="aura"]) .session-sync .sync-icon {display:grid}
:root:is([data-layout="sky"],[data-layout="aura"]) .session-sync .native-icon {width:24px;height:24px;stroke-width:1.6}
:root:is([data-layout="sky"],[data-layout="aura"]) .session-sync[data-state="error"] {color:var(--danger)}

:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise {
  margin:0 0 16px;padding:12px;border:var(--np-outline) solid var(--line);border-radius:14px;
  background:var(--np-panel);box-shadow:var(--np-elevation);color:var(--ink);outline:0;
}
:root[data-layout="sky"] #workout-view .native-exercise {-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise:has(.set-row.next) {border-color:var(--np-next-line)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .exercise-head {display:flex;align-items:flex-start;gap:8px}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .exercise-heading {display:grid;gap:4px;flex:1 1 auto;min-width:0;align-self:flex-start}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .exercise-heading h2 {margin:0;font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.2px}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .exercise-rename {display:inline;min-height:0;padding:0;color:var(--ink);font:inherit;text-align:left;overflow-wrap:anywhere}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .exercise-rename .today-chip {margin-left:2px;letter-spacing:.2px;font-size:11px}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .exercise-heading p {margin:0;font-size:12.5px;line-height:1.3;color:var(--np-ink3)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .exercise-tools {display:flex;gap:8px;flex:0 0 auto}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .session-tool {width:68px;height:44px;padding:0}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .exercise-rename-form {margin-top:4px}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .exercise-rename-form input {background:rgba(255,255,255,.08);color:var(--ink);border-color:var(--line)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .exercise-rename-form button {background:rgba(255,255,255,.08);color:var(--ink)}

:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise :is(.set-labels,.set-row) {grid-template-columns:44px minmax(0,1fr) minmax(0,1fr) 44px;gap:8px}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-labels {padding:14px 2px 2px;font-size:11px;font-weight:700;letter-spacing:.02em;color:var(--np-ink3)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row {
  min-height:48px;margin:8px 0 0;padding:2px;border-radius:2px;
  background:var(--np-row);box-shadow:none;color:var(--ink);opacity:1;
}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row:not(.done):not(.next) {background:var(--np-row)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row.next {background:var(--np-next);box-shadow:inset 0 0 0 1px var(--np-next-line)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row.done {background:var(--np-done);color:var(--accent)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row input,
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row.done input {
  height:44px;min-height:44px;padding:0 4px;border:0;border-radius:2px;
  background:transparent;box-shadow:none;color:inherit;-webkit-text-fill-color:currentColor;
  font-size:17px;font-weight:400;text-align:center;font-variant-numeric:tabular-nums;
}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row input:focus,
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row input:focus-visible {outline:0;background:rgba(255,255,255,.09);box-shadow:inset 0 -2px 0 var(--accent)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row input.suggestion:not(:focus) {color:color-mix(in srgb,var(--ink) 62%,transparent);-webkit-text-fill-color:color-mix(in srgb,var(--ink) 62%,transparent)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row input::placeholder {color:color-mix(in srgb,var(--ink) 45%,transparent);-webkit-text-fill-color:color-mix(in srgb,var(--ink) 45%,transparent)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-tag {width:44px;height:44px;padding:0;border-radius:2px;background:transparent;color:inherit;font-size:17px;font-weight:700;font-variant-numeric:tabular-nums}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-tag.type-f {background:rgba(255,55,95,.18);color:inherit}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .check {position:relative;width:44px;height:44px;padding:0;border-radius:50%;background:transparent;color:var(--np-ink3);font-size:0}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .check::before {content:"";position:absolute;inset:10px;border:2px solid currentColor;border-radius:50%}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row.next .check {color:var(--accent);background:transparent}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row.done .check {color:var(--accent);background:transparent}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row.done .check::before {background:currentColor}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row.done .check::after {content:"";position:absolute;left:18.5px;top:14.5px;width:5px;height:10px;border:solid var(--np-check-ink);border-width:0 2.2px 2.2px 0;transform:rotate(45deg)}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-row.save-error {box-shadow:inset 0 0 0 1px var(--danger)}

:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .set-actions {display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;padding-top:4px}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise :is(.add-set,.remove-set) {justify-self:center;max-width:100%;gap:12px;padding:0 16px}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise :is(.add-set,.remove-set) .native-icon {width:22px;height:22px}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .swap-undo {margin-top:10px;border-radius:12px}

:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-exercises > .empty-card {margin-bottom:16px}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-footer {
  display:grid;gap:12px;margin:4px -16px 0;padding:16px 20px 8px;
  border-top:var(--np-outline) solid var(--line);background:var(--np-band);
}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-footer .add-exercise {justify-self:start;margin:0;padding:0 16px 0 12px}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-notes {display:block;margin:0}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-notes > span {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-notes textarea {width:100%;min-height:68px;padding:12px;border:var(--np-outline) solid var(--line);border-radius:8px;background:rgba(255,255,255,.06);color:var(--ink);font:inherit;font-size:16px;resize:vertical}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-footer .finish {width:100%;margin:0}
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-footer .cancel-workout {width:100%;min-height:50px;color:var(--danger)}

/* ---------- Workout tab chooser (WorkoutStartView) ---------- */
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser {display:grid;gap:12px}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-label {display:block;margin-top:4px;font-size:11px;font-weight:700;letter-spacing:1.4px;color:var(--np-ink2)}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-card {display:grid;gap:12px;padding:16px;border:var(--np-outline) solid var(--line);border-radius:14px;background:var(--np-panel);box-shadow:var(--np-elevation);color:var(--ink)}
:root[data-layout="sky"] .chooser-card {-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-card h2 {margin:0;font-size:17px;font-weight:600;line-height:1.3;overflow-wrap:anywhere}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-card p {margin:0}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-note {font-size:12px;font-weight:600;color:var(--np-ink2)}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-note.due {color:var(--accent)}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-sub {font-size:15px;line-height:1.35;color:var(--np-ink2)}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-small {font-size:12px;line-height:1.35;color:var(--np-ink2)}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-card + .chooser-label {margin-top:12px}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-start {display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;padding:0 14px;border:0;border-radius:12px;background:var(--np-primary);color:var(--np-primary-ink);font:inherit;font-size:15px;font-weight:700}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-more {display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
:root:is([data-layout="sky"],[data-layout="aura"]) .chooser-secondary {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 14px 0 12px;border:var(--np-outline) solid var(--line);border-radius:12px;background:var(--np-panel);box-shadow:var(--np-elevation);color:var(--ink);font:inherit;font-size:15px;font-weight:600}
:root:is([data-layout="sky"],[data-layout="aura"]) :is(.chooser-start,.chooser-secondary):not(:disabled):active {transform:scale(.96)}
:root:is([data-layout="sky"],[data-layout="aura"]) :is(.chooser-start,.chooser-secondary):focus-visible {outline:2px solid var(--accent);outline-offset:2px}
:root:is([data-layout="sky"],[data-layout="aura"]) :is(.chooser-start,.chooser-secondary):disabled {opacity:.45}

/* Intrinsic-width secondary actions (SecondaryActionButton is not expanded) and quiet hover. */
:root:is([data-layout="sky"],[data-layout="aura"]) #workout-view :is(.native-exercise .add-set,.native-exercise .remove-set,.session-footer .add-exercise) {width:auto}
@media (hover:hover) {
  :root:is([data-layout="sky"],[data-layout="aura"]) :is(.today-gear,.today-swap,.today-edit,.today-card,.session-minimize,.session-sync,.chooser-secondary,.focus-choice,#profile-button):not(:disabled):hover,
  :root:is([data-layout="sky"],[data-layout="aura"]) #workout-view :is(.native-exercise .session-tool,.native-exercise .add-set,.native-exercise .remove-set,.session-footer .add-exercise,.session-footer .cancel-workout,.native-exercise .exercise-rename):not(:disabled):hover {
    background:var(--np-panel);border-color:color-mix(in srgb,var(--ink) 45%,transparent);color:var(--ink);
  }
  :root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .native-exercise .exercise-rename:not(:disabled):hover {background:transparent;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--ink) 40%,transparent);text-underline-offset:3px}
  :root:is([data-layout="sky"],[data-layout="aura"]) #workout-view .session-footer .cancel-workout:not(:disabled):hover {color:var(--danger)}
  :root:is([data-layout="sky"],[data-layout="aura"]) :is(.today-primary,.chooser-start,#workout-view .session-footer .finish):not(:disabled):hover {filter:brightness(.94)}
}

/* Aura Mono keeps Aura geometry and materials; only UI colour tokens change. */
:root[data-layout="aura"][data-aura-tone="mono"] {
  --bg:#0b0b0b;--bg-rgb:11,11,11;--paper:#242424;--paper-rgb:36,36,36;
  --ink:#f3f3f3;--ink-rgb:243,243,243;--ink2:rgba(243,243,243,.65);--ink3:rgba(243,243,243,.45);
  --muted:var(--ink2);--line:rgba(255,255,255,.12);
  --lavender:#dedede;--peach:#e5e5e5;--peach-ink:#e5e5e5;--indigo:#737373;--mint:#d5d5d5;--violet:#bababa;
  --accent:#e5e5e5;--accent-ink:#111;--accent-soft:#343434;
  --complete:#d5d5d5;--complete-ink:#111;--next:#e5e5e5;--next-fill:#292929;--next-ink:#111;
  --danger:#eee;--danger-soft:#353535;--tile:#242424;--tile-ink:var(--ink);
  --scale-0:#242424;--scale-1:#444;--scale-2:#666;--scale-3:#999;--scale-4:#bbb;--scale-5:#eee;
  --ring:linear-gradient(to top right,#777,#bbb,#eee);
  --avatar-on:linear-gradient(to bottom right,#777,#ccc);--day-on:linear-gradient(to bottom right,#777,#aaa);
  --callout-on:linear-gradient(to bottom right,#999,#ccc);--toggle-on:linear-gradient(to right,#888,#ddd);
  --np-peach:#dedede;--np-avatar-ink:#111;--np-primary:#f3f3f3;--np-primary-ink:#111;
  --np-ink2:var(--ink2);--np-ink3:var(--ink3);--np-row:rgba(22,22,22,.65);--np-check-ink:#111;
  --np-sheet:linear-gradient(180deg,#202020,#0b0b0b 340px);
  --chrome-dialog:#171717;--chrome-backdrop:radial-gradient(ellipse at 50% 15%,rgba(255,255,255,.08),transparent 65%),var(--bg);
}
:root[data-layout="aura"][data-aura-tone="mono"] .app-shell:has(.view:not(.hidden)) {
  background:radial-gradient(ellipse at 50% 230px,rgba(255,255,255,.09),transparent 480px),var(--bg);
}
:root[data-layout="aura"][data-aura-tone="mono"] #training-pill:not(.hidden) {background:linear-gradient(180deg,#242424,#181818)}
:root[data-layout="aura"][data-aura-tone="mono"] :is(.native-ring,[data-tint]) {filter:grayscale(1)}

/* Match ID-bearing screen selectors so hard-coded Aura meshes cannot win. */
:root[data-layout="aura"][data-aura-tone="mono"] #app.app-shell {
  background:radial-gradient(ellipse at 50% 230px,rgba(255,255,255,.09),transparent 480px),var(--bg);
}
:root[data-layout="aura"][data-aura-tone="mono"] #tabbar {
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.03)),rgba(11,11,11,.92);
  -webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);
}
:root[data-layout="aura"][data-aura-tone="mono"] #history-dialog {background:linear-gradient(155deg,#242424,#0b0b0b 70%)}
:root[data-layout="aura"][data-aura-tone="mono"] .toast {background:rgba(22,22,22,.94)}
:root[data-layout="aura"][data-aura-tone="mono"] .today-streak {background:rgba(255,255,255,.10)}
:root[data-layout="aura"][data-aura-tone="mono"] .today-legend i {background:linear-gradient(90deg,#ddd,#bbb,#999,#777,#555)}
@media (prefers-reduced-transparency:reduce) {
  :root[data-layout="aura"][data-aura-tone="mono"] {--home-panel:#171717;--np-panel:#171717}
  :root[data-layout="aura"][data-aura-tone="mono"] #history-dialog :is(.history-exercise,.history-meta-edit) {background:#171717}
}
