/*
 * Approved premium journey dashboard – 2026-09-12.
 * Exact user-approved backgrounds. Text, state and controls remain live UI.
 */
.objective-page.has-journey .objective-week-progress {
  position: relative;
  overflow: hidden;
  min-height: 250px;
  padding: 22px !important;
  border-color: rgba(238,177,45,.72) !important;
  background-image:
    linear-gradient(100deg, rgba(3,3,3,.96) 0%, rgba(5,5,5,.83) 48%, rgba(4,4,3,.34) 100%),
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.40)),
    url('/assets/objective/objective-progress-week.webp?v=20260912') !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center right !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,209,93,.05),
    0 16px 38px rgba(0,0,0,.42),
    0 0 24px rgba(216,154,27,.08) !important;
}
.objective-page.has-journey .objective-week-progress .objective-section-heading,
.objective-page.has-journey .objective-week-progress .objective-progress-body {
  position: relative;
  z-index: 1;
}
.objective-page.has-journey .objective-week-progress .objective-section-heading small {
  color: #f0b93e !important;
  font-size: .84rem !important;
  letter-spacing: .18em !important;
}
.objective-page.has-journey .objective-progress-ring {
  width: 108px !important;
  height: 108px !important;
  border: 1px solid rgba(244,190,63,.34);
  box-shadow:
    0 0 0 5px rgba(0,0,0,.32),
    0 0 24px rgba(231,171,45,.16);
}
.objective-page.has-journey .objective-progress-ring::after {
  inset: 11px !important;
  background: radial-gradient(circle at 50% 42%, #111 0%, #050505 72%) !important;
}
.objective-page.has-journey .objective-progress-message {
  padding: 15px 16px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 15px;
  background: linear-gradient(110deg, rgba(13,13,13,.90), rgba(10,9,7,.68));
  backdrop-filter: blur(7px);
  box-shadow: inset 0 1px rgba(255,255,255,.025);
}
.objective-page.has-journey .objective-progress-message b {
  font-size: 1rem;
}
.objective-page.has-journey .objective-mission-dots {
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(6,6,6,.44);
  backdrop-filter: blur(5px);
}

/* Próximo passo: clean approved road/runner asset + real CTA. */
.objective-page.has-journey .objective-next-step {
  position: relative;
  overflow: hidden;
  min-height: 220px;
  grid-template-columns: 64px minmax(0,1fr) !important;
  align-items: start !important;
  align-content: center;
  padding: 24px !important;
  border-color: #e2aa2b !important;
  background-image:
    linear-gradient(90deg, rgba(5,5,5,.98) 0%, rgba(5,5,5,.93) 42%, rgba(5,5,5,.44) 68%, rgba(5,5,5,.10) 100%),
    linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.30)),
    url('/assets/objective/objective-next-step.webp?v=20260912') !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center right !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,214,109,.06),
    0 15px 38px rgba(0,0,0,.40),
    0 0 22px rgba(227,166,38,.10) !important;
}
.objective-page.has-journey .objective-next-step > .objective-next-icon,
.objective-page.has-journey .objective-next-step > div:not(.objective-next-icon),
.objective-page.has-journey .objective-next-step > button {
  position: relative;
  z-index: 1;
}
.objective-page.has-journey .objective-next-step .objective-next-icon {
  width: 58px !important;
  height: 58px !important;
  border-color: rgba(229,174,52,.58) !important;
  background: rgba(35,26,8,.72) !important;
  box-shadow: 0 0 18px rgba(224,165,39,.12);
}
.objective-page.has-journey .objective-next-step h2 {
  margin-top: 6px !important;
  font-size: clamp(1.35rem,4.8vw,1.7rem) !important;
}
.objective-page.has-journey .objective-next-step p {
  color: rgba(229,224,214,.64) !important;
}
.objective-page.has-journey .objective-next-step > button {
  grid-column: 1 / -1 !important;
  width: min(100%, 360px) !important;
  min-height: 54px !important;
  height: auto !important;
  margin-top: 12px;
  padding: 0 20px !important;
  border: 1px solid rgba(255,216,116,.86) !important;
  border-radius: 14px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 11px;
  color: #0c0903 !important;
  background: linear-gradient(100deg,#e5aa31,#ffd66d) !important;
  box-shadow: 0 10px 24px rgba(218,155,31,.23) !important;
  font-size: .86rem;
  font-weight: 900;
  letter-spacing: .08em;
}
.objective-page.has-journey .objective-next-step > button::after {
  content: 'INICIAR ATIVIDADE';
}
.objective-page.has-journey .objective-next-step > button:disabled::after {
  content: 'ATIVIDADE INDISPONÍVEL';
}
.objective-page.has-journey .objective-next-step > button svg {
  width: 19px;
  height: 19px;
}

/* Plano da semana: subtle approved gold-wave background. */
.objective-page.has-journey .objective-week-plan {
  position: relative;
  overflow: hidden;
  padding: 22px !important;
  border-color: rgba(226,177,70,.30) !important;
  background-image:
    linear-gradient(100deg, rgba(5,5,5,.98) 0%, rgba(7,7,7,.92) 52%, rgba(5,5,5,.54) 100%),
    url('/assets/objective/objective-week-plan.webp?v=20260912') !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center right !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.34) !important;
}
.objective-page.has-journey .objective-week-plan .objective-section-heading,
.objective-page.has-journey .objective-week-plan .objective-week-plan-grid {
  position: relative;
  z-index: 1;
}
.objective-page.has-journey .objective-week-plan-grid button {
  border-color: rgba(255,255,255,.13) !important;
  background: linear-gradient(145deg,rgba(15,15,15,.90),rgba(8,8,8,.78)) !important;
  backdrop-filter: blur(7px);
}
.objective-page.has-journey .objective-week-plan-grid button.is-done {
  border-color: rgba(226,177,70,.55) !important;
  background: linear-gradient(145deg,rgba(60,43,10,.72),rgba(9,9,8,.82)) !important;
}

