
.checkout-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.checkout-choice-grid .store-checkout{height:100%}
.eft-checkout-card{border-top:5px solid #045D5D}
.eft-checkout-card fieldset,.eft-sales-settings{border:1px solid #dce7e7;border-radius:14px;padding:16px}
.payment-option{display:flex!important;gap:12px;align-items:center;border:1px solid #dce7e7;border-radius:12px;padding:12px;margin:8px 0}
.payment-option input{width:auto}
.payment-option span{display:flex;justify-content:space-between;gap:18px;width:100%}
.manual-payment-instructions dl{display:grid;grid-template-columns:minmax(120px,.7fr) 1.3fr;gap:8px 16px}
.manual-payment-instructions dt{font-weight:600}
.manual-payment-instructions dd{margin:0}
.manual-order-list{display:grid;gap:18px}
.manual-order-card{background:#fff;border:1px solid #dfe8e8;border-radius:18px;padding:20px;box-shadow:0 8px 26px rgba(0,0,0,.05)}
.manual-order-card>header{display:flex;justify-content:space-between;gap:18px;align-items:start}
.manual-order-card h3{margin:.2rem 0}
.manual-order-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}
.manual-order-grid>div{background:#f4f8f8;border-radius:12px;padding:12px;display:grid;gap:4px}
.manual-order-grid small{color:#607070}
.manual-payment-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.manual-payment-list li{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;border-top:1px solid #e7eeee;padding-top:8px}
.manual-order-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.manual-client-status-page{min-height:65vh;display:grid;place-items:center;padding:28px}
.manual-client-status-card{max-width:680px;background:#fff;border-top:6px solid #045D5D;border-radius:18px;padding:32px;box-shadow:0 14px 40px rgba(0,0,0,.09)}
.manual-client-payment{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;background:#eef8f8;padding:18px;border-radius:14px;margin:22px 0}
.manual-client-payment span{color:#607070}
.manual-client-payment strong{text-align:right}
@media(max-width:850px){.checkout-choice-grid{grid-template-columns:1fr}.manual-order-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.manual-order-grid{grid-template-columns:1fr}.manual-order-card>header{display:grid}.manual-payment-list li{grid-template-columns:1fr auto}.manual-payment-list .status-badge{grid-column:1/-1}.manual-client-payment{grid-template-columns:1fr}.manual-client-payment strong{text-align:left}.manual-payment-instructions dl{grid-template-columns:1fr}.payment-option span{display:grid}}

/* v60.5.58 — combined EFT checkout and instructions display fix
   Combines the wider two-card checkout layout with a clean EFT
   confirmation/instructions panel. No JS, PHP or PayPal logic changes. */
main.premium-store-page section.premium-store-section.premium-checkout-section{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:clamp(30px,4vw,48px) !important;
  align-items:start !important;
}

main.premium-store-page .premium-checkout-section .premium-checkout-copy{
  width:100%;
  max-width:none;
}

main.premium-store-page .premium-checkout-section .premium-checkout-copy > p:not(.eyebrow){
  max-width:78ch;
}

main.premium-store-page .premium-checkout-section .premium-checkout-copy ul{
  max-width:920px;
}

main.premium-store-page .premium-checkout-section .checkout-choice-grid{
  width:min(100%,1040px);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(22px,3vw,34px);
  align-items:start;
}

main.premium-store-page .premium-checkout-section .checkout-choice-grid > .store-checkout{
  position:static !important;
  top:auto !important;
  width:100%;
  min-width:0;
  height:auto;
  box-sizing:border-box;
  padding:clamp(24px,3vw,34px) !important;
}

main.premium-store-page .premium-checkout-section .checkout-choice-grid > .store-checkout h3{
  font-size:clamp(1.45rem,2.2vw,1.9rem) !important;
  line-height:1.18;
}

main.premium-store-page .premium-checkout-section .checkout-choice-grid > .store-checkout form{
  display:grid;
  gap:14px;
}

main.premium-store-page .premium-checkout-section .checkout-choice-grid > .store-checkout label,
main.premium-store-page .premium-checkout-section .checkout-choice-grid > .store-checkout fieldset{
  min-width:0;
}

main.premium-store-page .premium-checkout-section .checkout-choice-grid > .store-checkout input:not([type="checkbox"]):not([type="radio"]),
main.premium-store-page .premium-checkout-section .checkout-choice-grid > .store-checkout select,
main.premium-store-page .premium-checkout-section .checkout-choice-grid > .store-checkout textarea{
  width:100%;
  box-sizing:border-box;
}

main.premium-store-page .premium-checkout-section .payment-option span{
  align-items:center;
}

main.premium-store-page .premium-checkout-section .eft-checkout-card [data-manual-payment-result]{
  display:block;
  width:100%;
  margin-top:18px;
}

main.premium-store-page .premium-checkout-section .eft-checkout-card .manual-payment-instructions{
  display:grid;
  gap:16px;
  width:100%;
  box-sizing:border-box;
  padding:22px clamp(18px,2vw,24px);
  border:1px solid #cfe2e2;
  border-left:4px solid #045D5D;
  border-radius:18px;
  background:#eef8f8;
  box-shadow:none;
  overflow-wrap:anywhere;
}

main.premium-store-page .premium-checkout-section .eft-checkout-card .manual-payment-instructions > strong{
  font-size:1.35rem;
  line-height:1.15;
  color:#234040;
}

main.premium-store-page .premium-checkout-section .eft-checkout-card .manual-payment-instructions p{
  margin:0;
}

main.premium-store-page .premium-checkout-section .eft-checkout-card .manual-payment-instructions dl{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin:0;
}

main.premium-store-page .premium-checkout-section .eft-checkout-card .manual-payment-instructions dt{
  margin:0;
  font-size:.92rem;
  line-height:1.2;
  font-weight:700;
  color:#335656;
}

main.premium-store-page .premium-checkout-section .eft-checkout-card .manual-payment-instructions dd{
  margin:4px 0 0;
  font-size:1rem;
  line-height:1.45;
  color:#1f3131;
  word-break:break-word;
}

main.premium-store-page .premium-checkout-section .eft-checkout-card .manual-payment-instructions a.button{
  justify-self:start;
  margin-top:4px;
}

main.premium-store-page .premium-checkout-section .eft-checkout-card:has([data-manual-payment-result] .manual-payment-instructions) > .hint{
  display:none;
}

@media(max-width:900px){
  main.premium-store-page .premium-checkout-section .checkout-choice-grid{
    grid-template-columns:1fr;
    width:min(100%,680px);
  }
}

/* v60.5.64 — client weekly nutrition, PB celebration and progress photos */
.athlete-weekly-nutrition .nutrition-weekly-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
.weekly-pb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}
.weekly-pb-card{position:relative;border:1px solid #dce7e7;border-top:4px solid #045D5D;border-radius:16px;padding:18px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.04)}
.weekly-pb-card h3{margin:.15rem 0 .8rem;padding-right:34px}
.weekly-pb-card small{display:block;margin-top:10px;color:#687474}
.weekly-pb-icon{position:absolute;right:16px;top:14px;font-size:1.35rem}
.weekly-pb-result{display:grid;gap:2px;margin:8px 0}
.weekly-pb-result strong{font-size:1.25rem;color:#047b7b}
.weekly-pb-result span{font-size:.88rem;color:#596969}

.progress-photo-section{overflow:visible}
.progress-photo-privacy{border-left:4px solid #045D5D;background:#eef8f8;border-radius:12px;padding:14px 18px;margin:18px 0 24px}
.progress-photo-privacy p{margin:.35rem 0 0}
.progress-photo-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.progress-photo-columns>article{border:1px solid #dce7e7;border-radius:18px;padding:20px;background:#fff}
.progress-photo-set-heading{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:14px}
.progress-photo-set-heading h3{margin:.2rem 0}
.progress-photo-set-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.progress-photo-card{min-width:0}
.progress-photo-frame{aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:#eef3f3;border:1px solid #d7e2e2;margin-bottom:8px;display:grid;place-items:center}
.progress-photo-frame img{width:100%;height:100%;object-fit:cover;display:block}
.progress-photo-placeholder{padding:12px;text-align:center;color:#778585;font-size:.85rem}
.progress-photo-card>strong{display:block;text-align:center}
.progress-photo-upload-block{margin-top:18px;padding-top:16px;border-top:1px solid #e2eaea}
.progress-photo-upload-form{display:grid;gap:14px;margin-top:14px;padding:16px;border:1px solid #dce7e7;border-radius:14px;background:#f8fbfb}
.progress-photo-file-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.progress-photo-file-grid label{min-width:0}
.progress-photo-file-grid input[type=file]{width:100%;max-width:100%;font-size:.85rem}
.progress-photo-print-sheet{display:none}

@media(max-width:1050px){
  .athlete-weekly-nutrition .nutrition-weekly-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .weekly-pb-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:780px){
  .progress-photo-columns{grid-template-columns:1fr}
  .progress-photo-set-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .progress-photo-file-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .athlete-weekly-nutrition .nutrition-weekly-stats,.weekly-pb-grid{grid-template-columns:1fr}
  .progress-photo-set-grid{grid-template-columns:1fr}
  .progress-photo-frame{aspect-ratio:4/5;max-height:520px}
}

@media print{
  html.printing-progress-photos body *{visibility:hidden!important}
  html.printing-progress-photos .progress-photo-print-sheet,
  html.printing-progress-photos .progress-photo-print-sheet *{visibility:visible!important}
  html.printing-progress-photos .progress-photo-print-sheet{display:block!important;position:absolute;inset:0;width:100%;background:#fff}
  html.printing-progress-photos #portal-header{display:none!important}
  html.printing-progress-photos main#app{margin:0!important;padding:0!important;max-width:none!important;width:100%!important}
  html.printing-progress-photos .progress-photo-print-page{display:flex!important;visibility:visible!important;flex-direction:column;box-sizing:border-box;min-height:98vh;padding:10mm 11mm;page-break-after:always;break-after:page;background:#fff;color:#222}
  html.printing-progress-photos .progress-photo-print-page:last-child{page-break-after:auto;break-after:auto}
  html.printing-progress-photos .progress-photo-print-page header{border-top:4px solid #045D5D;padding-top:7mm;margin-bottom:6mm}
  html.printing-progress-photos .progress-photo-print-page header p{margin:0;text-transform:uppercase;letter-spacing:1.5px;font-size:9pt;color:#047b7b;font-weight:700}
  html.printing-progress-photos .progress-photo-print-page header h1{font-size:20pt;margin:3mm 0 1mm}
  html.printing-progress-photos .progress-photo-print-page header h2{font-size:14pt;margin:0 0 3mm}
  html.printing-progress-photos .progress-photo-print-page header>div{display:flex;gap:12mm;font-size:9pt}
  html.printing-progress-photos .progress-photo-print-pair{display:grid;grid-template-columns:1fr 1fr;gap:8mm;flex:1;min-height:0}
  html.printing-progress-photos .progress-photo-print-pair figure{margin:0;display:flex;flex-direction:column;min-height:0}
  html.printing-progress-photos .progress-photo-print-pair figcaption{text-align:center;font-size:10pt;font-weight:700;letter-spacing:1px;margin-bottom:3mm;color:#045D5D}
  html.printing-progress-photos .progress-photo-print-pair img{display:block;width:100%;height:205mm;object-fit:contain;border:1px solid #d5dddd;background:#fafafa}
  html.printing-progress-photos .progress-photo-print-page footer{margin-top:4mm;padding-top:3mm;border-top:1px solid #dfe8e8;font-size:8pt;color:#687474;text-align:center}
  @page{size:A4 portrait;margin:0}
}
