/* LMM Tools 1.0.0 */

.lmm-tools-hub,
.lmm-tool-page{
  width:min(calc(100% - 40px),var(--lmm-editorial));
  margin:0 auto;
}

.lmm-tools-hub{
  padding:72px 0 96px;
}

.lmm-tools-hub__hero,
.lmm-tool-page__hero{
  margin-bottom:46px;
}

.lmm-tools-hub__hero h1,
.lmm-tool-page__hero h1{
  max-width:780px;
  font-size:clamp(2.5rem,7vw,4.4rem);
}

.lmm-tools-list{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.lmm-tool-card{
  min-height:330px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:28px;
  background:#fff;
  border:1px solid var(--lmm-border);
  border-radius:var(--lmm-radius);
}

.lmm-tool-card h2{
  margin:10px 0 12px;
  font-size:1.55rem;
}

.lmm-tool-card p{
  color:var(--lmm-muted);
  font-size:15px;
}

.lmm-tool-card__type{
  color:var(--lmm-green);
  font:800 11px/1.2 Manrope,Inter,sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.lmm-tool-card--future{
  opacity:.64;
}

.lmm-tool-page{
  padding:70px 0 96px;
}

.lmm-protein-tool{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:24px;
  align-items:start;
  margin-bottom:72px;
}

.lmm-protein-form,
.lmm-protein-result{
  padding:30px;
  background:#fff;
  border:1px solid var(--lmm-border);
  border-radius:var(--lmm-radius-lg);
  box-shadow:var(--lmm-shadow);
}

.lmm-tool-field label,
.lmm-tool-fieldset legend{
  display:block;
  margin-bottom:10px;
  color:var(--lmm-ink);
  font:750 15px/1.3 Manrope,Inter,sans-serif;
}

.lmm-tool-input-wrap{
  display:flex;
  align-items:center;
  background:var(--lmm-bg);
  border:1px solid var(--lmm-border);
  border-radius:10px;
  overflow:hidden;
}

.lmm-tool-input-wrap input{
  width:100%;
  min-height:58px;
  padding:12px 15px;
  border:0;
  background:transparent;
  color:var(--lmm-ink);
  font-size:22px;
  font-weight:700;
  outline:none;
}

.lmm-tool-input-wrap span{
  padding:0 16px;
  color:var(--lmm-muted);
  font-weight:700;
}

.lmm-tool-field small{
  display:block;
  margin-top:7px;
  color:var(--lmm-muted);
  font-size:12px;
}

.lmm-tool-fieldset{
  margin:28px 0 24px;
  padding:0;
  border:0;
}

.lmm-tool-choice{
  display:flex;
  gap:12px;
  margin-bottom:10px;
  padding:15px;
  border:1px solid var(--lmm-border);
  border-radius:10px;
  cursor:pointer;
}

.lmm-tool-choice:has(input:checked){
  border-color:var(--lmm-green);
  background:var(--lmm-green-soft);
}

.lmm-tool-choice input{
  margin-top:3px;
  accent-color:var(--lmm-green);
}

.lmm-tool-choice strong,
.lmm-tool-choice em{
  display:block;
}

.lmm-tool-choice strong{
  color:var(--lmm-ink);
  font:700 14px/1.35 Manrope,Inter,sans-serif;
}

.lmm-tool-choice em{
  margin-top:3px;
  color:var(--lmm-muted);
  font-size:12px;
  font-style:normal;
}

.lmm-protein-submit{
  width:100%;
}

.lmm-tool-error{
  margin:12px 0 0;
  color:#9b2c2c;
  font-size:13px;
}

.lmm-protein-result{
  position:sticky;
  top:24px;
}

.lmm-protein-result__range{
  display:grid;
  grid-template-columns:auto auto auto;
  align-items:baseline;
  justify-content:start;
  gap:10px;
  margin:8px 0 18px;
}

.lmm-protein-result__range strong{
  color:var(--lmm-green);
  font:800 clamp(2.3rem,6vw,4rem)/1 Manrope,Inter,sans-serif;
}

.lmm-protein-result__range span{
  color:var(--lmm-muted);
  font-weight:700;
}

.lmm-protein-result__range em{
  grid-column:1/-1;
  color:var(--lmm-muted);
  font-style:normal;
  font-size:14px;
}

.lmm-protein-result>p{
  color:var(--lmm-text);
}

.lmm-protein-distribution{
  margin:24px 0;
  padding:20px;
  background:var(--lmm-bg);
  border-radius:10px;
}

.lmm-protein-distribution span,
.lmm-protein-distribution em{
  display:block;
  color:var(--lmm-muted);
  font-size:12px;
  font-style:normal;
}

.lmm-protein-distribution strong{
  display:block;
  margin:3px 0;
  color:var(--lmm-ink);
  font:800 2rem/1.2 Manrope,Inter,sans-serif;
}

.lmm-tool-explain{
  width:min(100%,var(--lmm-reading));
  margin:0 auto 72px;
}

.lmm-tool-explain h2{
  margin-top:40px;
  font-size:clamp(1.7rem,5vw,2.4rem);
}

.lmm-tool-explain p{
  color:var(--lmm-text);
}

.lmm-tool-page .lmm-next-step{
  padding:34px;
  background:var(--lmm-green);
  border-radius:var(--lmm-radius-lg);
  color:#fff;
}

.lmm-tool-page .lmm-next-step h2{
  color:#fff;
}

.lmm-tool-page .lmm-next-step .lmm-eyebrow{
  color:var(--lmm-green-soft);
}

@media(max-width:900px){
  .lmm-tools-list{
    grid-template-columns:1fr;
  }

  .lmm-tool-card{
    min-height:auto;
  }

  .lmm-protein-tool{
    grid-template-columns:1fr;
  }

  .lmm-protein-result{
    position:static;
  }
}

@media(max-width:620px){
  .lmm-tools-hub,
  .lmm-tool-page{
    width:min(calc(100% - 28px),var(--lmm-editorial));
  }

  .lmm-tools-hub,
  .lmm-tool-page{
    padding-top:48px;
  }

  .lmm-protein-form,
  .lmm-protein-result{
    padding:20px;
  }

  .lmm-tool-choice{
    padding:13px;
  }
}


/* 1RM calculator — LMM Tools 1.1.0 */
.lmm-one-rm-tool{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:24px;
  align-items:start;
  margin-bottom:72px;
}
.lmm-one-rm-form,
.lmm-one-rm-result{
  padding:30px;
  background:#fff;
  border:1px solid var(--lmm-border);
  border-radius:var(--lmm-radius-lg);
  box-shadow:var(--lmm-shadow);
}
.lmm-tool-field--spaced{margin-top:24px}
.lmm-one-rm-submit{width:100%;margin-top:24px}
.lmm-one-rm-result{position:sticky;top:24px}
.lmm-one-rm-result__main{
  margin:8px 0 20px;
}
.lmm-one-rm-result__main strong{
  display:block;
  color:var(--lmm-green);
  font:800 clamp(3rem,8vw,5rem)/1 Manrope,Inter,sans-serif;
}
.lmm-one-rm-result__main em{
  display:block;
  margin-top:5px;
  color:var(--lmm-muted);
  font-size:14px;
  font-style:normal;
}
.lmm-load-table{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px;
  margin:24px 0;
}
.lmm-load-table div{
  padding:16px;
  background:var(--lmm-bg);
  border:1px solid var(--lmm-border);
  border-radius:10px;
}
.lmm-load-table span,
.lmm-load-table em{
  display:block;
  color:var(--lmm-muted);
  font-size:11px;
  font-style:normal;
}
.lmm-load-table strong{
  display:inline-block;
  margin:4px 4px 0 0;
  color:var(--lmm-ink);
  font:800 1.55rem/1 Manrope,Inter,sans-serif;
}
.lmm-load-table em{display:inline}
@media(max-width:900px){
  .lmm-one-rm-tool{grid-template-columns:1fr}
  .lmm-one-rm-result{position:static}
}
@media(max-width:620px){
  .lmm-one-rm-form,.lmm-one-rm-result{padding:20px}
}

.lmm-progress-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lmm-progress-grid>div>label{display:block;font-size:13px;font-weight:700;color:#69716C;margin-bottom:7px}
.lmm-progression-tool{margin:32px 0 46px}
.lmm-progression-result{margin-top:22px;padding:26px;background:#F2F6F3;border:1px solid rgba(31,74,58,.14);border-radius:18px}
.lmm-progression-result h2{margin:8px 0 10px}
@media(max-width:720px){.lmm-progress-grid{grid-template-columns:1fr}.lmm-progression-result{padding:20px}}
