/*
 * GTGF v15.23 — Desktop premium polish
 * Scope: training planner + nutrition planner only.
 * IMPORTANT: everything is wrapped in min-width:783px so v15.21 mobile stays untouched.
 */

@media (min-width: 783px) {
  /* Shared desktop rhythm */
  body.gtgf-v14 .planner-results,
  body.gtgf-v14 .nutrition-results {
    max-width: 1480px;
    margin-inline: auto;
  }

  /* -------------------------------------------------
   * TRAINING PLANNER
   * ------------------------------------------------- */
  body.gtgf-v14 .planner-results > .planner-summary {
    display: grid !important;
    grid-template-columns: minmax(0, 1.15fr) minmax(420px, .85fr) !important;
    gap: clamp(30px, 4vw, 64px) !important;
    align-items: end !important;
    padding: clamp(28px, 3vw, 44px) !important;
    margin: 0 0 18px !important;
    border: 1px solid #d7d2ca !important;
    background: #f7f4ee !important;
  }

  body.gtgf-v14 .planner-results > .planner-summary .home-kicker {
    margin: 0 0 12px !important;
    color: #ff5a00 !important;
    font-size: .66rem !important;
    font-weight: 950 !important;
    letter-spacing: .16em !important;
  }

  body.gtgf-v14 .planner-results > .planner-summary #planner-title {
    max-width: 760px !important;
    margin: 0 !important;
    color: #0c0c0c !important;
    font-size: clamp(3rem, 4.8vw, 5.8rem) !important;
    line-height: .86 !important;
    letter-spacing: -.035em !important;
  }

  body.gtgf-v14 .planner-summary__stats {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-self: stretch !important;
    min-width: 0 !important;
    border-top: 1px solid #d7d2ca !important;
    border-bottom: 1px solid #d7d2ca !important;
  }

  body.gtgf-v14 .planner-summary__stats span {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    gap: 7px !important;
    padding: 22px 18px !important;
    border-left: 1px solid #d7d2ca !important;
    color: #77716a !important;
    font-size: .62rem !important;
    font-weight: 900 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 .planner-summary__stats span:first-child {
    border-left: 3px solid #ff5a00 !important;
  }

  body.gtgf-v14 .planner-summary__stats strong {
    display: block !important;
    color: #111 !important;
    font-size: clamp(1.2rem, 1.5vw, 1.75rem) !important;
    line-height: 1 !important;
    letter-spacing: -.02em !important;
  }

  body.gtgf-v14 #planner-method-summary.planner-method-summary {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 0 0 20px !important;
    background: transparent !important;
  }

  body.gtgf-v14 #planner-method-summary.planner-method-summary article {
    min-width: 0 !important;
    min-height: 150px !important;
    padding: 22px 22px 20px !important;
    border: 1px solid #d7d2ca !important;
    background: #fff !important;
  }

  body.gtgf-v14 #planner-method-summary.planner-method-summary article span {
    display: block !important;
    margin-bottom: 16px !important;
    color: #ff5a00 !important;
    font-size: .62rem !important;
    font-weight: 950 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 #planner-method-summary.planner-method-summary article strong {
    display: block !important;
    color: #111 !important;
    font-size: clamp(1.35rem, 1.6vw, 1.85rem) !important;
    line-height: .98 !important;
  }

  body.gtgf-v14 #planner-method-summary.planner-method-summary article p {
    max-width: 30ch !important;
    margin: 12px 0 0 !important;
    color: #6c6761 !important;
    font-size: .78rem !important;
    line-height: 1.55 !important;
  }

  body.gtgf-v14 #planner-architecture-summary.planner-architecture-summary {
    display: grid !important;
    grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr) !important;
    gap: clamp(28px, 4vw, 70px) !important;
    align-items: start !important;
    margin: 0 0 26px !important;
    padding: 28px 32px !important;
    border: 1px solid #242424 !important;
    border-left: 4px solid #ff5a00 !important;
    background: #111 !important;
    color: #fff !important;
  }

  body.gtgf-v14 #planner-architecture-summary.planner-architecture-summary span {
    display: block !important;
    margin-bottom: 8px !important;
    color: #ff6a19 !important;
    font-size: .62rem !important;
    font-weight: 950 !important;
    letter-spacing: .13em !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 #planner-architecture-summary.planner-architecture-summary strong {
    display: block !important;
    color: #fff !important;
    font-size: clamp(1.25rem, 1.8vw, 2rem) !important;
    line-height: 1.08 !important;
  }

  body.gtgf-v14 #planner-architecture-summary.planner-architecture-summary p {
    max-width: 72ch !important;
    margin: 0 !important;
    color: rgba(255,255,255,.68) !important;
    font-size: .86rem !important;
    line-height: 1.7 !important;
  }

  body.gtgf-v14 .planner-week-navigation {
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) 48px !important;
    gap: 10px !important;
    align-items: center !important;
    margin: 0 0 14px !important;
    padding: 12px !important;
    border: 1px solid #d7d2ca !important;
    background: #f7f4ee !important;
  }

  body.gtgf-v14 .planner-week-navigation > button {
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
    border: 1px solid #cfc9bf !important;
    background: #fff !important;
    color: #111 !important;
    font-size: 1rem !important;
  }

  body.gtgf-v14 #planner-week-tabs.planner-week-tabs {
    display: flex !important;
    gap: 8px !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    padding: 1px 1px 4px !important;
    scrollbar-width: thin !important;
  }

  body.gtgf-v14 #planner-week-tabs.planner-week-tabs button {
    flex: 0 0 52px !important;
    width: 52px !important;
    min-width: 52px !important;
    height: 48px !important;
    padding: 0 !important;
    border: 1px solid #d5d0c8 !important;
    background: #fff !important;
    color: #77716a !important;
    font-size: .78rem !important;
    font-weight: 850 !important;
  }

  body.gtgf-v14 #planner-week-tabs.planner-week-tabs button.is-active {
    border-color: #111 !important;
    background: #111 !important;
    color: #fff !important;
    box-shadow: inset 0 -3px 0 #ff5a00 !important;
  }

  body.gtgf-v14 #planner-week-heading.planner-week-heading {
    display: grid !important;
    grid-template-columns: minmax(230px, .75fr) minmax(300px, 1.3fr) minmax(230px, .75fr) !important;
    gap: 30px !important;
    align-items: center !important;
    margin: 0 0 14px !important;
    padding: 26px 30px !important;
    border: 0 !important;
    background: #ff5a00 !important;
    color: #0b0b0b !important;
  }

  body.gtgf-v14 #planner-week-heading.planner-week-heading > * {
    min-width: 0 !important;
    margin: 0 !important;
    color: #0b0b0b !important;
  }

  body.gtgf-v14 #planner-week-heading.planner-week-heading > span {
    display: grid !important;
    gap: 6px !important;
    font-size: .68rem !important;
    font-weight: 950 !important;
    letter-spacing: .13em !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 #planner-week-heading.planner-week-heading > span em {
    font-size: .61rem !important;
    font-style: normal !important;
    letter-spacing: .08em !important;
  }

  body.gtgf-v14 #planner-week-heading.planner-week-heading > strong {
    text-align: center !important;
    font-size: clamp(2rem, 2.8vw, 3.4rem) !important;
    line-height: .9 !important;
    letter-spacing: -.025em !important;
  }

  body.gtgf-v14 #planner-week-heading.planner-week-heading > small {
    justify-self: end !important;
    text-align: right !important;
    font-size: .68rem !important;
    font-weight: 950 !important;
    letter-spacing: .11em !important;
    line-height: 1.45 !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 #planner-week.planner-week {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.gtgf-v14 #planner-week.planner-week > .planner-day {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    min-height: 330px !important;
    padding: 0 20px 20px !important;
    border: 1px solid #d8d3cb !important;
    background: #fff !important;
    box-shadow: 0 14px 32px rgba(17,17,17,.045) !important;
    overflow: hidden !important;
  }

  body.gtgf-v14 #planner-week.planner-week > .planner-day::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 auto 0 0 !important;
    width: 3px !important;
    background: #ded9d1 !important;
  }

  body.gtgf-v14 #planner-week.planner-week > .planner-day.planner-day--quality::before,
  body.gtgf-v14 #planner-week.planner-week > .planner-day.planner-day--long::before {
    background: #ff5a00 !important;
  }

  body.gtgf-v14 #planner-week.planner-week > .planner-day.is-rest {
    background: #ebe8e1 !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-day__top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin: 0 -20px 18px !important;
    padding: 15px 18px 14px 20px !important;
    border-bottom: 1px solid #e2ded7 !important;
    background: #f8f6f2 !important;
    color: #111 !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-day__label {
    display: grid !important;
    gap: 3px !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-day__label b {
    font-size: .74rem !important;
    font-weight: 950 !important;
    letter-spacing: .06em !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-day__date {
    color: #89837b !important;
    font-size: .59rem !important;
    font-weight: 800 !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-day__top > strong {
    color: #111 !important;
    font-size: .68rem !important;
    font-weight: 950 !important;
    letter-spacing: .06em !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-session {
    display: block !important;
    min-width: 0 !important;
    padding: 0 !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-session + .planner-session {
    margin-top: 18px !important;
    padding-top: 18px !important;
    border-top: 1px solid #e2ded7 !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-session__order {
    display: inline-block !important;
    margin-bottom: 8px !important;
    color: #ff5a00 !important;
    font-size: .57rem !important;
    font-weight: 950 !important;
    letter-spacing: .11em !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-day h3,
  body.gtgf-v14 #planner-week.planner-week .planner-session h3 {
    margin: 0 0 11px !important;
    color: #111 !important;
    font-size: clamp(1.35rem, 1.55vw, 1.8rem) !important;
    line-height: .96 !important;
    letter-spacing: -.018em !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-session__signals {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin-bottom: 11px !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-session__signals span {
    min-height: 26px !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 5px 8px !important;
    border: 1px solid #d7d2ca !important;
    background: #f5f2ec !important;
    color: #252525 !important;
    font-size: .57rem !important;
    font-weight: 900 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-session__signals .is-fuel {
    border-color: rgba(255,90,0,.34) !important;
    background: #fff6ef !important;
    color: #be4300 !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-day__meta {
    margin: 0 0 11px !important;
    color: #68625c !important;
    font-size: .69rem !important;
    line-height: 1.4 !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-session > p:not(.planner-day__meta),
  body.gtgf-v14 #planner-week.planner-week > .planner-day.is-rest > p {
    display: -webkit-box !important;
    margin: 0 0 14px !important;
    overflow: hidden !important;
    color: #5f5a54 !important;
    font-size: .78rem !important;
    line-height: 1.55 !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
  }

  body.gtgf-v14 #planner-week.planner-week > .planner-day.has-double .planner-session > p:not(.planner-day__meta),
  body.gtgf-v14 #planner-week.planner-week > .planner-day.has-triple .planner-session > p:not(.planner-day__meta) {
    -webkit-line-clamp: 2 !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-day__open {
    width: 100% !important;
    min-height: 46px !important;
    margin: auto 0 0 !important;
    padding: 12px 14px !important;
    border: 1px solid #bfb8af !important;
    background: transparent !important;
    color: #111 !important;
    font-size: .66rem !important;
    font-weight: 950 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-day__open:hover,
  body.gtgf-v14 #planner-week.planner-week .planner-day__open:focus-visible {
    border-color: #111 !important;
    background: #111 !important;
    color: #fff !important;
  }

  body.gtgf-v14 #planner-week.planner-week .planner-day.has-double::after,
  body.gtgf-v14 #planner-week.planner-week .planner-day.has-triple::after {
    display: none !important;
  }

  /* -------------------------------------------------
   * NUTRITION PLANNER
   * ------------------------------------------------- */
  body.gtgf-v14 .nutrition-results__head {
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr) !important;
    gap: 42px !important;
    align-items: end !important;
    padding: 30px 34px !important;
    margin-bottom: 14px !important;
    border: 1px solid #272727 !important;
    background: #101010 !important;
  }

  body.gtgf-v14 .nutrition-results__head h2 {
    max-width: 760px !important;
    margin: 6px 0 10px !important;
    color: #fff !important;
    font-size: clamp(2.5rem, 3.6vw, 4.7rem) !important;
    line-height: .9 !important;
  }

  body.gtgf-v14 .nutrition-results__hint {
    max-width: 760px !important;
    color: rgba(255,255,255,.64) !important;
    font-size: .84rem !important;
    line-height: 1.65 !important;
  }

  body.gtgf-v14 .nutrition-results__legend {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: 8px 14px !important;
    padding: 16px 18px !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    background: rgba(255,255,255,.025) !important;
  }

  body.gtgf-v14 .nutrition-results__legend span {
    color: rgba(255,255,255,.74) !important;
    font-size: .64rem !important;
    font-weight: 850 !important;
    letter-spacing: .04em !important;
  }

  body.gtgf-v14 .nutrition-week-focus {
    margin: 16px 0 18px !important;
    padding: 30px 32px 32px !important;
    border: 1px solid #262626 !important;
    background: #0d0d0d !important;
    color: #fff !important;
  }

  body.gtgf-v14 .nutrition-week-focus__head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 30px !important;
    align-items: end !important;
    margin-bottom: 24px !important;
  }

  body.gtgf-v14 .nutrition-week-focus__head h3 {
    margin: 5px 0 8px !important;
    color: #fff !important;
    font-size: clamp(1.8rem, 2.4vw, 2.8rem) !important;
    line-height: .95 !important;
  }

  body.gtgf-v14 .nutrition-week-focus__head p {
    max-width: 760px !important;
    color: rgba(255,255,255,.62) !important;
    font-size: .82rem !important;
    line-height: 1.6 !important;
  }

  body.gtgf-v14 .nutrition-week-focus__shopping {
    align-self: center !important;
    padding: 12px 0 10px !important;
    border-bottom: 1px solid rgba(255,106,25,.55) !important;
    color: #ff6a19 !important;
    font-size: .65rem !important;
    font-weight: 950 !important;
    letter-spacing: .1em !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 #nutrition-week-overview.nutrition-week-overview {
    display: grid !important;
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  body.gtgf-v14 #nutrition-week-overview .nutrition-week-overview__day {
    position: relative !important;
    display: grid !important;
    grid-template-rows: auto minmax(2.4em, auto) auto auto !important;
    align-content: start !important;
    gap: 8px !important;
    min-width: 0 !important;
    min-height: 128px !important;
    padding: 16px 14px 15px !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    background: #141414 !important;
    color: #fff !important;
    text-align: left !important;
    box-shadow: none !important;
  }

  body.gtgf-v14 #nutrition-week-overview .nutrition-week-overview__day::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 0 auto !important;
    height: 3px !important;
    background: transparent !important;
  }

  body.gtgf-v14 #nutrition-week-overview .nutrition-week-overview__day:hover {
    transform: translateY(-2px) !important;
    border-color: rgba(255,106,25,.5) !important;
    background: #181818 !important;
  }

  body.gtgf-v14 #nutrition-week-overview .nutrition-week-overview__day.is-active {
    border-color: rgba(255,106,25,.75) !important;
    background: #1a120d !important;
    box-shadow: none !important;
  }

  body.gtgf-v14 #nutrition-week-overview .nutrition-week-overview__day.is-active::before {
    background: #ff5a00 !important;
  }

  body.gtgf-v14 #nutrition-week-overview .nutrition-week-overview__day > span {
    color: #ff6a19 !important;
    font-size: .58rem !important;
    font-weight: 950 !important;
    letter-spacing: .14em !important;
  }

  body.gtgf-v14 #nutrition-week-overview .nutrition-week-overview__day > strong {
    overflow: visible !important;
    color: #fff !important;
    font-size: .82rem !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    text-overflow: clip !important;
  }

  body.gtgf-v14 #nutrition-week-overview .nutrition-week-overview__day > small {
    color: rgba(255,255,255,.76) !important;
    font-size: .63rem !important;
    font-weight: 850 !important;
    line-height: 1.35 !important;
  }

  body.gtgf-v14 #nutrition-week-overview .nutrition-week-overview__day > em {
    color: rgba(255,255,255,.48) !important;
    font-size: .58rem !important;
    line-height: 1.3 !important;
  }

  body.gtgf-v14 #nutrition-week.nutrition-week {
    display: block !important;
    margin-top: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.gtgf-v14 #nutrition-week.nutrition-week > .nutrition-day {
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: clamp(34px, 3.6vw, 54px) !important;
    border: 1px solid #2a2a2a !important;
    background: #0d0d0d !important;
    box-shadow: 0 24px 70px rgba(0,0,0,.14) !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day header {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 30px !important;
    align-items: start !important;
    padding-bottom: 22px !important;
    margin-bottom: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.14) !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day header h3 {
    max-width: 760px !important;
    margin: 7px 0 0 !important;
    color: #fff !important;
    font-size: clamp(2rem, 2.8vw, 3.35rem) !important;
    line-height: .92 !important;
    letter-spacing: -.025em !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day header > strong {
    align-self: start !important;
    padding-top: 4px !important;
    color: #ff6a19 !important;
    font-size: .61rem !important;
    letter-spacing: .11em !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__linked-training {
    margin: 18px 0 0 !important;
    padding: 16px 18px !important;
    border-left: 3px solid #ff5a00 !important;
    background: #15110f !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__fuel {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    padding: 18px 0 !important;
    border-bottom: 0 !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__fuel p {
    min-width: 0 !important;
    margin: 0 !important;
    padding: 15px 16px !important;
    border: 1px solid rgba(255,255,255,.11) !important;
    background: #131313 !important;
    color: rgba(255,255,255,.68) !important;
    font-size: .73rem !important;
    line-height: 1.55 !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__fuel p strong {
    color: #fff !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__targets {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin: 0 0 12px !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__targets span {
    min-width: 0 !important;
    display: grid !important;
    gap: 7px !important;
    padding: 16px 15px !important;
    border: 1px solid rgba(255,255,255,.11) !important;
    background: #151515 !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__targets strong {
    color: #fff !important;
    font-size: .94rem !important;
    line-height: 1.1 !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__targets em {
    color: rgba(255,255,255,.5) !important;
    font-size: .52rem !important;
    line-height: 1.25 !important;
    letter-spacing: .07em !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__example-total {
    display: grid !important;
    grid-template-columns: auto auto minmax(0, 1fr) !important;
    gap: 8px 18px !important;
    align-items: baseline !important;
    margin: 0 0 10px !important;
    padding: 15px 17px !important;
    border: 1px solid rgba(139,166,109,.35) !important;
    border-left: 3px solid #8ba66d !important;
    background: #111611 !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__example-total span {
    color: #ff6a19 !important;
    font-size: .55rem !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__example-total strong {
    color: #fff !important;
    font-size: .88rem !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__example-total small {
    min-width: 0 !important;
    color: rgba(255,255,255,.62) !important;
    font-size: .64rem !important;
    line-height: 1.4 !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__balance {
    display: grid !important;
    grid-template-columns: 120px minmax(0, 1fr) !important;
    gap: 22px !important;
    align-items: start !important;
    margin: 0 0 14px !important;
    padding: 17px 18px !important;
    border: 1px solid rgba(255,255,255,.1) !important;
    border-left: 3px solid #8ba66d !important;
    background: #111 !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__balance strong {
    padding-top: 1px !important;
    color: #fff !important;
    font-size: .64rem !important;
    letter-spacing: .1em !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__balance span {
    color: rgba(255,255,255,.67) !important;
    font-size: .72rem !important;
    line-height: 1.6 !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-day__meals {
    display: grid !important;
    gap: 0 !important;
    margin-top: 8px !important;
    border-top: 1px solid rgba(255,255,255,.12) !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-meal {
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-meal__toggle {
    display: grid !important;
    grid-template-columns: 112px minmax(0, 1fr) 104px 120px !important;
    gap: 20px !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 20px 4px !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-meal__slot {
    color: #ff6a19 !important;
    font-size: .57rem !important;
    font-weight: 950 !important;
    letter-spacing: .11em !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-meal__summary {
    display: grid !important;
    gap: 5px !important;
    min-width: 0 !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-meal__summary strong {
    color: #fff !important;
    font-size: .9rem !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-meal__summary small {
    max-width: 620px !important;
    color: rgba(255,255,255,.55) !important;
    font-size: .64rem !important;
    line-height: 1.5 !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-meal__energy {
    justify-self: end !important;
    min-width: 94px !important;
    padding: 8px 10px !important;
    border: 1px solid rgba(255,90,0,.42) !important;
    color: #ff6a19 !important;
    font-size: .59rem !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-meal__open {
    display: inline-flex !important;
    justify-self: end !important;
    align-items: center !important;
    gap: 8px !important;
    color: rgba(255,255,255,.64) !important;
    font-size: .56rem !important;
    font-weight: 900 !important;
    letter-spacing: .07em !important;
    white-space: nowrap !important;
    text-transform: uppercase !important;
  }

  body.gtgf-v14 #nutrition-week .nutrition-meal__toggle:hover .nutrition-meal__open,
  body.gtgf-v14 #nutrition-week .nutrition-meal__toggle:focus-visible .nutrition-meal__open {
    color: #fff !important;
  }
}

/* Tablet / small desktop: still premium, fewer planner columns. */
@media (min-width: 783px) and (max-width: 1180px) {
  body.gtgf-v14 #planner-week.planner-week {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  body.gtgf-v14 #planner-week-heading.planner-week-heading {
    grid-template-columns: 1fr 1.4fr 1fr !important;
  }
  body.gtgf-v14 #nutrition-week-overview.nutrition-week-overview {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  body.gtgf-v14 #nutrition-week .nutrition-meal__toggle {
    grid-template-columns: 90px minmax(0, 1fr) 94px !important;
  }
  body.gtgf-v14 #nutrition-week .nutrition-meal__open {
    grid-column: 2 / -1 !important;
    justify-self: start !important;
  }
}

@media (min-width: 783px) and (max-width: 980px) {
  body.gtgf-v14 .planner-results > .planner-summary,
  body.gtgf-v14 .nutrition-results__head,
  body.gtgf-v14 #planner-architecture-summary.planner-architecture-summary {
    grid-template-columns: 1fr !important;
  }
  body.gtgf-v14 #planner-week.planner-week {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.gtgf-v14 #planner-method-summary.planner-method-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.gtgf-v14 #planner-week-heading.planner-week-heading {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  body.gtgf-v14 #planner-week-heading.planner-week-heading > strong,
  body.gtgf-v14 #planner-week-heading.planner-week-heading > small {
    justify-self: start !important;
    text-align: left !important;
  }
  body.gtgf-v14 #nutrition-week-overview.nutrition-week-overview {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