/* Sync card: second approved texture, clearly distinct from week plan. */
.objective-page.has-journey .objective-utility-card {
  position: relative;
  overflow: hidden;
  min-height: 150px;
  padding: 22px !important;
  border-color: rgba(226,177,70,.30) !important;
  background-image:
    linear-gradient(90deg, rgba(5,5,5,.98) 0%, rgba(5,5,5,.91) 55%, rgba(5,5,5,.42) 100%),
    url('/assets/objective/objective-sync.webp?v=20260912') !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center right !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.34) !important;
}
.objective-page.has-journey .objective-utility-card > * {
  position: relative;
  z-index: 1;
}
.objective-page.has-journey .objective-utility-card > b {
  display: block;
  font-size: 1.15rem;
}
.objective-page.has-journey .objective-utility-card > p {
  max-width: 430px;
  color: rgba(229,224,214,.74);
  line-height: 1.45;
}
.objective-page.has-journey .objective-utility-card > button {
  min-height: 46px;
  padding: 0 16px !important;
  border-color: rgba(226,177,70,.62) !important;
  color: #edb94a !important;
  background: rgba(8,8,8,.74) !important;
  backdrop-filter: blur(6px);
}

/* Keep the approved artwork useful on the narrow TestFlight layout. */
@media (max-width: 620px) {
  .objective-page.has-journey .objective-week-progress {
    min-height: 290px;
    background-position: 58% center !important;
  }
  .objective-page.has-journey .objective-progress-body {
    grid-template-columns: 104px minmax(0,1fr) !important;
  }
  .objective-page.has-journey .objective-progress-message {
    grid-column: 1 / -1 !important;
  }
  .objective-page.has-journey .objective-next-step {
    min-height: 230px;
    background-position: 62% center !important;
  }
  .objective-page.has-journey .objective-week-plan {
    background-position: 64% center !important;
  }
  .objective-page.has-journey .objective-utility-card {
    background-position: 68% center !important;
  }
}
@media (max-width: 420px) {
  .objective-page.has-journey .objective-week-progress,
  .objective-page.has-journey .objective-next-step,
  .objective-page.has-journey .objective-week-plan,
  .objective-page.has-journey .objective-utility-card {
    border-radius: 20px !important;
  }
  .objective-page.has-journey .objective-week-progress {
    padding: 18px !important;
    min-height: 310px;
  }
  .objective-page.has-journey .objective-progress-ring {
    width: 92px !important;
    height: 92px !important;
  }
  .objective-page.has-journey .objective-mission-dots {
    gap: 7px !important;
    padding: 8px;
  }
  .objective-page.has-journey .objective-next-step {
    min-height: 236px;
    padding: 20px !important;
    grid-template-columns: 58px minmax(0,1fr) !important;
    gap: 14px !important;
  }
  .objective-page.has-journey .objective-next-step .objective-next-icon {
    width: 52px !important;
    height: 52px !important;
  }
  .objective-page.has-journey .objective-next-step > button {
    width: 100% !important;
    margin-top: 10px !important;
  }
  .objective-page.has-journey .objective-week-plan,
  .objective-page.has-journey .objective-utility-card {
    padding: 18px !important;
  }
}
