:root{--ink:#18352d;--muted:#66766f;--paper:#f7f3ea;--card:#fffdf8;--accent:#e55d38;--accent-dark:#c84728;--sage:#dbe6d9;--line:#ddd9cf;--shadow:0 18px 55px rgba(31,52,44,.10);font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 70% 4%,#fff 0,transparent 28%),var(--paper)}button,input{font:inherit}button{color:inherit}.app-shell{width:min(100%,520px);min-height:100vh;margin:auto;display:flex;flex-direction:column;padding:0 22px}.topbar{height:74px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:8px}.brand{font-family:Manrope,sans-serif;font-weight:800;font-size:14px;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:50% 50% 45% 55%;background:var(--ink);color:white;font:800 11px Manrope}.step{color:var(--muted);font-size:12px;font-weight:600}.icon-button{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:transparent;font-size:21px;cursor:pointer}footer{margin-top:auto;padding:24px 0;text-align:center}.text-button{border:0;background:none;color:var(--muted);font-size:12px;text-decoration:underline;cursor:pointer}.hero{padding:55px 2px 8px;text-align:center}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:700;color:var(--accent);margin-bottom:12px}.hero h1,.content h1{font-family:Manrope,sans-serif;font-size:clamp(37px,10vw,52px);line-height:1.03;letter-spacing:-.055em;margin:0 auto 18px}.lede,.intro{color:var(--muted);font-size:17px;line-height:1.55;margin:0 auto 25px;max-width:430px}.hero-art{height:220px;display:grid;place-items:center}.plate{width:180px;height:180px;border-radius:50%;background:#fff;box-shadow:var(--shadow),inset 0 0 0 14px #f2eee4;position:relative;transform:rotate(-5deg)}.leaf{position:absolute;width:42px;height:75px;border-radius:80% 10% 80% 10%;background:#6f9277}.l1{left:42px;top:43px;transform:rotate(28deg)}.l2{right:40px;bottom:36px;background:#a8bea3;transform:rotate(-12deg)}.grain{position:absolute;width:50px;height:18px;border-radius:50%;background:#e7c371}.g1{right:38px;top:54px;transform:rotate(30deg)}.g2{left:45px;bottom:38px;transform:rotate(-15deg)}.sun{position:absolute;width:46px;height:46px;border-radius:50%;background:#f08b4b;left:66px;top:67px}.primary,.secondary{width:100%;border-radius:14px;padding:17px 20px;font-weight:700;border:0;cursor:pointer;transition:.18s transform,.18s background}.primary{background:var(--accent);color:white;box-shadow:0 8px 24px rgba(229,93,56,.23);display:flex;justify-content:center;gap:14px}.primary:hover{background:var(--accent-dark);transform:translateY(-1px)}.secondary{background:transparent;border:1px solid var(--line);margin-top:14px}.micro{font-size:12px;color:var(--muted);margin-top:15px}.content{padding:24px 0 0}.content h1{font-size:37px}.content .intro{font-size:15px;margin-left:0}fieldset{border:0;padding:0;margin:28px 0}legend{font-family:Manrope;font-weight:700;margin-bottom:12px;width:100%}legend span{float:right;color:var(--muted);font:500 12px DM Sans}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.segmented.two{grid-template-columns:1fr 1fr}.choice input{position:absolute;opacity:0}.choice span{display:grid;place-items:center;min-height:48px;border:1px solid var(--line);border-radius:12px;background:var(--card);font-weight:600;font-size:14px;cursor:pointer}.choice input:checked+span{border-color:var(--ink);background:var(--ink);color:white}.counter{display:inline-grid;grid-template-columns:48px 58px 48px;align-items:center;border:1px solid var(--line);border-radius:13px;overflow:hidden;background:var(--card)}.counter button{height:48px;border:0;background:transparent;font-size:22px;cursor:pointer}.counter output{text-align:center;font-weight:700}.ingredient-trigger{width:100%;min-height:50px;padding:0 15px;border:1px solid var(--line);background:var(--card);border-radius:12px;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.chip{border:0;background:var(--sage);border-radius:999px;padding:7px 10px;font-size:12px}.meal-list{display:grid;gap:13px}.meal-card{border:1px solid var(--line);border-radius:18px;background:var(--card);overflow:hidden;position:relative}.meal-card.best{border-color:#91a88f;box-shadow:0 10px 30px rgba(51,83,66,.08)}.best-label{background:var(--ink);color:white;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:6px 17px}.meal-card button{display:grid;grid-template-columns:35px 1fr 22px;gap:12px;width:100%;padding:17px 15px;text-align:left;border:0;background:transparent;cursor:pointer}.meal-number{font:700 12px Manrope;color:#9aaaa3;padding-top:4px}.meal-copy h2{font:800 19px Manrope;margin:2px 0 5px;letter-spacing:-.03em}.meal-copy>p:not(.reason){margin:0;color:var(--muted);font-size:13px;line-height:1.4}.reason{margin:0;color:var(--accent);font-size:11px;font-weight:700}.meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:11px}.meta span{display:flex;align-items:center;gap:4px}.meta svg,.complete-card svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.arrow{display:grid;align-items:center}.arrow svg{width:20px;fill:none;stroke:var(--muted);stroke-width:1.8}.small{font-size:16px}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);background:var(--ink);color:white;border-radius:16px;padding:17px 10px;margin:25px 0}.stat-row div{text-align:center;border-right:1px solid rgba(255,255,255,.15)}.stat-row div:last-child{border:0}.stat-row strong,.stat-row span{display:block}.stat-row strong{font:700 16px Manrope}.stat-row span{font-size:10px;color:#c9d8d1;margin-top:3px}.detail-block{padding:22px 0;border-top:1px solid var(--line)}.detail-block h2,.legal h2{font:700 18px Manrope;margin:0 0 14px}.ingredient-grid{display:flex;flex-wrap:wrap;gap:7px}.ingredient-grid span{border:1px solid var(--line);border-radius:999px;padding:7px 11px;font-size:12px}.ingredient-grid .core{background:var(--sage);border-color:transparent}.section-heading{display:flex;align-items:center;justify-content:space-between}.section-heading>span{font-size:11px;color:var(--accent);font-weight:700}.steps{margin:0;padding:0;list-style:none;counter-reset:steps}.steps li{counter-increment:steps;display:grid;grid-template-columns:28px 1fr;gap:10px;font-size:14px;line-height:1.45;margin:13px 0}.steps li:before{content:counter(steps);display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--ink);color:white;font-size:11px;font-weight:700}details{border-top:1px solid var(--line);padding:18px 0;margin-bottom:14px;font-size:13px}summary{font-weight:700;cursor:pointer}details p{color:var(--muted)}.complete{padding-top:80px}.checkmark{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--sage);color:var(--ink);font-size:31px;margin:0 auto 28px}.complete-card{display:flex;text-align:left;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:15px;margin:32px 0}.complete-card>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f8dfcf;color:var(--accent)}.complete-card svg{width:23px;height:23px}.complete-card p{margin:3px 0;color:var(--muted);font-size:12px}.legal p{line-height:1.65;color:var(--muted)}dialog{width:min(calc(100% - 24px),500px);max-height:85vh;border:0;border-radius:22px 22px 0 0;padding:0;background:var(--paper);position:fixed;top:auto;bottom:0;margin:0 auto}dialog::backdrop{background:rgba(17,35,29,.48)}.picker{padding:22px}.picker-head{display:flex;justify-content:space-between;align-items:start}.picker h2{font:800 27px Manrope;margin:0}.picker>p{font-size:13px;color:var(--muted);line-height:1.4}.picker-list{display:flex;flex-wrap:wrap;gap:8px;max-height:45vh;overflow:auto;margin:20px 0}.picker-list input{position:absolute;opacity:0}.picker-list span{display:block;padding:9px 12px;border:1px solid var(--line);background:var(--card);border-radius:999px;font-size:13px;cursor:pointer}.picker-list input:checked+span{background:var(--ink);color:white;border-color:var(--ink)}@media(min-width:700px){body{padding:30px}.app-shell{min-height:820px;border:1px solid #ebe5da;border-radius:28px;background:rgba(247,243,234,.92);box-shadow:var(--shadow);padding-left:32px;padding-right:32px}.hero{padding-top:65px}dialog{border-radius:22px;top:50%;bottom:auto;transform:translateY(-50%)}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.status-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:-8px 0 8px}
.trial-pill,.safe-pill{display:inline-flex;align-items:center;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--muted);font-size:12px;font-weight:700}
.trial-pill{border-color:#e7c4b3;background:#fff7f1;color:var(--accent-dark)}
.safe-pill{background:#edf3eb;color:var(--ink)}
.field-help{margin:0 0 12px;color:var(--muted);font-size:12px}
.picker-list{display:grid;gap:18px}
.picker-group h3{font:800 12px Manrope;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin:0 0 9px}
.picker-group>div{display:flex;flex-wrap:wrap;gap:8px}
.details .secondary{margin-top:10px}
.access-options{margin-top:14px;padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:rgba(255,253,248,.72)}
.access-options .micro{margin:0;text-align:left;line-height:1.45}
.restore-link{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;color:var(--ink);font-size:13px;font-weight:800;text-decoration:none}
.restore-link span{color:var(--accent);font-size:18px;line-height:1}
.email-list-card{margin-top:22px;padding:23px 18px 19px;border:1px solid #d6cfc1;border-radius:18px;background:var(--card);box-shadow:0 10px 28px rgba(31,52,44,.07);text-align:left}
.email-list-card h2{margin:3px 0 10px;font:800 23px/1.12 Manrope;letter-spacing:-.035em}
.email-list-card>p:not(.micro){margin:0 0 18px;color:var(--muted);font-size:14px;line-height:1.5}
.email-list-kicker{color:var(--accent)!important;font-size:11px!important;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.email-list-card .email-field{display:grid;gap:7px;font-size:13px;font-weight:800}
.email-list-card input[type=email]{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:11px;background:#fff;font-size:16px}
.email-list-card .seasonal-toggle{display:flex;gap:9px;align-items:flex-start;margin:15px 0 0;text-align:left;color:var(--muted);font-size:12px;line-height:1.42}
.email-list-card .seasonal-toggle input{margin:3px 0 0;accent-color:var(--ink)}
.email-list-card .secondary{margin-top:16px;background:var(--ink);border-color:var(--ink);color:#fff;font-size:14px}
.email-list-card .secondary:hover{background:#24463b}
/* Approved HD5 r26 visual hierarchy: retained for the secured r31 customer flow. */
:root{--ink:#172b3a;--muted:#50616b;--paper:#efe4d3;--card:#fffaf2;--accent:#bd4d2a;--accent-dark:#84331f;--sage:#cadac7;--line:#cfbfac;--navy:#172b3a;--teal:#2f6f73;--gold:#d89a35;--plum:#5a3c50;--shadow:0 18px 55px rgba(23,43,58,.16)}
body{background:linear-gradient(#e4c89f 0,#f3e7d5 34%,#d8e5df 100%)}
.topbar{margin:0 -22px;padding:0 22px;background:var(--navy);color:#fffaf2;border-bottom:4px solid var(--gold)}
.topbar .step,.topbar .text-button{color:#d9e5e1}.topbar .icon-button{border-color:rgba(255,255,255,.3);color:#fffaf2}.brand-mark{background:var(--gold);color:var(--navy)}
.hero:has(.hero-art){margin:18px -8px 0;padding:42px 22px 18px;border-radius:26px;background:linear-gradient(145deg,#172b3a 0%,#245358 58%,#39776f 100%);box-shadow:0 18px 42px rgba(23,43,58,.32)}
.hero:has(.hero-art) h1{color:#fffaf2}.hero:has(.hero-art) .lede{color:#e3f0e9}.hero:has(.hero-art) .eyebrow{color:#f5c25c}.hero:has(.hero-art) .plate{box-shadow:0 18px 34px rgba(0,0,0,.25),inset 0 0 0 14px #f3d9ad}
.status-row{padding:11px 12px;border-radius:0 0 18px 18px;background:#fff0d7;box-shadow:0 8px 18px rgba(23,43,58,.12)}.trial-pill{border-color:#c26b43;background:#ffe0cc;color:#742d1d}.safe-pill{border-color:#57867b;background:#d5ebe0;color:#183f3d}
fieldset{border-color:#4a8279;background:#dcece2;box-shadow:0 9px 20px rgba(23,43,58,.09)}fieldset:nth-of-type(2n){border-color:#d28732;background:#ffe5b9}.choice span,.ingredient-trigger{border-color:#78968e;background:#fffaf1}.choice input:checked+span{background:#1f5f63;border-color:#1f5f63}
.meal-card{border-width:2px;box-shadow:0 10px 24px rgba(23,43,58,.12)}.meal-card:nth-child(4n+2){background:#dff0e6;border-color:#4f8c77}.meal-card:nth-child(4n+3){background:#ffe7b8;border-color:#d38b31}.meal-card:nth-child(4n+4){background:#eaddeb;border-color:#84627d}.meal-card.best{background:#fff0c9;border-color:#bd7a20;box-shadow:0 14px 30px rgba(189,122,32,.24)}.best-label{background:var(--teal)}
.complete-card{border-width:2px;background:#fff0d6}.complete-card:nth-of-type(2n){background:#dbece3}.trial-count-banner{background:linear-gradient(135deg,var(--plum),var(--navy))}.stat-row{background:linear-gradient(135deg,var(--navy),var(--teal))}.seasonal-toggle{background:#eef7f2;border-color:#bbd7c6}
.access-options{border-color:rgba(255,255,255,.25);background:rgba(255,250,242,.94)}.email-list-card{border-color:#b78a4d;background:#e9d2a1;box-shadow:0 14px 30px rgba(0,0,0,.18)}.email-list-card .email-list-kicker{display:inline-block;margin:0 0 9px;padding:6px 9px;border:1px solid #8d6230;border-radius:999px;background:#f7e7c3;color:var(--navy)!important;font-size:13px!important;letter-spacing:.1em;text-shadow:0 1px 0 rgba(255,255,255,.35)}.email-list-card .seasonal-toggle{padding:12px;border:1px solid #93af8b;border-radius:12px;background:#e2f0dc;color:#263943}.email-list-card .secondary{background:var(--navy);border-color:var(--navy)}.email-list-card .secondary:hover{background:#243f53}
@media(min-width:700px){.app-shell{background:rgba(255,250,242,.93);border-color:#bfae9b;box-shadow:0 22px 62px rgba(23,43,58,.20)}}
.trust-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px 15px;border:1px solid #d6cfc1;border-radius:999px;background:var(--card);text-decoration:none;color:var(--ink);font-size:13px;font-weight:800;box-shadow:0 8px 22px rgba(31,52,44,.06)}
.primary.is-loading{opacity:.92;cursor:wait;transform:none}
.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.48);border-top-color:#fff;border-radius:50%;animation:spin .75s linear infinite}
.picker-group{border:1px solid var(--line);border-radius:14px;background:rgba(255,253,248,.72);padding:0;margin:0}
.picker-group summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:13px 14px;font:800 12px Manrope;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);cursor:pointer}
.picker-group summary::-webkit-details-marker{display:none}
.picker-group summary:after{content:"+";font-size:18px;color:var(--muted);letter-spacing:0}
.picker-group[open] summary:after{content:"-"}
.picker-group>div{display:flex;flex-wrap:wrap;gap:8px;padding:0 12px 13px}
.picker-group.seasonal-group{border-color:#e7c4b3;background:#fff7f1}
.picker-group.seasonal-group summary{color:var(--accent-dark)}
.seasonal-toggle{display:grid;grid-template-columns:22px 1fr;gap:11px;align-items:start;margin:-6px 0 22px;padding:14px;border:1px solid #edd8c3;border-radius:14px;background:#fff8ef;cursor:pointer}
.seasonal-toggle input{width:18px;height:18px;margin-top:2px;accent-color:var(--accent)}
.seasonal-toggle strong,.seasonal-toggle small{display:block;text-align:left}
.seasonal-toggle strong{font:800 13px Manrope;color:var(--ink)}
.seasonal-toggle small{margin-top:3px;color:var(--muted);font-size:12px;line-height:1.35}
.trial-used{border-color:#eec7b6;background:#fff7f1}
.trial-count-banner{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:10px;margin:4px auto 2px;padding:12px 16px;border-radius:16px;background:var(--ink);color:white;box-shadow:0 12px 30px rgba(24,53,45,.14)}
.trial-count-banner strong{font:800 28px Manrope;color:#ffd7c9}
.trial-count-banner span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.preview-badge{display:inline-flex;margin:-6px auto 11px;padding:9px 13px;border:1px solid #e8c9b7;border-radius:999px;background:#fff7f1;color:var(--accent-dark);font-size:12px;font-weight:800}
.reassurance{margin:-4px auto 22px;padding:11px 14px;border-radius:999px;background:#edf3eb;color:var(--ink);font-size:13px;font-weight:800}
.access-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:26px 0 18px}
.access-summary div{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:14px 8px}
.access-summary strong,.access-summary span{display:block}
.access-summary strong{font:800 22px Manrope;color:var(--accent)}
.access-summary span{font-size:11px;color:var(--muted);line-height:1.3}
.prototype-note{margin:0 0 22px;padding:14px;border:1px solid #edd8c3;border-radius:14px;background:#fff8ef;color:var(--muted);font-size:12px;line-height:1.5;text-align:left}
.checkout-message{margin:0 0 14px;padding:12px 14px;border:1px solid #e8c9b7;border-radius:14px;background:#fff7f1;color:var(--accent-dark);font-size:13px;font-weight:800;text-align:left}
.upgrade{padding-top:62px}
@keyframes spin{to{transform:rotate(360deg)}}
.picker{padding:18px}
.picker-head{position:sticky;top:0;z-index:3;background:var(--paper);padding-bottom:10px}
.picker-help{margin:4px 0 10px}
.picker-status{position:sticky;top:72px;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 8px;padding:10px 12px;border:1px solid #e8c9b7;border-radius:14px;background:#fff7f1;color:var(--accent-dark);font-size:13px;font-weight:900}
.picker-status span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.picker-selected{display:flex;flex-wrap:wrap;gap:6px;min-height:31px;margin:0 0 10px;color:var(--muted);font-size:12px}
.picker-selected span{display:inline-flex;align-items:center;border-radius:999px;background:var(--ink);color:white;padding:6px 9px;font-size:11px;font-weight:800}
.picker-list{display:grid;gap:10px;max-height:56vh;overflow:auto;margin:12px 0 14px;padding-right:2px}
.picker-group{border:1px solid var(--line);border-radius:14px;background:rgba(255,253,248,.82);padding:12px;margin:0}
.picker-group h3{font:800 11px Manrope;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin:0 0 9px}
.picker-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.picker-group label{min-width:0}
.picker-group span{display:flex;align-items:center;justify-content:center;min-height:38px;padding:8px 9px;border:1px solid var(--line);background:var(--card);border-radius:12px;font-size:12px;font-weight:800;text-align:center;line-height:1.15;cursor:pointer}
.picker-group input{position:absolute;opacity:0}
.picker-group input:checked+span{background:var(--ink);color:white;border-color:var(--ink)}
.picker-group input:disabled+span{opacity:.42;cursor:not-allowed}
.ingredient-option{display:flex;align-items:center;justify-content:center;min-height:38px;padding:8px 9px;border:1px solid var(--line);background:var(--card);border-radius:12px;font-size:12px;font-weight:800;text-align:center;line-height:1.15;cursor:pointer;color:var(--ink)}
.ingredient-option.is-selected{background:var(--ink);color:white;border-color:var(--ink)}
.ingredient-option:disabled{opacity:.42;cursor:not-allowed}
.picker-group.seasonal-group{border-color:#e7c4b3;background:#fff7f1}
.picker-save{position:sticky;bottom:0;z-index:3}

/* Release 23: stable full-screen ingredient picker — no modal jump */
dialog{
  width:100vw;
  max-width:100vw;
  height:100dvh;
  max-height:100dvh;
  inset:0;
  margin:0;
  border-radius:0;
  overflow:hidden;
}
.picker{
  width:min(920px,100%);
  height:100dvh;
  margin:0 auto;
  display:grid;
  grid-template-rows:auto auto auto auto minmax(0,1fr) auto;
  padding:16px;
}
.picker-head{
  position:static;
  padding-bottom:8px;
}
.picker-status{
  position:static;
}
.picker-selected{
  height:32px;
  max-height:32px;
  overflow:hidden;
  overflow-y:hidden;
  display:block;
  white-space:nowrap;
  text-overflow:ellipsis;
  padding:7px 2px 0;
}
.picker-selected::-webkit-scrollbar{height:0}
.picker-list{
  min-height:0;
  max-height:none;
  overflow:auto;
  margin:8px 0 12px;
}
.picker-group{
  padding:10px;
}
.picker-group>div{
  grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
  gap:8px;
}
.picker-group span{
  min-height:34px;
  padding:7px 8px;
  font-size:11px;
}
.picker-save{
  position:static;
  align-self:end;
  margin-top:0;
}
@media(min-width:700px){
  dialog{
    height:100dvh;
    width:100vw;
    max-width:100vw;
    top:0;
    bottom:auto;
    transform:none;
  }
  .picker{
    grid-template-rows:auto auto auto auto minmax(0,1fr) auto;
  }
  .picker-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-content:start;
  }
  .picker-group.seasonal-group{
    grid-column:1 / -1;
  }
  .picker-group.seasonal-group>div{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media(max-width:520px){
  dialog{
    width:100%;
    height:100dvh;
    max-height:100dvh;
    border-radius:0;
  }
  .picker{padding:12px}
  .picker h2{font-size:24px}
  .picker-help{font-size:12px;margin-bottom:8px}
  .picker-status{padding:8px 10px}
  .picker-selected{height:30px;max-height:30px}
  .picker-group>div{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .picker-group{padding:8px}
  .picker-group span,.ingredient-option{min-height:32px;font-size:10.5px}
}
body:has(dialog[open]){
  overflow:hidden;
}

/* HD5 r34: one deliberate visual system for every customer screen. */
.hero:not(:has(.hero-art)){
  margin:18px -8px 0;
  padding:42px 22px 24px;
  border:1px solid #214c50;
  border-radius:26px;
  background:linear-gradient(145deg,#172b3a 0%,#245358 58%,#39776f 100%);
  box-shadow:0 18px 42px rgba(23,43,58,.32);
}
.hero:not(:has(.hero-art)) h1{color:#fffaf2}
.hero:not(:has(.hero-art)) .lede{color:#e3f0e9}
.hero:not(:has(.hero-art)) .eyebrow{color:#f5c25c}
.hero:not(:has(.hero-art)) .secondary{border-color:rgba(255,255,255,.48);color:#fffaf2;background:rgba(23,43,58,.34)}
.content{
  margin:18px -8px 0;
  padding:30px 22px 24px;
  border:1px solid #bfae9b;
  border-radius:24px;
  background:#fffaf2;
  box-shadow:0 16px 34px rgba(23,43,58,.14);
}
.content h1{color:var(--navy)}
.content .eyebrow{color:var(--teal)}
.content .primary{background:var(--accent);box-shadow:0 10px 24px rgba(132,51,31,.28)}
.content .secondary{background:#f3e7d5;border-color:#c9ad84;color:var(--navy);font-weight:800}
.complete-card{box-shadow:0 8px 20px rgba(23,43,58,.13)}
.access-options-unlocked{border-color:#4f8c77;background:#dff0e6}
.access-options-unlocked .micro{color:#183f3d;font-weight:800}
.access-count-banner{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:10px;margin:4px auto 2px;padding:12px 16px;border-radius:16px;background:linear-gradient(135deg,#d89a35,#bd4d2a);color:#172b3a;box-shadow:0 12px 30px rgba(23,43,58,.22)}
.access-count-banner strong{font:800 30px Manrope;color:#fffaf2}
.access-count-banner span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.complete-card.access-active{border-color:#5b967f;background:#dff0e6}
.complete-card.access-active>span{background:#bddcc9;color:#1f5f63}
.hero .access-summary{border-radius:18px;padding:14px 8px;background:rgba(255,250,242,.92);color:var(--navy)}
.hero .access-summary span{color:#50616b}
