.planner-shell{max-width:680px;margin:3rem auto;padding:1rem}.planner-intro,.planner-complete{padding:2rem 0}.eyebrow{color:#b65d2c;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:700}.planner-shell h1{font-size:clamp(2.4rem,8vw,4.5rem);line-height:1.02;font-weight:800}.planner-shell h2{font-size:2rem;font-weight:700}.helper{color:#66706a}.time-pill{display:inline-block;background:#e7efe8;border-radius:99px;padding:.45rem .8rem;margin:1rem 0}.primary-action{display:block;width:100%;border:0;border-radius:999px;background:#174d3b;color:#fff;padding:1rem 1.25rem;font-weight:700;font-size:1rem;margin-top:1.5rem}.choice-grid{display:grid;gap:.75rem;margin-top:2rem}.choice-grid button,.quiet-choice{border:1px solid #d7ddd6;background:#fff;border-radius:1rem;padding:1.1rem;text-align:left;font-size:1rem;min-height:64px;font-weight:500}.choice-grid button.selected,.quiet-choice.selected{border-color:#174d3b;background:#e7efe8;box-shadow:0 0 0 2px #174d3b}.choice-grid small{display:block;color:#66706a;margin-top:.3rem;font-weight:400}.step{display:none}.step.active{display:block}.progress-track{height:5px;background:#e8ece7;border-radius:9px}.progress-track span{display:block;height:100%;background:#c86b3d;border-radius:9px;transition:width .2s}.progress-meta{display:flex;justify-content:space-between;margin:.7rem 0;font-size:.85rem}.back-button{background:none;border:0;color:#174d3b}.trip-summary{min-height:1.5rem;color:#66706a;font-size:.85rem}.stepper{display:grid;grid-template-columns:1fr 42px 30px 42px;align-items:center;gap:.5rem;padding:1rem 0;border-bottom:1px solid #e5e9e4}.stepper button{border:0;border-radius:50%;width:38px;height:38px;background:#e7efe8;font-size:1.3rem}.stepper strong{text-align:center}.quiet-choice{display:block;width:100%;margin-top:1rem;text-align:center;color:#66706a}.placeholder-result{margin-top:2rem;padding:2rem;border-radius:1rem;background:#e7efe8}@media(max-width:600px){.planner-shell{margin:1rem auto}.planner-shell form{padding-bottom:5rem}.planner-shell .next{position:fixed;bottom:1rem;left:1rem;right:1rem;width:calc(100% - 2rem);z-index:2}}
.planner-home{max-width:680px;margin:3rem auto;padding:1rem}.planner-home-story{margin-top:clamp(4rem,12vw,8rem);color:var(--mc-text-muted)}.planner-home-story h2{color:var(--mc-text);font-size:1.35rem;font-weight:700;margin-bottom:.5rem}.planner-home-story p{margin-bottom:0}
.planner-home h1{font-size:clamp(1.55rem,7vw,2.5rem)}
.planner-home,.planner-home .eyebrow,.planner-home h1,.planner-home-intro{text-align:left}.planner-home-intro{max-width:38rem;margin:1rem 0 0;line-height:1.55}.saved-trip{display:block;margin:1.5rem 0 0;padding:.85rem 0;border-top:1px solid var(--mc-border);text-align:left}.saved-trip-label{margin:0 0 .3rem;color:var(--mc-text-muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.saved-trip p{margin:0;color:var(--mc-text-muted);font-size:.9rem}.secondary-action{display:inline-block;margin-top:.45rem;color:var(--mc-green-900);font-weight:700;text-decoration:none}.secondary-action:hover,.secondary-action:focus-visible{text-decoration:underline}.planner-home>.primary-action{margin-top:1.5rem}.checklist-persistence-note{margin:.65rem 0 0;color:var(--mc-text-muted);font-size:.8rem}.checklist-persistence-note strong{color:var(--mc-text)}.privacy-page{max-width:680px;margin:1.5rem auto 3rem}.privacy-page h1{margin:.2rem 0 .65rem;font-size:clamp(2rem,7vw,3rem)}.privacy-intro{max-width:38rem;margin:0;color:var(--mc-text-muted)}.privacy-section{margin:1.75rem 0 1.25rem;padding:1rem 0;border-top:1px solid var(--mc-border);border-bottom:1px solid var(--mc-border)}.privacy-section h2{margin:0 0 .45rem;font-size:1.25rem}.privacy-section p{margin:0;color:var(--mc-text-muted);line-height:1.55}.privacy-clear-action{display:inline-block;margin-top:1rem;padding:.55rem .85rem;border:1px solid var(--mc-green-700);border-radius:.45rem;background:transparent;color:var(--mc-green-900);font:inherit;font-size:.9rem;font-weight:700}.privacy-clear-action:hover,.privacy-clear-action:focus-visible{background:var(--mc-green-100);border-color:var(--mc-green-900)}.privacy-clear-action:disabled{opacity:.65;cursor:default}.privacy-feedback{margin-top:.65rem!important;color:var(--mc-text-muted);font-size:.85rem}
.planner-home-story h2{font-size:1.15rem;font-weight:600}
 .choice-grid.multi button:not(.secondary-choice)::before{content:'✓';display:inline-grid;place-items:center;width:1.4rem;height:1.4rem;border:1px solid #9ca99e;border-radius:.35rem;margin-right:.7rem;color:transparent}.choice-grid.multi button.selected:not(.secondary-choice)::before{color:#fff;background:#174d3b;border-color:#174d3b}.revisit-next{margin-top:1rem}
@media(max-width:600px){.planner-shell form{padding-bottom:9rem}}
.checklist-page{max-width:760px;margin:2rem auto;padding:1rem}.checklist-header{padding-bottom:.75rem}.checklist-header h1{font-size:clamp(2.4rem,8vw,4rem);line-height:1.05;margin:.25rem 0;font-weight:800}.checklist-lede{color:#66706a;margin:.35rem 0}.trip-summary-card{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0 1rem}.trip-summary-card span{background:#e7efe8;border-radius:99px;padding:.4rem .65rem;font-size:.85rem}.checklist-progress-line{display:flex;justify-content:space-between;color:#66706a;font-size:.9rem}.checklist-progress-line strong{color:#26352d}.checklist-progress .progress{height:.35rem;margin-top:.4rem;background:#e7efe8}.checklist-progress .progress-bar,.checklist-sticky-progress .progress-bar{background:#174d3b}.checklist-guidance{color:#66706a;font-size:.85rem;margin:1rem 0 0}.checklist-actions{display:flex;gap:.75rem;align-items:center;margin:1rem 0 1.5rem}.checklist-actions .btn-link,.category-toggle{color:#174d3b;text-decoration:none;font-weight:600}.checklist-actions .btn-link:hover,.category-toggle:hover{text-decoration:underline}.checklist-sticky-progress{position:fixed;top:0;left:0;right:0;z-index:3;display:none;padding:.65rem max(1rem,calc((100% - 728px)/2));background:#fff;border-bottom:1px solid #dfe7df;box-shadow:0 2px 8px #173d2d14;align-items:center;gap:.75rem;font-size:.85rem}.checklist-sticky-progress.visible{display:grid;grid-template-columns:auto auto 1fr}.checklist-sticky-progress .progress{grid-column:1/-1;height:.25rem;background:#e7efe8}.checklist-category{margin:1.5rem 0;padding:1rem;border:1px solid #e0e8e0;border-radius:1rem;background:#fbfdfb}.checklist-category-header{display:flex;justify-content:space-between;align-items:end;gap:1rem;border-bottom:2px solid #e7efe8;padding-bottom:.45rem}.checklist-category h2{font-size:1.35rem;margin:0;font-weight:700}.checklist-category-header p{color:#66706a;font-size:.85rem;margin:.25rem 0 0}.category-toggle{display:block;margin:.55rem 0 0;padding-left:0}.checklist-items{display:grid}.checklist-item{display:flex;gap:.8rem;align-items:flex-start;padding:.8rem .25rem;border-bottom:1px solid #e6ebe6;cursor:pointer}.checklist-item:has(input:checked){color:#66706a}.checklist-item input{width:1.2rem;height:1.2rem;margin-top:.1rem;accent-color:#174d3b;flex:none}.checklist-copy{display:grid;gap:.2rem}.checklist-name{font-weight:600}.checklist-name small{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:#b65d2c;margin-left:.35rem}.checklist-detail{font-size:.82rem;color:#66706a}.checklist-item.optional .checklist-name{font-weight:500}.category-extra{display:none}.checklist-category.expanded .category-extra{display:flex}.checklist-footnote{margin:3rem 0;color:#66706a;font-size:.8rem}@media(max-width:600px){.checklist-page{margin:1rem auto}.checklist-category{padding:.85rem}.checklist-category-header{align-items:start;flex-direction:column;gap:.25rem}}
/* Keep the locked food choices at one visual weight. */
.choice-grid [data-value="SimpleFood"] strong{font-weight:inherit}.choice-grid [data-value="SimpleFood"] small{display:inline;color:inherit;margin:0 0 0 .25rem}.choice-grid [data-value="SimpleFood"] small::before{content:' — '}

.checklist-category:has([data-item-category="Shelter & Sleep"]) h2::before,.checklist-category:has([data-item-category="Cooking & Food"]) h2::before,.checklist-category:has([data-item-category="Water & Hydration"]) h2::before,.checklist-category:has([data-item-category="Clothing & Footwear"]) h2::before,.checklist-category:has([data-item-category="Campsite & Utility"]) h2::before,.checklist-category:has([data-item-category="Safety & First Aid"]) h2::before,.checklist-category:has([data-item-category="Trip Essentials"]) h2::before,.checklist-category:has([data-item-category="Activities & Recreation"]) h2::before,.checklist-category:has([data-item-category="Hygiene & Toiletries"]) h2::before,.checklist-category:has([data-item-category="Pets"]) h2::before{content:"";display:inline-block;width:1.15rem;height:1.15rem;margin-right:.35rem;vertical-align:-.15rem;background-color:currentColor;opacity:.9;-webkit-mask:no-repeat center/contain;mask:no-repeat center/contain}.checklist-category:has([data-item-category="Shelter & Sleep"]) h2::before{-webkit-mask-image:url('/images/icons/tabler/tent.svg');mask-image:url('/images/icons/tabler/tent.svg');color:var(--mc-icon-forest)}.checklist-category:has([data-item-category="Cooking & Food"]) h2::before{-webkit-mask-image:url('/images/icons/tabler/tools-kitchen-2.svg');mask-image:url('/images/icons/tabler/tools-kitchen-2.svg');color:var(--mc-icon-orange)}.checklist-category:has([data-item-category="Water & Hydration"]) h2::before{-webkit-mask-image:url('/images/icons/tabler/droplet.svg');mask-image:url('/images/icons/tabler/droplet.svg');color:var(--mc-icon-water)}.checklist-category:has([data-item-category="Clothing & Footwear"]) h2::before{-webkit-mask-image:url('/images/icons/tabler/shoe.svg');mask-image:url('/images/icons/tabler/shoe.svg');color:var(--mc-icon-olive)}.checklist-category:has([data-item-category="Campsite & Utility"]) h2::before{-webkit-mask-image:url('/images/icons/tabler/tools.svg');mask-image:url('/images/icons/tabler/tools.svg');color:var(--mc-icon-forest)}.checklist-category:has([data-item-category="Safety & First Aid"]) h2::before{-webkit-mask-image:url('/images/icons/tabler/first-aid-kit.svg');mask-image:url('/images/icons/tabler/first-aid-kit.svg');color:var(--mc-icon-rust)}.checklist-category:has([data-item-category="Trip Essentials"]) h2::before{-webkit-mask-image:url('/images/icons/tabler/backpack.svg');mask-image:url('/images/icons/tabler/backpack.svg');color:var(--mc-green-900)}.checklist-category:has([data-item-category="Activities & Recreation"]) h2::before{-webkit-mask-image:url('/images/icons/tabler/mountain.svg');mask-image:url('/images/icons/tabler/mountain.svg');color:var(--mc-icon-forest)}.checklist-category:has([data-item-category="Hygiene & Toiletries"]) h2::before{-webkit-mask-image:url('/images/icons/tabler/wash.svg');mask-image:url('/images/icons/tabler/wash.svg');color:var(--mc-icon-water)}.checklist-category:has([data-item-category="Pets"]) h2::before{-webkit-mask-image:url('/images/icons/tabler/paw.svg');mask-image:url('/images/icons/tabler/paw.svg');color:var(--mc-icon-olive)}
.checklist-category-header{align-items:flex-start;border-bottom-width:1px}
.checklist-category h2{display:flex;align-items:center;gap:.35rem}
.checklist-category h2::before{margin-right:0}
.checklist-category-header p{font-size:.8rem;margin-top:.35rem}

.checklist-header .eyebrow{margin-bottom:.35rem}
.checklist-header h1{margin-top:.15rem;margin-bottom:.4rem}
.checklist-lede{margin-top:0;margin-bottom:.75rem}
.trip-summary-card{gap:.4rem;margin-top:.75rem;margin-bottom:1.25rem}
.checklist-progress-line{margin-bottom:.35rem}
.checklist-progress .progress{margin-top:0}
.checklist-guidance{margin-top:.9rem}
.checklist-actions{margin-top:1.35rem}
.checklist-item{border-bottom-color:var(--mc-border)}
.checklist-copy{flex:1;min-width:0}
.checklist-detail{line-height:1.35}
.checklist-item .not-for-trip{flex:none;align-self:center}
.category-toggle{font-weight:600;cursor:pointer;text-align:left;text-underline-offset:.2em}
.checklist-name small{display:inline-block;padding:.1rem .3rem;border-radius:.25rem;background:rgba(200,107,61,.1);color:var(--mc-orange);font-weight:700}
.hidden-recommendations{margin:2rem 0 1rem;padding:1rem;border:1px solid var(--mc-border);border-radius:1rem;background:rgba(231,239,232,.45)}
.hidden-recommendations h2{margin:0;color:var(--mc-text-muted);font-size:1rem;font-weight:700}
.hidden-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--mc-border);color:var(--mc-text-muted)}
.hidden-item:last-child{border-bottom:0}
.hidden-item .btn-link,.hidden-recommendations>[data-restore-all]{color:var(--mc-green-700);font-weight:600;text-decoration:none}
.hidden-item .btn-link:hover,.hidden-item .btn-link:focus-visible,.hidden-recommendations>[data-restore-all]:hover,.hidden-recommendations>[data-restore-all]:focus-visible{text-decoration:underline}
.hidden-recommendations>[data-restore-all]{padding-left:0;padding-right:0;margin-top:.5rem}

.choice-grid button,
.quiet-choice{transition:border-color .18s ease-out,background-color .18s ease-out,color .18s ease-out,box-shadow .18s ease-out}
.progress-track span{transition:width .2s ease-out}
.step.active{animation:planner-step-in .18s ease-out}
.primary-action,
.checklist-actions .btn,
.back-button,
.category-toggle,
.not-for-trip,
.hidden-item .btn-link,
.hidden-recommendations>[data-restore-all]{transition:color .18s ease-out,background-color .18s ease-out,border-color .18s ease-out,box-shadow .18s ease-out,transform .12s ease-out}
.primary-action:active,
.checklist-actions .btn:active,
.not-for-trip:active{transform:translateY(1px)}

@keyframes planner-step-in{from{opacity:.7;transform:translateY(.2rem)}to{opacity:1;transform:translateY(0)}}

@media (prefers-reduced-motion:reduce){
  .choice-grid button,
  .quiet-choice,
  .progress-track span,
  .step.active,
  .primary-action,
  .checklist-actions .btn,
  .back-button,
  .category-toggle,
  .not-for-trip,
  .hidden-item .btn-link,
  .hidden-recommendations>[data-restore-all]{animation:none;transition:none}
  .primary-action:active,
  .checklist-actions .btn:active,
  .not-for-trip:active{transform:none}
}

.planner-shell>.planner-expectation{margin:0 0 .75rem;color:var(--mc-text-muted)}
.planner-shell>.planner-progress{margin-bottom:1.5rem}
.planner-progress .progress-track{margin-bottom:.15rem}
.planner-progress .progress-meta{margin:.55rem 0 .25rem;align-items:center}
.planner-progress .trip-summary{margin:.35rem 0 0}
.planner-shell .step .eyebrow{margin-bottom:.35rem}
.planner-shell .step h2{margin-top:.2rem;margin-bottom:.5rem}
.planner-shell .step .helper{margin-top:0}
.checklist-footnote{line-height:1.5}
.pack-callout{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1.25rem;padding:.7rem .85rem;border:1px solid var(--mc-border);border-radius:1rem;background:rgba(231,239,232,.55)}
.pack-callout h2{margin:0;font-size:1rem;font-weight:700}
.pack-callout p{margin:3px 0 0;color:var(--mc-text-muted);font-size:.85rem}
.pack-callout-action{display:inline-flex;align-items:center;gap:.35rem;flex:none;min-height:44px;padding:.55rem .25rem;color:var(--mc-green-900);background:transparent;text-decoration:none;white-space:nowrap}
.pack-callout-action::after{content:"→";font-size:1.1em}
.pack-callout-action:hover,.pack-callout-action:focus-visible{color:var(--mc-green-900);border-color:var(--mc-green-900);background:var(--mc-green-100)}
.pack-preview-page{max-width:42rem;margin:0 auto;padding:1rem 0 2rem}
.pack-preview-page p{color:var(--mc-text-muted);line-height:1.55}
.pack-preview-hero{margin-top:1.75rem}
.pack-preview-hero h1{max-width:35rem;margin:.35rem 0 .75rem;font-size:clamp(2rem,8vw,3rem);line-height:1.05}
.pack-preview-hero p{max-width:38rem}
.pack-preview-benefits{display:grid;gap:.85rem;margin-top:1.5rem}
.pack-preview-benefits h2{margin:0 0 .2rem;font-size:1rem}
.pack-preview-benefits p{margin:0;color:var(--mc-text-muted);font-size:.9rem;line-height:1.45}
.pack-preview-viewer{margin-top:2rem}
.pack-preview-viewer-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}
.pack-preview-viewer-heading h2{margin:0;font-size:1.25rem}
.pack-preview-viewer-heading span{color:var(--mc-text-muted);font-size:.8rem}
.pack-preview-document{margin-top:1.5rem;overflow:hidden;border:1px solid var(--mc-border);border-radius:1rem;background:#e9eee9;box-shadow:0 1px 3px rgba(23,77,59,.08)}
.pack-preview-document object{display:block;width:100%;height:min(78vh,760px);min-height:520px;border:0;background:#fff}
.pack-preview-message{margin-top:1.5rem;padding:1rem 1.1rem;border:1px solid var(--mc-border);border-radius:1rem;background:rgba(231,239,232,.55)}
.pack-preview-message p{margin:0 0 1rem}
.pack-preview-loading{text-align:center}
.pack-preview-price{margin:1.5rem 0 0;color:var(--mc-text)!important}
.pack-preview-price strong{font-size:1.25rem;color:var(--mc-green-900)}
.pack-preview-bottom-link{display:block;text-align:center}
@media (max-width:575.98px){.pack-callout{display:block;padding:.65rem .75rem}.pack-callout-action{display:inline-flex;margin-top:.3rem}.pack-preview-page{padding-top:.5rem}.pack-preview-document object{height:70vh;min-height:420px}}

/* Make Camp color system */
.planner-shell,
.checklist-page{color:var(--mc-text)}
.eyebrow{color:var(--mc-orange)}
.helper,
.trip-summary,
.checklist-lede,
.checklist-guidance,
.checklist-progress-line,
.checklist-category-header p,
.checklist-detail,
.checklist-footnote{color:var(--mc-text-muted)}
.primary-action{background:var(--mc-green-900)}
.choice-grid button.selected,
.quiet-choice.selected,
.time-pill,
.trip-summary-card span,
.placeholder-result{background:var(--mc-green-100)}
.choice-grid button.selected,
.quiet-choice.selected{border-color:var(--mc-green-900);box-shadow:0 0 0 2px var(--mc-green-900)}
.choice-grid button,
.quiet-choice{border-color:var(--mc-border)}
.progress-track{background:var(--mc-border)}
.progress-track span{background:var(--mc-orange)}
.back-button,
.checklist-actions .btn-link,
.category-toggle{color:var(--mc-green-900)}
.stepper{border-bottom-color:var(--mc-border)}
.stepper button{background:var(--mc-green-100)}
.checklist-progress .progress,
.checklist-sticky-progress .progress{background:var(--mc-green-100)}
.checklist-progress .progress-bar,
.checklist-sticky-progress .progress-bar{background:var(--mc-green-900)}
.checklist-sticky-progress{background:var(--mc-bg);border-bottom-color:var(--mc-border)}
.checklist-category{border-color:var(--mc-border);background:var(--mc-bg)}
.checklist-category-header{border-bottom-color:var(--mc-green-100)}
.checklist-item{border-bottom-color:var(--mc-border)}
.checklist-item input{accent-color:var(--mc-green-900)}
.checklist-name small{color:var(--mc-orange)}
.checklist-item:has(input:checked){color:var(--mc-text-muted)}

/* Shared action treatment */
.primary-action,
.checklist-actions .btn-outline-success{
  border:1px solid var(--mc-green-900);
  color:#fff;
  background:var(--mc-green-900);
  text-decoration:none;
}
.primary-action:hover,
.primary-action:focus-visible,
.checklist-actions .btn-outline-success:hover,
.checklist-actions .btn-outline-success:focus-visible{
  color:#fff;
  background:var(--mc-green-700);
  border-color:var(--mc-green-700);
}
.primary-action:active,
.checklist-actions .btn-outline-success:active{
  color:#fff;
  background:var(--mc-green-900);
  border-color:var(--mc-green-900);
}
.back-button,
.checklist-actions .btn-link,
.category-toggle,
.not-for-trip{
  font:inherit;
  color:var(--mc-green-900);
}
.back-button,
.checklist-actions .btn-link,
.category-toggle{
  text-decoration:none;
}
.back-button:hover,
.back-button:focus-visible,
.checklist-actions .btn-link:hover,
.checklist-actions .btn-link:focus-visible,
.category-toggle:hover,
.category-toggle:focus-visible{
  color:var(--mc-green-700);
  text-decoration:underline;
}
.not-for-trip{
  border:1px solid var(--mc-border);
  border-radius:.35rem;
  background:transparent;
  padding:.25rem .4rem;
  font-size:.8rem;
  white-space:nowrap;
  cursor:pointer;
}
.not-for-trip:hover,
.not-for-trip:focus-visible{
  color:var(--mc-green-700);
  border-color:var(--mc-green-700);
  background:var(--mc-green-100);
}
.choice-grid button,
.quiet-choice{
  color:var(--mc-text);
}
.choice-grid button:hover,
.choice-grid button:focus-visible,
.quiet-choice:hover,
.quiet-choice:focus-visible{
  border-color:var(--mc-green-700);
}
.choice-grid button:focus-visible,
.quiet-choice:focus-visible,
.stepper button:focus-visible,
.checklist-item input:focus-visible{
  outline:2px solid var(--mc-orange);
  outline-offset:2px;
}
.choice-grid button.selected,
.quiet-choice.selected{
  color:var(--mc-green-900);
}
.choice-grid.multi button:not(.secondary-choice)::before{
  border-color:var(--mc-green-700);
}
.choice-grid.multi button.selected:not(.secondary-choice)::before{
  background:var(--mc-green-900);
  border-color:var(--mc-green-900);
}
.checklist-item input{
  accent-color:var(--mc-green-900);
}
.stepper button{
  color:var(--mc-green-900);
  cursor:pointer;
}
.stepper button:hover,
.stepper button:focus-visible{
  background:var(--mc-green-100);
  box-shadow:0 0 0 2px var(--mc-green-700);
}

/* Surface refinement */
.choice-grid button,
.quiet-choice,
.checklist-category{
  box-shadow:0 1px 3px rgba(23,77,59,.05);
}
.checklist-category{
  background:#fff;
  border-color:var(--mc-border);
}
.primary-action:focus-visible,
.back-button:focus-visible,
.checklist-actions .btn:focus-visible,
.category-toggle:focus-visible,
.not-for-trip:focus-visible{
  outline:2px solid var(--mc-orange);
  outline-offset:2px;
}
