/* Latest requested app polish */
.compact-header nav.header-planner-nav > a,
.compact-header nav.header-planner-nav > a.header-newsletter,
.compact-header nav.header-planner-nav > a.header-packages {
  background: #edf3ed !important; border: 2px solid #afc2b2 !important; color: #365746 !important;
  box-shadow: 0 4px 12px #36574612 !important; transition: background-color .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
}
.compact-header nav.header-planner-nav > a .header-nav-label,
.compact-header nav.header-planner-nav > a .nav-description,
.compact-header nav.header-planner-nav > a .header-nav-icon { color: #365746 !important; stroke: #476f5a !important; }
.compact-header nav.header-planner-nav > a:hover,
.compact-header nav.header-planner-nav > a:focus-visible,
.compact-header nav.header-planner-nav > a.active,
.compact-header nav.header-planner-nav > a[aria-current="page"] {
  background: #cddfce !important; border-color: #3e6c50 !important; color: #234b34 !important;
  box-shadow: inset 0 -4px 0 #b68a37, 0 6px 16px #36574625 !important; transform: translateY(-1px);
}
.compact-header nav.header-planner-nav > a:hover .header-nav-label,
.compact-header nav.header-planner-nav > a:hover .nav-description,
.compact-header nav.header-planner-nav > a.active .header-nav-label,
.compact-header nav.header-planner-nav > a[aria-current="page"] .header-nav-label { color: #234b34 !important; }
.app-header-actions { display:flex; justify-content:flex-end; width:100%; margin:12px 0 4px; }
.install-app-cta { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:54px; padding:13px 22px; border:2px solid #9b711a; border-radius:999px; background:linear-gradient(135deg,#f5d879,#e9bd50); color:#302518; font-weight:900; font-size:1rem; box-shadow:0 7px 18px #b68a3745; cursor:pointer; }
.install-app-cta span,.install-star { color:#9a6b08; font-size:1.35em; }
.install-app-cta:hover { background:#e9bd50; border-color:#765414; transform:translateY(-2px); }
.install-app-cta:focus-visible { outline:3px solid #365746; outline-offset:4px; }
.install-app-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:38px auto 28px; padding:24px 28px; max-width:1100px; border:2px solid #d8b64a; border-radius:20px; background:linear-gradient(110deg,#fff5d6,#fffdf4); box-shadow:0 10px 28px #9d76252b; }
.install-app-bottom h2 { margin:0 0 6px; color:#46371d; font-family:Georgia,serif; }
.install-app-bottom p { margin:0; line-height:1.55; color:#514637; }
.install-app-bottom .install-app-cta { flex:0 0 auto; }
.idea-age-label { display:block; margin:10px 0 5px; font-weight:700; }
#todayIdeaAge { width:100%; max-width:360px; padding:10px 12px; border:1px solid #b9cbb9; border-radius:10px; font:inherit; color:#294d37; background:#f8fbf7; }
#parentClubFrame { height: min(88vh, 1000px) !important; min-height: 780px !important; }
@media(max-width:700px){.install-app-bottom{align-items:stretch;flex-direction:column;text-align:center;padding:20px}.app-header-actions{justify-content:center}.install-app-cta{width:100%}#parentClubFrame{height:86vh!important;min-height:700px!important}}
@media(prefers-reduced-motion:reduce){.install-app-cta,.compact-header nav.header-planner-nav>a{transition:none;transform:none}}

/* Center and emphasize app installation; keep every navigation link consistent. */
.app-header-actions { justify-content:center !important; margin:18px auto 8px; }
.install-app-cta { min-height:64px; min-width:min(100%,340px); padding:17px 30px; font-size:1.12rem; box-shadow:0 9px 24px #9d76255c,0 0 0 3px #fff8dc; }
.install-app-bottom { align-items:center; flex-direction:column; justify-content:center; gap:16px; max-width:760px; text-align:center; padding:30px; }
.install-app-bottom .install-app-cta { width:min(100%,380px); flex:0 1 auto; }
.compact-header nav.header-planner-nav > a,
.compact-header nav.header-planner-nav > a.header-my-family,
.compact-header nav.header-planner-nav > a.header-newsletter,
.compact-header nav.header-planner-nav > a.header-packages,
.compact-header nav.header-planner-nav > a.active,
.compact-header nav.header-planner-nav > a[aria-current="page"] {
  background:#edf3ed !important; border:2px solid #afc2b2 !important; color:#365746 !important;
  box-shadow:0 4px 12px #36574612 !important; transform:none !important;
}
.compact-header nav.header-planner-nav > a .header-nav-label,
.compact-header nav.header-planner-nav > a .nav-description,
.compact-header nav.header-planner-nav > a .header-nav-icon { color:#365746 !important; stroke:#476f5a !important; }
.compact-header nav.header-planner-nav > a:hover { background:#dce8dd !important; border-color:#8ca991 !important; color:#294d37 !important; }
.compact-header nav.header-planner-nav > a:focus-visible { outline:3px solid #365746 !important; outline-offset:3px; }
.compact-header nav.header-planner-nav > a:active {
  background:#f4c7d4 !important; border-color:#bd5f7e !important; color:#68344a !important;
  box-shadow:inset 0 2px 4px #68344a20 !important; transform:translateY(1px) !important;
}
.compact-header nav.header-planner-nav > a:active .header-nav-label,
.compact-header nav.header-planner-nav > a:active .nav-description,
.compact-header nav.header-planner-nav > a:active .header-nav-icon { color:#68344a !important; stroke:#a34e6c !important; }
@media(max-width:700px){.install-app-bottom{padding:22px}.install-app-cta{min-width:0;width:100%}}
.companion-planner .compact-header .app-header-actions { grid-column:1 / -1 !important; grid-row:4 !important; display:flex !important; justify-content:center !important; width:100% !important; }
.companion-planner .compact-header nav.header-planner-nav { grid-row:5 !important; }

/* Match the app’s Install and Packages actions to the blog install button. */
.companion-planner .install-app-cta,
.companion-planner .compact-header nav.header-planner-nav>a.header-packages{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;
 min-height:58px!important;padding:15px 28px!important;border:2px solid #e7c45f!important;border-radius:999px!important;
 background:#bd215b!important;color:#fff!important;box-shadow:0 8px 20px #8d174638!important;
 font-size:1.12rem!important;font-weight:800!important;line-height:1.35!important;text-decoration:none!important;text-align:center!important;
 transition:background-color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
.companion-planner .install-app-cta{width:min(100%,380px)!important;min-width:0!important;cursor:pointer}
.companion-planner .install-app-cta span[aria-hidden="true"]{color:#f3cf72!important;font-size:1.2em!important}
.companion-planner .compact-header nav.header-planner-nav>a.header-packages{
 width:min(100%,380px)!important;max-width:380px!important;min-width:0!important;justify-self:center!important;align-self:center!important;flex-direction:row!important
}
.companion-planner .header-planner-nav>a.header-packages .nav-description{display:none!important}
.companion-planner .header-planner-nav>a.header-packages .header-nav-copy{width:auto!important;flex:0 1 auto!important}
.companion-planner .header-planner-nav>a.header-packages .header-nav-icon{width:22px!important;height:22px!important;padding:0!important;background:transparent!important;color:#f3cf72!important;stroke:#f3cf72!important}
.companion-planner .install-app-cta:hover,.companion-planner .compact-header nav.header-planner-nav>a.header-packages:hover{
 background:#991847!important;border-color:#d9b34a!important;box-shadow:0 10px 24px #8d17464a!important;transform:translateY(-1px)
}
.companion-planner .install-app-cta:focus-visible,.companion-planner .compact-header nav.header-planner-nav>a.header-packages:focus-visible{outline:3px solid #365746!important;outline-offset:4px}
@media(max-width:700px){
 .companion-planner .install-app-cta{width:min(100%,380px)!important}
 .companion-planner .compact-header nav.header-planner-nav>a.header-packages{width:min(100%,380px)!important;min-height:58px!important;padding:15px 20px!important}
}
@media(prefers-reduced-motion:reduce){
 .companion-planner .install-app-cta,.companion-planner .compact-header nav.header-planner-nav>a.header-packages{transition:none!important}
 .companion-planner .install-app-cta:hover,.companion-planner .compact-header nav.header-planner-nav>a.header-packages:hover{transform:none}
}

/* Activity and selected recipe photography */
.companion-planner .activity-photo,.companion-planner .chosen-recipe-image{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:18px;margin:0 0 18px;background:#f8e8ef}
.companion-planner .activity-card{overflow:hidden}
.companion-planner .timed-idea{overflow:hidden}
.companion-planner .chosen-recipe-image{max-height:360px;object-fit:cover;margin:16px 0}

/* App wide requested navigation and package treatments. */
.companion-planner nav a,
.companion-planner nav button,
.packages-page nav a,
.packages-page nav button,
.packages-page .littlewins-connections a,
.companion-planner .littlewins-connections a {
  color: #ce1d68 !important;
}
.companion-planner nav a:hover,
.companion-planner nav button:hover,
.packages-page nav a:hover,
.packages-page nav button:hover,
.packages-page nav [aria-current="page"],
.companion-planner nav [aria-current="page"] {
  color: #a71852 !important;
}
.header-packages::before,
a.package-cta::before,
button[data-preview]::before {
  content: "★";
  color: #f0c34e;
  margin-right: 8px;
  text-shadow: 0 1px 2px #6b3e174d;
}
.show-favorites-button { margin-top: 14px; }
.companion-planner main a[href*="membership.html"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 10px 16px;
  color: #fff !important;
  background: #ce1d68;
  border-radius: 12px;
  font-weight: 700;
  text-decoration: none;
}
.companion-planner main a[href*="membership.html"]::before {
  content: "★";
  color: #f0c34e;
  text-shadow: 0 1px 2px #6b3e174d;
}
.companion-planner main a[href*="membership.html"]:hover {
  background: #a71852;
}
.install-status{padding:10px 12px;background:#fff2f7;border-radius:10px;font-weight:700}
.install-device-steps{display:grid;gap:10px;max-height:48vh;overflow:auto;margin-top:12px;padding-right:4px}
.install-device-steps section{padding:12px 14px;border:1px solid #ead7df;border-radius:12px;background:#fff}
.install-device-steps h3{margin:0 0 6px;color:#9e2454;font-size:1rem}
.install-device-steps ol{margin:0;padding-left:22px}
.install-device-steps li{margin:4px 0;line-height:1.45}

/* Mobile browser fit: protect narrow phone viewports from clipped content. */
@media(max-width:700px){
 html,body.companion-planner{width:100%;min-width:0;overflow-x:clip}
 .companion-planner header.compact-header,.companion-planner main{width:100%;min-width:0}
 .companion-planner .compact-header nav.header-planner-nav>*{min-width:0;overflow-wrap:anywhere}
 .companion-planner .compact-header nav.header-planner-nav .header-nav-copy{min-width:0}
 .companion-planner main .card,.companion-planner main section,.companion-planner main article{max-width:100%;min-width:0}
 .companion-planner main img,.companion-planner main video,.companion-planner main iframe{max-width:100%}
 .companion-planner .install-app-bottom{box-sizing:border-box;width:100%;margin:26px auto 20px}
 .companion-planner .install-device-steps{max-height:42dvh}
 .companion-planner .walkthrough-actions button,.companion-planner dialog button{min-height:44px}
}
@media(max-width:390px){
 .companion-planner header.compact-header{gap:9px;padding:12px}
 .companion-planner .compact-header .account-menu>summary{font-size:.8rem;padding:7px}
 .companion-planner main{padding-left:12px;padding-right:12px}
 .companion-planner .compact-header nav.header-planner-nav{gap:7px!important}
 .companion-planner .compact-header nav.header-planner-nav>button{min-height:100px!important;padding:10px 6px!important}
 .companion-planner .compact-header .header-nav-label{font-size:.88rem;line-height:1.3}
 .companion-planner .install-app-bottom{padding:18px 14px}
}


/* Selected navigation follows the Little Wins rose palette; gold marks only the current page. */
.companion-planner .compact-header nav.header-planner-nav>a,
.packages-page .compact-header nav.header-planner-nav>a {
  color:#bd215b!important;background:#fff5f8!important;border:2px solid #e6bed0!important;
  box-shadow:0 4px 12px #bd215b12!important;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
.companion-planner .compact-header nav.header-planner-nav>a .header-nav-label,
.companion-planner .compact-header nav.header-planner-nav>a .nav-description,
.companion-planner .compact-header nav.header-planner-nav>a .header-nav-icon,
.packages-page .compact-header nav.header-planner-nav>a .header-nav-label,
.packages-page .compact-header nav.header-planner-nav>a .nav-description,
.packages-page .compact-header nav.header-planner-nav>a .header-nav-icon {color:#bd215b!important;stroke:#bd215b!important}
.companion-planner .compact-header nav.header-planner-nav>a:hover,
.packages-page .compact-header nav.header-planner-nav>a:hover {background:#fce7ef!important;color:#a71852!important;border-color:#e6bed0!important;box-shadow:0 7px 16px #bd215b20!important;transform:translateY(-1px)}
.companion-planner .compact-header nav.header-planner-nav>a.active,
.companion-planner .compact-header nav.header-planner-nav>a[aria-current="page"],
.companion-planner .compact-header nav.header-planner-nav>a[aria-pressed="true"],
.packages-page .compact-header nav.header-planner-nav>a.active,
.packages-page .compact-header nav.header-planner-nav>a[aria-current="page"],
.packages-page .compact-header nav.header-planner-nav>a[aria-pressed="true"] {
  color:#fff!important;background:#bd215b!important;border:2px solid #e6bd50!important;
  box-shadow:0 9px 21px #8d174638,inset 0 0 0 1px #ffffff33!important;transform:translateY(-2px)!important;
}
.companion-planner .compact-header nav.header-planner-nav>a.active .header-nav-label,
.companion-planner .compact-header nav.header-planner-nav>a[aria-current="page"] .header-nav-label,
.companion-planner .compact-header nav.header-planner-nav>a[aria-pressed="true"] .header-nav-label,
.companion-planner .compact-header nav.header-planner-nav>a.active .nav-description,
.companion-planner .compact-header nav.header-planner-nav>a[aria-current="page"] .nav-description,
.companion-planner .compact-header nav.header-planner-nav>a[aria-pressed="true"] .nav-description,
.companion-planner .compact-header nav.header-planner-nav>a.active .header-nav-icon,
.companion-planner .compact-header nav.header-planner-nav>a[aria-current="page"] .header-nav-icon,
.companion-planner .compact-header nav.header-planner-nav>a[aria-pressed="true"] .header-nav-icon,
.packages-page .compact-header nav.header-planner-nav>a[aria-current="page"] .header-nav-label,
.packages-page .compact-header nav.header-planner-nav>a[aria-current="page"] .nav-description,
.packages-page .compact-header nav.header-planner-nav>a[aria-current="page"] .header-nav-icon {color:#fff!important;stroke:#fff!important}
.companion-planner .compact-header nav.header-planner-nav>a:focus-visible,
.packages-page .compact-header nav.header-planner-nav>a:focus-visible {outline:3px solid #bd215b!important;outline-offset:3px}
.companion-planner nav a,.packages-page nav a,.companion-planner nav button,.packages-page nav button {color:#bd215b}
.companion-planner .compact-header nav.header-planner-nav>a.header-packages,
.packages-page .compact-header nav.header-planner-nav>a.header-packages {position:relative;background:#bd215b!important;border-color:#bd215b!important;color:#fff!important;box-shadow:0 8px 20px #8d174638!important}
.companion-planner .compact-header nav.header-planner-nav>a.header-packages .header-nav-label,
.packages-page .compact-header nav.header-planner-nav>a.header-packages .header-nav-label {color:#fff!important}
.companion-planner .compact-header nav.header-planner-nav>a.header-packages .header-nav-icon,
.packages-page .compact-header nav.header-planner-nav>a.header-packages .header-nav-icon {color:#f3cf72!important;stroke:#f3cf72!important}
.companion-planner .compact-header nav.header-planner-nav>a.header-packages::before,
.packages-page .compact-header nav.header-planner-nav>a.header-packages::before {content:"★";display:inline-block;flex:0 0 auto;color:#f3cf72;font-size:1.35rem;text-shadow:0 1px 2px #4f2d164d}
.companion-planner .compact-header nav.header-planner-nav>a.header-packages.active,
.companion-planner .compact-header nav.header-planner-nav>a.header-packages[aria-current="page"],
.companion-planner .compact-header nav.header-planner-nav>a.header-packages[aria-pressed="true"],
.packages-page .compact-header nav.header-planner-nav>a.header-packages[aria-current="page"] {border-color:#e6bd50!important}

/* Clear package pricing hierarchy with planned status kept visible. */
.packages-page .subscription-offer {position:relative;border:1px solid #efd2de;border-radius:24px;box-shadow:0 14px 38px #7b284a12;background:linear-gradient(180deg,#fff 0%,#fff9fb 100%)}
.packages-page .subscription-offer h2 {color:#7f183d;letter-spacing:-.02em}
.packages-page .subscription-offer .price {color:#a71852;font-size:2.5rem;font-weight:900;letter-spacing:-.04em}
.packages-page .subscription-offer .price small {font-size:1rem;font-weight:700;letter-spacing:0}
.packages-page .subscription-offer.recharge-featured {border:2px solid #d9b548;box-shadow:0 18px 44px #8d17461c,0 0 0 5px #fff6d7;background:linear-gradient(180deg,#fff 0%,#fff8fb 100%)}
.packages-page .subscription-offer.recharge-featured:before {content:"★  FEATURED PARENT PLAN";display:inline-flex;align-items:center;align-self:flex-start;width:max-content;max-width:100%;margin:0 0 12px;padding:7px 11px;border-radius:999px;background:#fff3ca;color:#76540b;font-size:.72rem;font-weight:900;letter-spacing:.06em}
.packages-page .fitness-upgrade-offer {margin-top:22px;padding:20px;border:1px solid #e8c566;border-radius:18px;background:linear-gradient(140deg,#fff7dc,#fff9fc 82%);box-shadow:0 8px 24px #bd215b12}
.packages-page .fitness-upgrade-offer h3 {margin-bottom:5px;color:#7f183d}
.packages-page .fitness-upgrade-price {margin:0 0 10px;color:#8f1947}
.packages-page .fitness-upgrade-price strong {font-size:2rem;line-height:1;font-weight:900}
.packages-page .fitness-upgrade-total {padding:10px 12px;border-radius:11px;background:#fff;color:#694f19;font-size:.92rem;line-height:1.45}
.packages-page .fitness-upgrade-note {display:block;margin-top:10px;color:#6f5962;font-size:.82rem;line-height:1.45}
.packages-page .subscription-offer .offer-actions .primary,
.packages-page .fitness-upgrade-offer [data-fitness-upgrade] {min-height:48px;border-radius:12px;font-weight:850}
.companion-planner .activity-photo-atlas {width:100%;height:auto;aspect-ratio:1/1;background-image:var(--activity-atlas);background-size:300% 300%;background-position:var(--activity-x) var(--activity-y);background-repeat:no-repeat;background-color:#fff1f6}
@media(max-width:700px){.packages-page .subscription-offer.recharge-featured{box-shadow:0 12px 28px #8d17461c,0 0 0 3px #fff6d7}.packages-page .fitness-upgrade-offer{padding:16px}}
@media(prefers-reduced-motion:reduce){.companion-planner .compact-header nav.header-planner-nav>a,.packages-page .compact-header nav.header-planner-nav>a{transition:none!important;transform:none!important}}

/* Hide only the header install action after the app is installed to the Home Screen. */
html.app-is-installed .app-header-actions{display:none!important}

@media(display-mode:standalone){.app-header-actions{display:none!important}}
