/* GodsWork 100.0 - public-only monochrome depth and motion polish. */
.public-page{
  --public-edge:color-mix(in srgb,var(--text) 18%,var(--line));
  --public-edge-soft:color-mix(in srgb,var(--text) 10%,var(--line));
  --public-surface:linear-gradient(180deg,color-mix(in srgb,var(--panel) 94%,var(--text) 6%),var(--panel));
  --public-surface-soft:linear-gradient(180deg,color-mix(in srgb,var(--panel2) 96%,var(--text) 4%),var(--panel2));
  --public-lift:0 18px 48px color-mix(in srgb,#000 26%,transparent),inset 0 1px color-mix(in srgb,var(--text) 7%,transparent);
  --public-lift-soft:0 10px 28px color-mix(in srgb,#000 17%,transparent),inset 0 1px color-mix(in srgb,var(--text) 5%,transparent);
  background:
    radial-gradient(circle at 50% -8%,color-mix(in srgb,var(--text) 8%,transparent),transparent 34rem),
    linear-gradient(180deg,var(--bg),color-mix(in srgb,var(--bg) 94%,var(--text) 6%) 55%,var(--bg));
}

.public-page .brand,
.public-page .hero-title h1,
.public-page .section-label,
.public-page .day-label,
.public-page .guide-label,
.public-page .recovery-note span,
.public-page .public-weekly-focus span,
.public-page .finisher strong,
.public-page .text-action,
.public-page .complete-btn{
  text-rendering:optimizeLegibility;
}

.public-page .brand{letter-spacing:.015em}
.public-page .founder-credit{color:var(--muted)}
.public-page .hero-title h1{letter-spacing:-.03em}
.public-page .section-label,
.public-page .day-label,
.public-page .guide-label,
.public-page .recovery-note span,
.public-page .public-weekly-focus span{letter-spacing:.15em}

.public-page .brand-watermark{
  opacity:.075;
  filter:grayscale(1) contrast(1.08) invert(1);
  transition:opacity .35s ease,filter .35s ease;
}
:root[data-theme="dark"] .public-page .brand-watermark{
  opacity:.12;
  filter:grayscale(1) contrast(1.08);
}

.public-page .tabs,
.public-page .level-panel,
.public-page .card,
.public-page .exercise-block,
.public-page .recovery-note,
.public-page .timer-panel,
.public-page .completion-message{
  border-color:var(--public-edge-soft);
  background:var(--public-surface);
  box-shadow:var(--public-lift-soft);
}

.public-page .card{box-shadow:var(--public-lift)}
.public-page .public-weekly-focus{
  border-left-color:var(--text);
  background:var(--public-surface-soft);
  box-shadow:inset 0 1px color-mix(in srgb,var(--text) 5%,transparent);
}
.public-page .tabs{background:var(--public-surface-soft)}
.public-page .tabs button{transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}
.public-page .tabs button.active{
  box-shadow:0 5px 16px color-mix(in srgb,#000 24%,transparent),inset 0 1px color-mix(in srgb,#fff 42%,transparent);
}
.public-page .tabs button:active{transform:scale(.97)}

.public-page button,
.public-page .btn,
.public-page .text-action{
  transition:border-color .2s ease,color .2s ease,background .2s ease,box-shadow .2s ease,transform .14s ease,opacity .2s ease;
}
.public-page button:active,
.public-page .btn:active,
.public-page .text-action:active{transform:scale(.985)}
.public-page .level-tabs button,
.public-page .text-action,
.public-page .timer-actions button{
  border-color:var(--public-edge-soft);
  background:var(--public-surface-soft);
  box-shadow:inset 0 1px color-mix(in srgb,var(--text) 5%,transparent);
}
.public-page button.active,
.public-page .btn-primary,
.public-page .complete-btn{
  box-shadow:0 7px 18px color-mix(in srgb,#000 22%,transparent),inset 0 1px color-mix(in srgb,#fff 46%,transparent);
}

.public-page .workout-overview{
  border-color:var(--public-edge-soft);
  background:var(--public-edge-soft);
  box-shadow:inset 0 1px color-mix(in srgb,var(--text) 5%,transparent);
}
.public-page .workout-overview>div{background:var(--public-surface-soft)}
.public-page .exercise-block{
  position:relative;
  overflow:hidden;
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease;
}
.public-page .exercise-block::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 1px color-mix(in srgb,var(--text) 6%,transparent);
}
.public-page .exercise-block:focus-within{
  border-color:var(--public-edge);
  box-shadow:var(--public-lift);
}
.public-page .exercise-guide,
.public-page .weight-guide{
  border-color:var(--public-edge-soft);
  background:var(--public-surface-soft);
  box-shadow:inset 0 1px color-mix(in srgb,var(--text) 5%,transparent);
  animation:public-panel-in .24s ease both;
}
.public-page .substitution{
  border-left-color:var(--text);
  box-shadow:inset 3px 0 var(--text),inset 0 1px color-mix(in srgb,var(--text) 5%,transparent);
}
.public-page .finisher{
  box-shadow:0 14px 34px color-mix(in srgb,#000 22%,transparent),inset 0 1px color-mix(in srgb,#fff 50%,transparent);
}
.public-page .timer-display{font-variant-numeric:tabular-nums;letter-spacing:.06em}

.public-page .coach-signature,
.public-page .safety-disclaimer,
.public-page .footer-mark{position:relative}

.public-page .public-member-nav{
  border-color:var(--public-edge-soft);
  background:color-mix(in srgb,var(--bg) 88%,transparent);
  box-shadow:0 -16px 42px color-mix(in srgb,#000 22%,transparent),inset 0 1px color-mix(in srgb,var(--text) 7%,transparent);
  backdrop-filter:blur(22px) saturate(0);
  -webkit-backdrop-filter:blur(22px) saturate(0);
}
.public-page .public-member-nav button{transition:color .2s ease,transform .16s ease}
.public-page .public-member-nav button:active{transform:translateY(1px) scale(.97)}

@keyframes public-panel-in{
  from{opacity:0;transform:translateY(-5px)}
  to{opacity:1;transform:translateY(0)}
}

@media(prefers-reduced-motion:reduce){
  .public-page *,
  .public-page *::before,
  .public-page *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
