.program-builder { min-height: 100dvh; overflow-y: auto; padding: max(24px, env(safe-area-inset-top)) 20px max(28px, env(safe-area-inset-bottom)); }
.program-builder__inner { width: min(100%, 560px); margin: 0 auto; display: grid; gap: 16px; }
.program-builder__back { justify-self: start; border: 0; background: none; color: var(--text-3); font: inherit; font-size: 12px; font-weight: 850; letter-spacing: 0; }
.program-builder__eyebrow { margin: 8px 0 -10px; color: var(--acid); font-size: 12px; font-weight: 850; letter-spacing: 0; }
.program-builder__title { margin: 0; font-size: clamp(34px, 9vw, 48px); line-height: .96; letter-spacing: 0; }
.program-builder__copy { margin: 0; color: var(--text-2); font-size: 15px; line-height: 1.45; }
.program-builder__card { display: grid; gap: 11px; padding: 17px; border: 0; border-radius: 22px; background: var(--surface-1); box-shadow: none; }
.program-builder__label { color: var(--text-3); font-size: 12px; font-weight: 850; letter-spacing: 0;  }
.program-builder__input,.program-builder__select,.program-builder__small { min-height: 44px; border: 0; border-radius: 12px; background: var(--well); color: var(--text); padding: 0 11px; font: inherit; }
.program-builder__sectionhead { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.program-builder__days { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; }
.program-builder__day { min-height: 54px; display: grid; gap: 2px; padding: 9px; border: 0; border-radius: 13px; background: var(--raised); color: var(--text-2); text-align: left; font: inherit; font-size: 12px; font-weight: 800; }
.program-builder__day small { color: var(--text-3); font-size: 12px; font-weight: 700; }
.program-builder__day[data-selected='true'] { border-color: var(--acid); color: var(--acid); background: var(--surface-1); }
.program-builder__empty { margin: 0; color: var(--text-3); font-size: 13px; }
.program-builder__exercise-list { display: grid; gap: 8px; }
.program-builder__exercise { display: grid; gap: 9px; padding: 12px; border: 0; border-radius: 14px; background: var(--surface-1); }
.program-builder__exercise strong { font-size: 13px; }
.program-builder__fields { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; color: var(--text-3); font-size: 12px; }
.program-builder__small { width: 54px; min-height: 36px; padding: 0 7px; text-align: center; }
.program-builder__remove { margin-left: auto; border: 0; background: none; color: var(--text-2); font: inherit; font-size: 12px; font-weight: 850; }
.program-builder__add { display: grid; grid-template-columns: 1fr auto; gap: 7px; }
.program-builder__actions { display: grid; grid-template-columns: 1fr 1.3fr; gap: 8px; padding-bottom: 8px; }
@media (max-width: 390px) { .program-builder { padding-inline: 14px; } .program-builder__days { grid-template-columns: repeat(2, 1fr); } .program-builder__add,.program-builder__actions { grid-template-columns: 1fr; } }
