/* =====================================================================
   YEKFI CSS AUTHORITY — B1 CONSOLIDATED APPLICATION STYLESHEET
   GENERATED FILE. EDIT SOURCE FRAGMENTS / css_authority.config.json ONLY.
   Release substrate: v11 design system · executable release bound by index/release runtime
   Authority order: Design System primitives -> Experience composition.
   Legacy UI bundle is frozen compatibility substrate and must load first.
   ===================================================================== */

/* ===== AUTHORITY SOURCE 1: yekfi-design-system-v99.css ===== */
/* =====================================================================
   YEKFI v11 — DESIGN SYSTEM 9.9 / CONSOLIDATED CONSUMER UI
   Source of truth for consumer-facing visual language.
   Loaded after the quarantined legacy bundle.
   ===================================================================== */
:root{
  --yk-bg:#D6CDBE;
  --yk-bg-soft:#E8E0D3;
  --yk-paper:#FFFCF6;
  --yk-paper-2:#F7F0E4;
  --yk-ink:#112019;
  --yk-ink-2:#26382D;
  --yk-ink-3:#3C4B40;
  --yk-green:#173826;
  --yk-green-2:#24523A;
  --yk-green-3:#376548;
  --yk-gold:#A96D17;
  --yk-gold-2:#D09A38;
  --yk-clay:#A95E43;
  --yk-plum:#6A5064;
  --yk-slate:#54757A;
  --yk-sage:#6A8663;
  --yk-border-struct:#415E49;
  --yk-border-inner:#A6B1A7;
  --yk-border-soft:#CFC8BC;
  --yk-border-select:#B8791D;
  --yk-danger:#963B35;
  --yk-success:#1E6A3E;
  --yk-radius-xs:10px;
  --yk-radius-control:14px;
  --yk-radius-card:18px;
  --yk-radius-section:22px;
  --yk-radius-hero:28px;
  --yk-shadow-card:0 8px 22px rgba(18,38,26,.08),0 1px 2px rgba(18,38,26,.05);
  --yk-shadow-float:0 18px 44px rgba(18,38,26,.16),0 2px 8px rgba(18,38,26,.07);
  --yk-touch:44px;
  --yk-text-xs:12px;
  --yk-text-sm:13px;
  --yk-text-md:14px;
  --yk-text-lg:16px;
  --yk-text-xl:20px;
  --yk-text-2xl:28px;
  --yk-type:-apple-system,BlinkMacSystemFont,"SF Arabic","Segoe UI",Tahoma,Arial,sans-serif;
}
html{background:var(--yk-bg);}
body.yekfi-v99.yekfi-signature.yekfi-v11{
  font-family:var(--yk-type);
  font-synthesis:none; text-rendering:optimizeLegibility; -webkit-font-smoothing:antialiased;
  background:
    radial-gradient(900px 520px at 108% -8%,rgba(208,154,56,.11),transparent 56%),
    radial-gradient(720px 520px at -12% 18%,rgba(106,134,99,.10),transparent 60%),
    linear-gradient(180deg,#E1D8CA 0%,var(--yk-bg) 45%,#D1C7B8 100%);
  color:var(--yk-ink);
  letter-spacing:-.004em;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .app-shell{max-width:900px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .content{
  background:transparent;
  padding:16px 14px calc(110px + env(safe-area-inset-bottom));
}

/* ---------- Typography contract ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(small,.tiny-muted,.muted,.subtle,.microtag,.field-hint,.page-sub){
  font-size:var(--yk-text-xs);
  line-height:1.5;
  color:var(--yk-ink-3);
  opacity:1;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(p,.note,.meta,.field-label){
  font-size:var(--yk-text-sm);
  line-height:1.65;
  color:var(--yk-ink-2);
  opacity:1;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(h1,h2,h3,.page-title,.sig-section-title,.name,strong,b){
  color:var(--yk-ink);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-section-head h2,.section-head h2,.v11-plan-decision-head h2){
  font-size:20px;line-height:1.25;font-weight:880;letter-spacing:-.018em;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-hero-title{
  font-size:clamp(28px,7vw,40px);line-height:1.08;font-weight:900;letter-spacing:-.025em;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(input,select,textarea){font-size:16px;line-height:1.35;color:var(--yk-ink);}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.manual-day-strip,.manual-slot-strip,.manual-current-slot,.manual-budget-summary,.composer-main,.composer-insight,.learning-closeout,.learning-memory-hero,.learning-evidence-list,.learning-pattern-card,.learning-portion-note) :is(small,em,.meta,.microtag){
  font-size:12px;line-height:1.45;color:var(--yk-ink-3);opacity:1;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.manual-day-strip,.manual-slot-strip,.manual-current-slot,.composer-main,.composer-insight,.learning-closeout,.learning-memory-hero,.learning-pattern-card) :is(b,strong){font-size:14px;line-height:1.35;}

/* ---------- Touch contract ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(button,[role="button"],summary,.btn,.pill-btn,.sig-btn,.nav-btn,.filter-chip,.choice-row,.option,.registry-alt-chip){
  min-block-size:var(--yk-touch);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.btn,.pill-btn,.sig-btn,.v11-command-chip,.v11-command-primary,.option,.filter-chip){
  font-size:13px;line-height:1.2;font-weight:820;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid rgba(184,121,29,.42);outline-offset:2px;
}

/* ---------- Header / brand ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar{
  position:sticky;top:0;z-index:120;
  padding:max(10px,env(safe-area-inset-top)) 10px 10px;
  background:rgba(255,252,246,.96);
  border:0;border-bottom:1px solid var(--yk-border-inner);
  border-radius:0 0 22px 22px;
  box-shadow:0 8px 24px rgba(18,38,26,.09);
  backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar-primary-row{min-height:56px;gap:8px;align-items:center;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar-primary-row>.brand{gap:8px;max-width:154px;min-height:48px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .brand-symbol-large{width:47px;height:47px;min-width:47px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .brand-wordmark-field{width:82px;max-width:82px;height:22px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .brand-copy-field .brand-tagline-ar{
  display:block;font-size:12px;line-height:1.2;font-weight:760;color:var(--yk-ink-2);white-space:nowrap;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar-utility-row{gap:6px;min-width:0;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .header-budget-chip{
  width:100px;min-width:100px;max-width:100px;height:48px;min-height:48px;
  padding:5px 8px;border:1px solid var(--yk-border-struct);border-radius:14px;
  background:var(--yk-paper);box-shadow:none;color:var(--yk-ink);
  display:grid;place-items:center;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .header-budget-copy{display:grid;gap:1px;place-items:center;width:100%;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .header-budget-copy small{font-size:12px;line-height:1.05;font-weight:800;color:var(--yk-ink-2);white-space:nowrap;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .header-budget-copy b{font-size:14px;line-height:1.05;font-weight:930;color:#70450D;white-space:nowrap;font-variant-numeric:tabular-nums;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .header-budget-chip>em{display:none;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar-utility-row .round-icon{width:44px;height:44px;min-width:44px;border:1px solid var(--yk-border-inner);background:var(--yk-paper);color:var(--yk-ink);border-radius:14px;box-shadow:none;}

/* ---------- Bottom navigation ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav{
  bottom:max(9px,env(safe-area-inset-bottom));width:min(548px,calc(100% - 18px));min-height:70px;
  grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:6px;
  background:rgba(255,252,246,.97);border:1px solid var(--yk-border-inner);border-radius:23px;
  box-shadow:var(--yk-shadow-float);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav .nav-btn{min-height:56px;border:1px solid transparent;border-radius:17px;color:var(--yk-ink-2);background:transparent;gap:3px;padding:6px 4px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav .nav-btn span{font-size:12px;line-height:1.2;font-weight:820;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav .nav-btn.active{color:#FFFDF8;background:var(--yk-green);border-color:var(--yk-border-select);box-shadow:0 8px 18px rgba(23,56,38,.18);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav .nav-btn.active :is(span,i,.ui-svg){color:#FFFDF8;}

/* ---------- Surface hierarchy ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-page,.delight-today-page,.sig-week-page,.sig-shopping-page,.stock-page,.memo-page,.sig-family-page){background:transparent;}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-section,.sig-panel,.v11-plan-decision,.v11-plan-alternatives,.shopping-scope-tabs,.delight-shop-progress,.home-stock-group,.home-house-row,.stock-kpis>div){
  background:var(--yk-paper-2);border:1px solid var(--yk-border-inner);border-radius:var(--yk-radius-section);box-shadow:none;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.card,.stat,.insight,.summary-banner,.sig-week-card,.sig-shop-item,.member-card-v2,.memo-row,.stock-food-row,.stock-purchase-row,.learning-pattern-card,.learning-portion-note,.household-learning-card.has-insight,.sheet-panel,.on-card,.ready-card,.composer-main,.composer-insight,.runtime-recovery-card,.empty-state,.planning-empty-state,.plan-recipe-card,.registry-alt-chip,.learning-evidence-row){
  background:var(--yk-paper);border:1px solid var(--yk-border-struct);border-radius:var(--yk-radius-card);box-shadow:var(--yk-shadow-card);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-week-card,.sig-shop-item,.member-card-v2,.memo-row,.stock-food-row,.stock-purchase-row,.learning-evidence-row) :is(.sig-meal-thumb,.sig-shop-thumb,.sig-avatar,.food-icon){border-color:var(--yk-border-inner);}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.card,.stat,.insight,.sig-week-card,.sig-shop-item,.member-card-v2,.memo-row,.stock-food-row,.stock-purchase-row,.learning-pattern-card,.learning-portion-note,.learning-evidence-row) :is(small,em,.muted,.subtle){color:var(--yk-ink-3);opacity:1;}

/* Nested surfaces should not look like form fields inside form fields. */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-shop-category,.sig-section,.v11-plan-alternatives) :is(.sig-shop-item,.registry-alt-chip){box-shadow:none;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-category{background:transparent;border:0;box-shadow:none;margin-bottom:18px;overflow:visible;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-cat-head{min-height:56px;padding:8px 4px;background:transparent;border:0;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item{margin-bottom:8px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item:last-child{border:1px solid var(--yk-border-struct);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-thumb{border:0;box-shadow:none;background:transparent;}

/* ---------- Controls / border hierarchy ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.btn,.pill-btn,.sig-btn,.v11-command-chip,.option,.filter-chip,.choice-row,.shopping-scope-tabs button,.shopping-domains button,.registry-alt-chip,.round-icon){
  border:1px solid var(--yk-border-inner);background:var(--yk-paper);color:var(--yk-ink);box-shadow:none;border-radius:var(--yk-radius-control);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.btn.primary,.v11-command-primary,.sig-btn-primary){background:var(--yk-green);border-color:var(--yk-green);color:#FFFDF8;}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.active,.selected,.current)[class*="option"],
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-day.active,.shopping-domains button.active,.shopping-scope-tabs button.active,.registry-alt-chip.current){border-color:var(--yk-border-select);box-shadow:0 0 0 1px var(--yk-border-select);}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(button,[role="button"],summary):disabled{opacity:.62;color:#49544B;}

/* ---------- Hero system ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-hero,.sig-week-hero,.sig-shopping-hero,.sig-family-hero,.stock-hero){overflow:hidden;border:1px solid #284B36;border-radius:var(--yk-radius-hero);box-shadow:0 16px 38px rgba(18,38,26,.14);isolation:isolate;}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-hero,.sig-week-hero,.sig-shopping-hero,.sig-family-hero,.stock-hero) :is(.sig-hero-shade,.stock-hero-shade){background:linear-gradient(90deg,rgba(9,29,18,.94) 0%,rgba(13,37,24,.72) 50%,rgba(13,37,24,.16) 100%);}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-hero,.sig-week-hero,.sig-shopping-hero,.sig-family-hero,.stock-hero) :is(h1,h2,h3,.sig-hero-title,p,small,b,span){color:#FFFDF8;}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-hero-overline,.eyebrow){font-size:12px;font-weight:850;}

/* ---------- Today ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 .cycle3b-today{gap:18px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-command-primary{min-height:50px;font-size:14px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-command-chip{min-height:46px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .delight-day-glance{gap:8px;}

/* ---------- Plan / weekly meals ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-decision{padding:18px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-proof{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-proof>span{min-height:72px;padding:11px;border:1px solid var(--yk-border-soft);border-radius:16px;background:var(--yk-paper);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-proof>span:nth-child(1){border-inline-start:4px solid var(--yk-sage);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-proof>span:nth-child(2){border-inline-start:4px solid var(--yk-gold-2);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-proof>span:nth-child(3){border-inline-start:4px solid var(--yk-plum);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-proof>span:nth-child(4){border-inline-start:4px solid var(--yk-slate);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-proof small{font-size:12px;color:var(--yk-ink-3);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-proof b{font-size:16px;color:var(--yk-ink);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-decision>p{font-size:13px;line-height:1.65;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;padding:10px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-card .sig-meal-thumb{width:92px;height:92px;border-radius:14px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-copy .name{font-size:15px;line-height:1.35;font-weight:900;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-copy .type{font-size:12px;font-weight:850;color:var(--yk-green-3);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-copy .meta,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-copy .meta :is(span,small,em){font-size:12px;color:var(--yk-ink-3);opacity:1;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-row-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;gap:7px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-row-actions>button,
body.yekfi-v99.yekfi-signature.yekfi-v11 .meal-more>summary{min-height:44px;font-size:12px;border:1px solid var(--yk-border-inner);border-radius:12px;background:var(--yk-paper-2);color:var(--yk-ink);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-row-actions>button.primary{background:var(--yk-green);border-color:var(--yk-green);color:#fff;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .meal-more>summary{font-size:20px;display:grid;place-items:center;list-style:none;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .meal-more>summary::-webkit-details-marker{display:none;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .meal-more>summary::marker{content:"";font-size:0;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .meal-more>summary::before,
body.yekfi-v99.yekfi-signature.yekfi-v11 .meal-more>summary::after{display:none;content:none;}

/* ---------- Shopping ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 .shopping-scope-tabs{gap:7px;padding:5px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .shopping-scope-tabs button{min-height:58px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item{display:grid;grid-template-columns:44px 54px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item:not(.has-food-thumb){grid-template-columns:44px minmax(0,1fr) auto;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-check{width:44px;height:44px;min-width:44px;border:1px solid var(--yk-border-struct);border-radius:13px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-thumb{width:54px;height:54px;object-fit:cover;border-radius:12px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-main b{font-size:14px;line-height:1.35;font-weight:900;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-main :is(small,em),
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item.done{opacity:1;background:#F2F5EE;}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.shop-total,.shopping-summary .shop-total){background:var(--yk-plum);border-color:#563E51;color:#fff;}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.shop-total,.shopping-summary .shop-total) :is(small,b,span,strong,em){color:#fff;opacity:1;}

/* ---------- House / learning / memo ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 .stock-hero{min-height:260px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .stock-hero-copy{min-height:260px;padding:22px 18px;max-width:86%;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .stock-hero-copy h1{font-size:30px;line-height:1.08;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .stock-hero-copy p{font-size:13px;line-height:1.6;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .household-learning-card:not(.has-insight),
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-closeout-hero,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-spend-truth{background:var(--yk-green);border-color:var(--yk-green-3);color:#fff;}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.household-learning-card:not(.has-insight),.learning-closeout-hero,.learning-spend-truth) :is(small,em,p,b,strong){color:#FFFDF8;opacity:1;}

/* ---------- Modals / composer / onboarding ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sheet-panel,.on-card,.ready-card,.composer-shell,.first-impression-shell){background:var(--yk-paper);border:1px solid var(--yk-border-struct);box-shadow:0 22px 58px rgba(18,38,26,.20);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-shell{background:var(--yk-bg-soft);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-head{background:var(--yk-paper);border-bottom:1px solid var(--yk-border-inner);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sheet-head{min-height:52px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sheet-head h2{font-size:18px;line-height:1.3;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .toast{font-size:13px;line-height:1.45;}

/* ---------- Trust pages ---------- */
body.trust-static.yekfi-v99{font-family:var(--yk-type);background:var(--yk-bg);color:var(--yk-ink);}
body.trust-static.yekfi-v99 .trust-page{max-width:760px;margin:auto;padding:24px 16px 48px;}
body.trust-static.yekfi-v99 .trust-page-header,body.trust-static.yekfi-v99 .trust-doc{background:var(--yk-paper);border:1px solid var(--yk-border-struct);border-radius:20px;box-shadow:var(--yk-shadow-card);}
body.trust-static.yekfi-v99 .trust-page-header{padding:12px 14px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;}
body.trust-static.yekfi-v99 .trust-page-header img{max-width:120px;height:auto;}
body.trust-static.yekfi-v99 .trust-page-header a,body.trust-static.yekfi-v99 .trust-page-footer a{color:var(--yk-green);font-weight:800;min-height:44px;display:inline-flex;align-items:center;}
body.trust-static.yekfi-v99 .trust-doc{padding:22px;}
body.trust-static.yekfi-v99 .trust-doc h1{font-size:30px;line-height:1.2;color:var(--yk-ink);}
body.trust-static.yekfi-v99 .trust-doc h2{font-size:19px;line-height:1.3;color:var(--yk-ink);}
body.trust-static.yekfi-v99 .trust-doc p{font-size:14px;line-height:1.8;color:var(--yk-ink-2);}
body.trust-static.yekfi-v99 .trust-callout{background:var(--yk-paper-2);border-inline-start:4px solid var(--yk-gold);padding:14px;border-radius:14px;color:var(--yk-ink);line-height:1.7;}

/* ---------- Responsive refinements ---------- */
@media(max-width:560px){
  body.yekfi-v99.yekfi-signature.yekfi-v11 .content{padding-inline:11px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-week-hero,.sig-shopping-hero,.sig-family-hero,.stock-hero){min-height:250px;border-radius:24px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-hero-title{font-size:29px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-card{grid-template-columns:86px minmax(0,1fr);gap:10px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-card .sig-meal-thumb{width:86px;height:86px;}
}
@media(max-width:360px){
  body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar{padding-inline:7px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar-primary-row{gap:5px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar-primary-row>.brand{max-width:146px;gap:6px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .brand-symbol-large{width:44px;height:44px;min-width:44px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .brand-wordmark-field{width:78px;max-width:78px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .brand-copy-field .brand-tagline-ar{font-size:12px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .header-budget-chip{width:94px;min-width:94px;max-width:94px;padding-inline:5px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .header-budget-copy small{font-size:12px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .header-budget-copy b{font-size:13px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-row-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;gap:5px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-row-actions>button{font-size:12px;padding-inline:4px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item.has-food-thumb{grid-template-columns:44px 48px minmax(0,1fr);grid-template-rows:auto auto;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item.has-food-thumb>.sig-shop-check{grid-column:1;grid-row:1 / span 2;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item.has-food-thumb>.sig-shop-thumb{grid-column:2;grid-row:1 / span 2;width:48px;height:48px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item.has-food-thumb>.sig-shop-main{grid-column:3;grid-row:1;min-width:0;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item:not(.has-food-thumb){grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item:not(.has-food-thumb)>.sig-shop-check{grid-column:1;grid-row:1 / span 2;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item:not(.has-food-thumb)>.sig-shop-main{grid-column:2;grid-row:1;}
}
@media(prefers-reduced-motion:reduce){
  body.yekfi-v99.yekfi-signature.yekfi-v11 *,body.yekfi-v99.yekfi-signature.yekfi-v11 *::before,body.yekfi-v99.yekfi-signature.yekfi-v11 *::after{scroll-behavior:auto;transition-duration:.001ms;animation-duration:.001ms;animation-iteration-count:1;}
}

/* Auto-generated legacy microtype closure: any consumer selector that was ever <12px is clamped to 12px. */
body.yekfi-v99.trust-static .trust-doc .beta-label,
body.yekfi-v99.yekfi-signature #stepLabel,
body.yekfi-v99.yekfi-signature .app-trust-footer :is(a,
body.yekfi-v99.yekfi-signature .app-trust-footer-copy small,
body.yekfi-v99.yekfi-signature .appearance-bg-card small,
body.yekfi-v99.yekfi-signature .appearance-bg-card>strong,
body.yekfi-v99.yekfi-signature .appearance-density small,
body.yekfi-v99.yekfi-signature .appearance-intro small,
body.yekfi-v99.yekfi-signature .appearance-principle b,
body.yekfi-v99.yekfi-signature .appearance-principle small,
body.yekfi-v99.yekfi-signature .beta-trust-inline b,
body.yekfi-v99.yekfi-signature .beta-trust-inline small,
body.yekfi-v99.yekfi-signature .bottom-nav .nav-btn,
body.yekfi-v99.yekfi-signature .bottom-nav .nav-btn span,
body.yekfi-v99.yekfi-signature .bottom-nav small,
body.yekfi-v99.yekfi-signature .bottom-nav span,
body.yekfi-v99.yekfi-signature .brand-copy i,
body.yekfi-v99.yekfi-signature .brand-copy small,
body.yekfi-v99.yekfi-signature .brand-copy strong i,
body.yekfi-v99.yekfi-signature .brand-copy-field .brand-tagline-ar,
body.yekfi-v99.yekfi-signature .brand-tagline-ar,
body.yekfi-v99.yekfi-signature .brand-title-line i,
body.yekfi-v99.yekfi-signature .brand-title-line small,
body.yekfi-v99.yekfi-signature .budget-pill em,
body.yekfi-v99.yekfi-signature .budget-pill small,
body.yekfi-v99.yekfi-signature .budget-strip small,
body.yekfi-v99.yekfi-signature .budget-strip-label,
body.yekfi-v99.yekfi-signature .budget-strip-label::before,
body.yekfi-v99.yekfi-signature .budget-strip>small,
body.yekfi-v99.yekfi-signature .custom-product-intro small,
body.yekfi-v99.yekfi-signature .custom-product-now small,
body.yekfi-v99.yekfi-signature .delight-closeout-grid small,
body.yekfi-v99.yekfi-signature .delight-complete-grid small,
body.yekfi-v99.yekfi-signature .delight-day-glance b,
body.yekfi-v99.yekfi-signature .delight-day-glance small,
body.yekfi-v99.yekfi-signature .delight-first-value-proof span,
body.yekfi-v99.yekfi-signature .delight-glance small,
body.yekfi-v99.yekfi-signature .delight-loader-kicker,
body.yekfi-v99.yekfi-signature .delight-quick-section .yi-quick small,
body.yekfi-v99.yekfi-signature .delight-ready-alert span,
body.yekfi-v99.yekfi-signature .delight-ready-details summary,
body.yekfi-v99.yekfi-signature .delight-ready-good span,
body.yekfi-v99.yekfi-signature .delight-ready-kpis em,
body.yekfi-v99.yekfi-signature .delight-ready-kpis small,
body.yekfi-v99.yekfi-signature .delight-ready-lead>span,
body.yekfi-v99.yekfi-signature .delight-ready-proof span,
body.yekfi-v99.yekfi-signature .delight-secondary-insights>summary,
body.yekfi-v99.yekfi-signature .delight-shop-progress b,
body.yekfi-v99.yekfi-signature .delight-shop-progress small,
body.yekfi-v99.yekfi-signature .delight-shopping-stats small,
body.yekfi-v99.yekfi-signature .delight-store-head .store-total small,
body.yekfi-v99.yekfi-signature .delight-store-money small,
body.yekfi-v99.yekfi-signature .delight-store-sticky b,
body.yekfi-v99.yekfi-signature .delight-store-sticky small,
body.yekfi-v99.yekfi-signature .delight-value-promise small,
body.yekfi-v99.yekfi-signature .family-top-btn span,
body.yekfi-v99.yekfi-signature .fi-basket-row,
body.yekfi-v99.yekfi-signature .fi-beta,
body.yekfi-v99.yekfi-signature .fi-demo-basket small,
body.yekfi-v99.yekfi-signature .fi-demo-house small{font-size:12px;line-height:max(1.35em,16px);}
body.yekfi-v99.yekfi-signature .fi-demo-week em,
body.yekfi-v99.yekfi-signature .fi-demo-week small,
body.yekfi-v99.yekfi-signature .fi-food small,
body.yekfi-v99.yekfi-signature .fi-legal a,
body.yekfi-v99.yekfi-signature .fi-mini-stats small,
body.yekfi-v99.yekfi-signature .fi-trust,
body.yekfi-v99.yekfi-signature .fi-value-grid article>span,
body.yekfi-v99.yekfi-signature .fi-value-grid small,
body.yekfi-v99.yekfi-signature .field label,
body.yekfi-v99.yekfi-signature .field-label,
body.yekfi-v99.yekfi-signature .generation-notice small,
body.yekfi-v99.yekfi-signature .header-budget-chip>em,
body.yekfi-v99.yekfi-signature .header-budget-copy small,
body.yekfi-v99.yekfi-signature .household-board-empty small,
body.yekfi-v99.yekfi-signature .household-board-kind,
body.yekfi-v99.yekfi-signature .household-board-preview-actions button,
body.yekfi-v99.yekfi-signature .household-board-preview-copy em,
body.yekfi-v99.yekfi-signature .household-board-preview-copy small,
body.yekfi-v99.yekfi-signature .household-board-row-actions button,
body.yekfi-v99.yekfi-signature .household-board-row-copy small,
body.yekfi-v99.yekfi-signature .household-board-stats small,
body.yekfi-v99.yekfi-signature .household-learning-card em,
body.yekfi-v99.yekfi-signature .household-learning-card small,
body.yekfi-v99.yekfi-signature .kitchen-center-head small,
body.yekfi-v99.yekfi-signature .kitchen-inline b,
body.yekfi-v99.yekfi-signature .kitchen-inline small,
body.yekfi-v99.yekfi-signature .kitchen-test-row b,
body.yekfi-v99.yekfi-signature .kitchen-test-row small,
body.yekfi-v99.yekfi-signature .kitchen-yield-hero small,
body.yekfi-v99.yekfi-signature .learning-closeout-grid em,
body.yekfi-v99.yekfi-signature .learning-closeout-grid small,
body.yekfi-v99.yekfi-signature .learning-closeout-hero p,
body.yekfi-v99.yekfi-signature .learning-closeout-hero small,
body.yekfi-v99.yekfi-signature .learning-closeout-story small,
body.yekfi-v99.yekfi-signature .learning-closeout-story>div>span,
body.yekfi-v99.yekfi-signature .learning-empty small,
body.yekfi-v99.yekfi-signature .learning-evidence-row button,
body.yekfi-v99.yekfi-signature .learning-evidence-row em,
body.yekfi-v99.yekfi-signature .learning-evidence-row small,
body.yekfi-v99.yekfi-signature .learning-memory-link,
body.yekfi-v99.yekfi-signature .learning-next-signal p,
body.yekfi-v99.yekfi-signature .learning-next-signal small,
body.yekfi-v99.yekfi-signature .learning-outcome-grid button small,
body.yekfi-v99.yekfi-signature .learning-pattern-card em,
body.yekfi-v99.yekfi-signature .learning-pattern-card small,
body.yekfi-v99.yekfi-signature .learning-portion-note small,
body.yekfi-v99.yekfi-signature .learning-privacy-note,
body.yekfi-v99.yekfi-signature .learning-rating-head p,
body.yekfi-v99.yekfi-signature .learning-rating-head small,
body.yekfi-v99.yekfi-signature .learning-skip-link,
body.yekfi-v99.yekfi-signature .learning-spend-truth small,
body.yekfi-v99.yekfi-signature .learning-spend-truth>em,
body.yekfi-v99.yekfi-signature .learning-week-pulse-copy em,
body.yekfi-v99.yekfi-signature .learning-week-pulse-copy small,
body.yekfi-v99.yekfi-signature .ledger-row b,
body.yekfi-v99.yekfi-signature .ledger-row small,
body.yekfi-v99.yekfi-signature .ledger-row strong,
body.yekfi-v99.yekfi-signature .loader-detail,
body.yekfi-v99.yekfi-signature .market-label-chip,
body.yekfi-v99.yekfi-signature .meal-budget-note span{font-size:12px;line-height:max(1.35em,16px);}
body.yekfi-v99.yekfi-signature .meal-visual.fallback::after,
body.yekfi-v99.yekfi-signature .member-photo-actions button,
body.yekfi-v99.yekfi-signature .member-photo-actions label,
body.yekfi-v99.yekfi-signature .member-photo-copy small,
body.yekfi-v99.yekfi-signature .memo-row-top em,
body.yekfi-v99.yekfi-signature .menu-overview small,
body.yekfi-v99.yekfi-signature .menu-release-note b,
body.yekfi-v99.yekfi-signature .menu-release-note small,
body.yekfi-v99.yekfi-signature .menu-section-label,
body.yekfi-v99.yekfi-signature .monthly-buy-btn,
body.yekfi-v99.yekfi-signature .monthly-house-main small,
body.yekfi-v99.yekfi-signature .monthly-item .sig-shop-main em,
body.yekfi-v99.yekfi-signature .monthly-item .sig-shop-main small,
body.yekfi-v99.yekfi-signature .nav-btn,
body.yekfi-v99.yekfi-signature .new-plan-name-field small,
body.yekfi-v99.yekfi-signature .new-plan-options>button small,
body.yekfi-v99.yekfi-signature .new-plan-options>button.recommended em,
body.yekfi-v99.yekfi-signature .notify-card small,
body.yekfi-v99.yekfi-signature .nutrition-gate-banner em,
body.yekfi-v99.yekfi-signature .nutrition-gate-banner small,
body.yekfi-v99.yekfi-signature .nutrition-hard-gate small,
body.yekfi-v99.yekfi-signature .on-head>div:nth-child(2)>small,
body.yekfi-v99.yekfi-signature .pediatric-center-head small,
body.yekfi-v99.yekfi-signature .pediatric-context-card small,
body.yekfi-v99.yekfi-signature .pediatric-context-options button,
body.yekfi-v99.yekfi-signature .pediatric-family-banner em,
body.yekfi-v99.yekfi-signature .pediatric-family-banner small,
body.yekfi-v99.yekfi-signature .pediatric-guide-row b,
body.yekfi-v99.yekfi-signature .pediatric-guide-row small,
body.yekfi-v99.yekfi-signature .pediatric-meal-alert b,
body.yekfi-v99.yekfi-signature .pediatric-meal-alert small,
body.yekfi-v99.yekfi-signature .pediatric-policy-card b,
body.yekfi-v99.yekfi-signature .pediatric-policy-card small,
body.yekfi-v99.yekfi-signature .persistence-warning b,
body.yekfi-v99.yekfi-signature .persistence-warning small,
body.yekfi-v99.yekfi-signature .plan-cuisine-selection-status small,
body.yekfi-v99.yekfi-signature .plan-fill-busy small,
body.yekfi-v99.yekfi-signature .price-trust-inline b,
body.yekfi-v99.yekfi-signature .price-trust-inline small,
body.yekfi-v99.yekfi-signature .purchase-confirm-head small,
body.yekfi-v99.yekfi-signature .purchase-history-row b,
body.yekfi-v99.yekfi-signature .purchase-history-row small,
body.yekfi-v99.yekfi-signature .purchase-history-row strong,
body.yekfi-v99.yekfi-signature .purchase-plan-note small,
body.yekfi-v99.yekfi-signature .readiness-check small,
body.yekfi-v99.yekfi-signature .release-check b,
body.yekfi-v99.yekfi-signature .release-check small,
body.yekfi-v99.yekfi-signature .release-check>span,
body.yekfi-v99.yekfi-signature .release-gate-card em,
body.yekfi-v99.yekfi-signature .release-gate-card small,
body.yekfi-v99.yekfi-signature .release-gate-card span small,
body.yekfi-v99.yekfi-signature .release-gate-head strong,
body.yekfi-v99.yekfi-signature .saved-plan-main small,
body.yekfi-v99.yekfi-signature .saved-plan-row-actions button,
body.yekfi-v99.yekfi-signature .science-center-head small,
body.yekfi-v99.yekfi-signature .science-plan-card b,
body.yekfi-v99.yekfi-signature .science-plan-card small,
body.yekfi-v99.yekfi-signature .science-weight-pill,
body.yekfi-v99.yekfi-signature .settings-appearance-entry small{font-size:12px;line-height:max(1.35em,16px);}
body.yekfi-v99.yekfi-signature .sheet-panel em,
body.yekfi-v99.yekfi-signature .shopping-domains small,
body.yekfi-v99.yekfi-signature .shopping-scope-tabs button>b,
body.yekfi-v99.yekfi-signature .shopping-scope-tabs button>small,
body.yekfi-v99.yekfi-signature .sig-context-bar small,
body.yekfi-v99.yekfi-signature .sig-context-bar span small,
body.yekfi-v99.yekfi-signature .sig-day b,
body.yekfi-v99.yekfi-signature .sig-day small,
body.yekfi-v99.yekfi-signature .sig-hero-copy p,
body.yekfi-v99.yekfi-signature .sig-hero-meta span,
body.yekfi-v99.yekfi-signature .sig-hero-overline,
body.yekfi-v99.yekfi-signature .sig-link,
body.yekfi-v99.yekfi-signature .sig-meal-main em,
body.yekfi-v99.yekfi-signature .sig-meal-main small,
body.yekfi-v99.yekfi-signature .sig-member-copy em,
body.yekfi-v99.yekfi-signature .sig-member-copy small,
body.yekfi-v99.yekfi-signature .sig-metric small,
body.yekfi-v99.yekfi-signature .sig-panel-head small,
body.yekfi-v99.yekfi-signature .sig-section-head small,
body.yekfi-v99.yekfi-signature .sig-shop-main em,
body.yekfi-v99.yekfi-signature .sig-shop-main small,
body.yekfi-v99.yekfi-signature .sig-shop-main>em,
body.yekfi-v99.yekfi-signature .sig-shop-main>small,
body.yekfi-v99.yekfi-signature .sig-shop-meta small,
body.yekfi-v99.yekfi-signature .sig-shopping-hero .price-trust-inline small,
body.yekfi-v99.yekfi-signature .sig-shopping-stats.delight-shopping-stats small,
body.yekfi-v99.yekfi-signature .sig-store-mode-cta small,
body.yekfi-v99.yekfi-signature .sig-summary-action,
body.yekfi-v99.yekfi-signature .sig-week-copy .meta,
body.yekfi-v99.yekfi-signature .sig-week-copy .type,
body.yekfi-v99.yekfi-signature .sig-week-row-actions button,
body.yekfi-v99.yekfi-signature .sig-week-switch small,
body.yekfi-v99.yekfi-signature .splash-brand-name span,
body.yekfi-v99.yekfi-signature .stepper.ux-stepper>span:first-child small,
body.yekfi-v99.yekfi-signature .stock-filter-bar button,
body.yekfi-v99.yekfi-signature .stock-food-copy small,
body.yekfi-v99.yekfi-signature .stock-food-state,
body.yekfi-v99.yekfi-signature .stock-head-actions .sig-link,
body.yekfi-v99.yekfi-signature .stock-hero p,
body.yekfi-v99.yekfi-signature .stock-kpis small,
body.yekfi-v99.yekfi-signature .stock-movement-actions button,
body.yekfi-v99.yekfi-signature .stock-nav-badge,
body.yekfi-v99.yekfi-signature .stock-purchase-row em,
body.yekfi-v99.yekfi-signature .stock-purchase-row small,
body.yekfi-v99.yekfi-signature .store-custom-head small,
body.yekfi-v99.yekfi-signature .strategic-goal-copy em,
body.yekfi-v99.yekfi-signature .strategic-goal-copy small,
body.yekfi-v99.yekfi-signature .strategic-goal-pick em,
body.yekfi-v99.yekfi-signature .strategic-goal-pick small,
body.yekfi-v99.yekfi-signature .strategic-goals-note,
body.yekfi-v99.yekfi-signature .support-diagnostic small,
body.yekfi-v99.yekfi-signature .support-diagnostic summary,
body.yekfi-v99.yekfi-signature .tiny-muted,
body.yekfi-v99.yekfi-signature .topbar :is(.topbar-plan-btn,
body.yekfi-v99.yekfi-signature .topbar-new-plan b,
body.yekfi-v99.yekfi-signature .trust-card em,
body.yekfi-v99.yekfi-signature .trust-card small,
body.yekfi-v99.yekfi-signature .trust-delete-warning small,
body.yekfi-v99.yekfi-signature .trust-disclaimer b{font-size:12px;line-height:max(1.35em,16px);}
body.yekfi-v99.yekfi-signature .trust-disclaimer small,
body.yekfi-v99.yekfi-signature .trust-hero small,
body.yekfi-v99.yekfi-signature .trust-row b,
body.yekfi-v99.yekfi-signature .trust-row span,
body.yekfi-v99.yekfi-signature .universe-more,
body.yekfi-v99.yekfi-signature .universe-visual-copy small,
body.yekfi-v99.yekfi-signature .user-product-main em,
body.yekfi-v99.yekfi-signature .user-product-main small,
body.yekfi-v99.yekfi-signature .user-products-empty small,
body.yekfi-v99.yekfi-signature .user-products-truth,
body.yekfi-v99.yekfi-signature .user-products-truth b,
body.yekfi-v99.yekfi-signature .v11-attention-head small,
body.yekfi-v99.yekfi-signature .v11-command-chip b,
body.yekfi-v99.yekfi-signature .v11-command-primary small,
body.yekfi-v99.yekfi-signature .v11-confidence,
body.yekfi-v99.yekfi-signature .v11-month-progress-head small,
body.yekfi-v99.yekfi-signature .v11-month-week-track i,
body.yekfi-v99.yekfi-signature .v11-month-week-track small,
body.yekfi-v99.yekfi-signature .v11-personalization-proof em,
body.yekfi-v99.yekfi-signature .v11-personalization-proof small,
body.yekfi-v99.yekfi-signature .v11-plan-alternatives .registry-alt-head small,
body.yekfi-v99.yekfi-signature .v11-plan-decision-head small,
body.yekfi-v99.yekfi-signature .v11-week-health-note small,
body.yekfi-v99.yekfi-signature .v11-week-health-note strong,
body.yekfi-v99.yekfi-signature .v11-week-pulse-copy em,
body.yekfi-v99.yekfi-signature .v11-week-pulse-copy small,
body.yekfi-v99.yekfi-signature .view-backbar>small,
body.yekfi-v99.yekfi-signature .yi-quick b,
body.yekfi-v99.yekfi-signature .yi-quick small,
body.yekfi-v99.yekfi-signature :is(
  .plan-mode-buttons button.recommended em,
body.yekfi-v99.yekfi-signature :is(
 .sig-hero-overline,
body.yekfi-v99.yekfi-signature :is(.budget-pill small,
body.yekfi-v99.yekfi-signature :is(.household-board-preview-copy small,
body.yekfi-v99.yekfi-signature :is(.learning-leftover-grid,
body.yekfi-v99.yekfi-signature :is(.learning-outcome-hero,
body.yekfi-v99.yekfi-signature :is(.topbar-plan-btn,
body.yekfi-v99.yekfi-signature.header-compact .brand-copy-field .brand-tagline-ar,
body.yekfi-v99.yekfi-signature.yekfi-v11 .acceptance-grid small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .boot,
body.yekfi-v99.yekfi-signature.yekfi-v11 .brand-copy small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .brand-copy strong i,
body.yekfi-v99.yekfi-signature.yekfi-v11 .btn,
body.yekfi-v99.yekfi-signature.yekfi-v11 .budget-decision-summary small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .budget-pill em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .budget-pill small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .choice-row b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .cloud-house em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .cloud-house small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-money b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .cook-hero em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .cook-hero small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .day-chip small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .day-tabs.fixed-days .day-tab b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .dish-facts b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .empty p,
body.yekfi-v99.yekfi-signature.yekfi-v11 .eyebrow,
body.yekfi-v99.yekfi-signature.yekfi-v11 .family-top-btn,
body.yekfi-v99.yekfi-signature.yekfi-v11 .family-top-btn span,
body.yekfi-v99.yekfi-signature.yekfi-v11 .family-top-btn),
body.yekfi-v99.yekfi-signature.yekfi-v11 .friends-onboard-note small{font-size:12px;line-height:max(1.35em,16px);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .friends-pilot-hero em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .friends-pilot-hero small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .grocery-request-empty small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .grocery-request-foot,
body.yekfi-v99.yekfi-signature.yekfi-v11 .grocery-request-row small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .guardian-gap small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .home-empty b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .home-stock-main b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .home-stock-toolbar b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .house-pulse small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .house-pulse strong,
body.yekfi-v99.yekfi-signature.yekfi-v11 .household-board-hero small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .household-board-preview-copy small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .household-board-row-actions button,
body.yekfi-v99.yekfi-signature.yekfi-v11 .household-board-row-actions button
),
body.yekfi-v99.yekfi-signature.yekfi-v11 .household-control-grid small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .household-entry-intro small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .household-learning-card em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .household-learning-card small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .import-match small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .input,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-closeout-grid em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-closeout-grid small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-closeout-hero p,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-closeout-hero small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-closeout-story small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-empty small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-evidence-row button,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-evidence-row em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-evidence-row small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-leftover-grid button small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-leftover-hero,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-memory-hero) small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-next-signal p,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-next-signal small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-outcome-grid button small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-pattern-card em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-pattern-card small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-portion-note small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-privacy-note,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-rating-grid button small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-rating-grid) button small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-rating-head p,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-rating-head small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-spend-truth small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-spend-truth>em
),
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-week-pulse-copy em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .learning-week-pulse-copy small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .manual-budget-summary small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .manual-cuisine-strip button b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .manual-cuisine-strip button em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .manual-current-slot small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .manual-day-strip button em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .manual-day-strip button small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .manual-slot-strip button b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .manual-slot-strip button em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .meal-meta-simple span,
body.yekfi-v99.yekfi-signature.yekfi-v11 .meal-mini b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .meal-more>div button,
body.yekfi-v99.yekfi-signature.yekfi-v11 .meal-visual.fallback small{font-size:12px;line-height:max(1.35em,16px);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .member-photo-actions button,
body.yekfi-v99.yekfi-signature.yekfi-v11 .member-photo-actions label,
body.yekfi-v99.yekfi-signature.yekfi-v11 .member-photo-copy small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .memo-main small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .memo-row-top em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .microtag,
body.yekfi-v99.yekfi-signature.yekfi-v11 .microtag),
body.yekfi-v99.yekfi-signature.yekfi-v11 .mode-choice.ux-mode-choice small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .nav-btn,
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-head #stepLabel,
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-head small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-step-lead .step-kicker,
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-step>p,
body.yekfi-v99.yekfi-signature.yekfi-v11 .or-line,
body.yekfi-v99.yekfi-signature.yekfi-v11 .pilot-bench small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .pilot-issue-row small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .pilot-menu-banner small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .pilot-runtime-grid b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .pilot-runtime-grid small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .pilot-session-state small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .pilot-truth small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-library-head em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-library-head small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-mode-buttons button.recommended em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-policy-note span,
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-recipe-card small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-recipe-card>em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-soft-guidance span,
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-studio-progress .plan-autosave,
body.yekfi-v99.yekfi-signature.yekfi-v11 .price-truth-card small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .rc25-completion-hint,
body.yekfi-v99.yekfi-signature.yekfi-v11 .rc25-profile-progress small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .rc25-three-modes button em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .registry-alt-chip small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .release-check b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .release-check small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .release-gate-head span small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .release-gate-head strong,
body.yekfi-v99.yekfi-signature.yekfi-v11 .saved-plan-meta small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .saved-plan-meta small),
body.yekfi-v99.yekfi-signature.yekfi-v11 .setup-profile-group-title small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .setup-profile-head em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .shop-name b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .shopping-domains b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .shopping-domains button>b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .shopping-domains button>small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .shopping-domains small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .shopping-mode-switch button,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-btn,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-context-bar small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-family-actions small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-hero-meta span,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-link,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-meal-main em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-meal-main small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-member-copy em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-member-copy small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-metric small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-profile-note small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-section-head small{font-size:12px;line-height:max(1.35em,16px);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-cat-head small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-main em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-main small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shopping-stats span,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-store-mode-cta small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-summary-title small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-copy .type,
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-week-switch small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .splash-en,
body.yekfi-v99.yekfi-signature.yekfi-v11 .stepper.ux-stepper>span:first-child small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .substitute-list small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .tiny-muted,
body.yekfi-v99.yekfi-signature.yekfi-v11 .today-meal-main em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .today-meal-main small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar-utility-row .round-icon),
body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar>.topbar-primary-row .round-icon),
body.yekfi-v99.yekfi-signature.yekfi-v11 .unit-card b,
body.yekfi-v99.yekfi-signature.yekfi-v11 .universe-card span,
body.yekfi-v99.yekfi-signature.yekfi-v11 .universe-empty span,
body.yekfi-v99.yekfi-signature.yekfi-v11 .universe-main span,
body.yekfi-v99.yekfi-signature.yekfi-v11 .universe-visual-copy small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .ux-house-total>small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .ux-house-total>span,
body.yekfi-v99.yekfi-signature.yekfi-v11 .ux-measured-score small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-attention-head small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-attention-row small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-confidence,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-home-grid small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-home-hub-head small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-month-progress-head small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-month-week-track i,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-month-week-track small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-personalization-proof em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-personalization-proof small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-alternatives .registry-alt-chip small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-alternatives .registry-alt-head em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-alternatives .registry-alt-head small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-decision-head small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-decision>p,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-plan-proof small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-today-actions>button small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-week-health-note small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-week-health-note strong,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-week-pulse-copy em,
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-week-pulse-copy small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .week-pulse small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .week-pulse strong,
body.yekfi-v99.yekfi-signature.yekfi-v11 .yekfi-network-banner,
body.yekfi-v99.yekfi-signature.yekfi-v11 .yekfi-runtime-boundary button,
body.yekfi-v99.yekfi-signature.yekfi-v11 .yekfi-runtime-boundary small,
body.yekfi-v99.yekfi-signature.yekfi-v11 .yekfi-update-banner button,
body.yekfi-v99.yekfi-signature.yekfi-v11 .yekfi-update-banner small,
body.yekfi-v99.yekfi-signature.yekfi-v11 button){font-size:12px;line-height:max(1.35em,16px);}

/* Performance polish: no nested blur layers inside scrolling content. */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-hero-overline,.sig-hero-meta span,.stock-hero-mark,.price-trust-inline,.beta-trust-inline){backdrop-filter:none;-webkit-backdrop-filter:none;}

/* Editorial de-card pass: sections provide rhythm; content cards provide containment. */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.delight-week-meals,.delight-meals-section){
  background:transparent;border:0;box-shadow:none;padding:0;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.delight-week-meals,.delight-meals-section)>.sig-section-head{padding-inline:2px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.delight-week-meals,.delight-meals-section)>.sig-panel{
  background:transparent;border:0;box-shadow:none;padding:0;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.stock-food-list,.stock-purchase-list,.memo-list,.sig-member-list){
  background:transparent;border:0;box-shadow:none;padding:0;
}

/* Full-screen QA closure: real visible copy and targets, not component samples only. */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(button,[role="button"],summary,.btn,.pill-btn,.sig-btn,.nav-btn,.filter-chip,.choice-row,.option,.registry-alt-chip){min-inline-size:44px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-hero-meta span{font-size:12px;line-height:1.35;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .delight-day-glance :is(small,b,strong,span){font-size:12px;line-height:1.35;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .delight-day-glance b{font-size:13px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-day :is(b,small){font-size:12px;line-height:1.2;}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.household-learning-card,.learning-pattern-card,.learning-evidence-row) :is(small,em,p,span){font-size:12px;line-height:1.45;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .round-icon{font-size:12px;}

/* Final legibility pass for recurring live components. */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(small,em,.muted,.subtle){opacity:1;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-command-surface{display:grid;gap:9px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-command-primary{min-height:82px;border-radius:20px;background:var(--yk-green);border-color:var(--yk-border-select);box-shadow:var(--yk-shadow-card);}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-command-primary :is(b,small,strong){color:#FFFDF8;opacity:1;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-command-primary small{font-size:12px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-command-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-command-chip{width:100%;min-height:48px;padding:7px 6px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-command-chip b{font-size:12px;white-space:nowrap;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-week-pulse-copy small{font-size:12px;}

body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-home-grid>button{
  min-height:94px;padding:11px;display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-rows:auto auto;column-gap:9px;align-content:center;
  background:var(--yk-paper);border:1px solid var(--yk-border-struct);border-radius:16px;box-shadow:none;text-align:right;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-home-grid>button:nth-child(1){background:var(--yk-green);border-color:var(--yk-border-select);color:#fff;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-home-grid b{font-size:14px;line-height:1.25;word-break:keep-all;overflow-wrap:normal;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-home-grid small{font-size:12px;line-height:1.3;color:var(--yk-ink-3);word-break:keep-all;overflow-wrap:normal;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-home-grid>button:nth-child(1) :is(b,small){color:#FFFDF8;}

/* Secondary-flow QA closure — recommendation badge remains readable on 320px. */
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-mode-buttons button.recommended em{
  font-size:12px;
  line-height:1.25;
  min-height:20px;
  display:inline-flex;
  align-items:center;
}

/* ---------- Runtime DOM reconciliation: shopping cards ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-thumb-slot{
  width:54px;height:54px;min-width:54px;
  display:grid;place-items:center;border:0;background:transparent;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-meta{
  min-width:116px;display:grid;gap:4px;justify-items:end;
  padding:0;border:0;background:transparent;text-align:left;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-meta>span{
  display:flex;align-items:baseline;justify-content:flex-end;gap:5px;min-width:0;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-meta small{
  font-size:12px;line-height:1.3;color:var(--yk-ink-3);white-space:nowrap;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-meta b{
  font-size:13px;line-height:1.25;font-weight:900;color:var(--yk-ink);white-space:nowrap;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-meta>span:last-child b{color:#70450D;}
@media(max-width:360px){
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item.has-food-thumb{
    grid-template-columns:44px 48px minmax(0,1fr);grid-template-rows:auto auto;
  }
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item.has-food-thumb>.sig-shop-check{grid-column:1;grid-row:1 / span 2;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item.has-food-thumb>.sig-shop-thumb-slot{
    grid-column:2;grid-row:1 / span 2;width:48px;height:48px;min-width:48px;
  }
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item.has-food-thumb>.sig-shop-thumb-slot .sig-shop-thumb{width:48px;height:48px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item.has-food-thumb>.sig-shop-main{grid-column:3;grid-row:1;min-width:0;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item.has-food-thumb>.sig-shop-meta{
    grid-column:3;grid-row:2;min-width:0;width:100%;
    display:flex;flex-wrap:wrap;justify-content:flex-start;justify-self:stretch;gap:4px 10px;text-align:right;
    padding-top:6px;border-top:1px solid var(--yk-border-soft);
  }
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item:not(.has-food-thumb){
    grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;
  }
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item:not(.has-food-thumb)>.sig-shop-check{grid-column:1;grid-row:1 / span 2;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item:not(.has-food-thumb)>.sig-shop-main{grid-column:2;grid-row:1;min-width:0;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sig-shop-item:not(.has-food-thumb)>.sig-shop-meta{
    grid-column:2;grid-row:2;min-width:0;width:100%;
    display:flex;flex-wrap:wrap;justify-content:flex-start;justify-self:stretch;gap:4px 10px;text-align:right;
    padding-top:6px;border-top:1px solid var(--yk-border-soft);
  }
}

/* ---------- Computed-style QA closure ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 .v11-confidence{
  font-size:12px;line-height:1.25;font-weight:850;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .meal-more>div button{
  min-height:44px;font-size:12px;line-height:1.25;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .delight-shop-progress :is(b,strong){
  font-size:13px;line-height:1.25;color:var(--yk-ink);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .choice-row :is(b,strong){
  font-size:12px;line-height:1.25;color:var(--yk-ink);
}

/* ---------- Small-screen editorial hero tuning ---------- */
@media(max-width:560px){
  body.yekfi-v99.yekfi-signature.yekfi-v11 .stock-hero-copy h1{font-size:28px;line-height:1.1;max-width:12ch;}
}
@media(max-width:360px){
  body.yekfi-v99.yekfi-signature.yekfi-v11 .stock-hero-copy{max-width:92%;padding:20px 16px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .stock-hero-copy h1{font-size:25px;line-height:1.12;max-width:13ch;}
}

/* ---------- Secondary journeys: onboarding / plan studio / composer ---------- */
body.yekfi-v99.yekfi-signature.yekfi-v11 .modal.onboarding,
body.yekfi-v99.yekfi-signature.yekfi-v11 .modal.composer-modal,
body.yekfi-v99.yekfi-signature.yekfi-v11 .modal.sheet{
  padding:12px;
  align-items:center;
  justify-content:center;
  background:rgba(17,32,25,.38);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-card{
  width:min(560px,calc(100vw - 24px));
  min-height:0;
  max-height:calc(100dvh - 24px);
  border-radius:26px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-head{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:14px 16px 12px;
  border-bottom:1px solid var(--yk-border-inner);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-head .logo-orb{width:48px;height:48px;border-radius:15px;background:var(--yk-paper-2);border:1px solid var(--yk-border-inner);display:grid;place-items:center;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-head .logo-orb img{width:30px;height:30px;object-fit:contain;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-head>div:nth-child(2){display:grid;gap:2px;min-width:0;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-head>div:nth-child(2)>b{font-size:16px;line-height:1.3;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-head>span{font-size:12px;font-weight:850;color:var(--yk-ink-2);white-space:nowrap;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-card>.progress{height:4px;margin:0;background:#E7E0D4;border:0;border-radius:0;overflow:hidden;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-card>.progress>i{display:block;height:100%;background:var(--yk-gold);}
body.yekfi-v99.yekfi-signature.yekfi-v11 #onContent{padding:18px;overflow:auto;overscroll-behavior:contain;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .ux-on-step{display:grid;gap:16px;min-height:0;align-content:start;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-step-lead{display:grid;gap:7px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-step-lead h1{font-size:24px;line-height:1.2;margin:0;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-step-lead p{margin:0;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .mode-choice.ux-mode-choice,
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-mode-buttons{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .mode-choice.ux-mode-choice>button,
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-mode-buttons>button{
  position:relative;
  min-width:0;
  min-height:118px;
  padding:13px;
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  grid-template-areas:"icon title" "icon desc" "badge badge";
  align-content:center;
  align-items:start;
  gap:3px 9px;
  text-align:right;
  border:1px solid var(--yk-border-inner);
  border-radius:17px;
  background:var(--yk-paper);
  color:var(--yk-ink);
  box-shadow:none;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.mode-choice.ux-mode-choice,.plan-mode-buttons)>button>span{grid-area:icon;font-size:22px;line-height:1;align-self:start;}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.mode-choice.ux-mode-choice,.plan-mode-buttons)>button>b{grid-area:title;font-size:14px;line-height:1.3;}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.mode-choice.ux-mode-choice,.plan-mode-buttons)>button>small{grid-area:desc;font-size:12px;line-height:1.45;color:var(--yk-ink-3);}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.mode-choice.ux-mode-choice,.plan-mode-buttons)>button>em{
  grid-area:badge;
  position:static;
  justify-self:start;
  align-self:end;
  margin-top:5px;
  padding:4px 8px;
  min-height:24px;
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  background:#F4E5BE;
  color:#70450D;
  font-size:12px;
  line-height:1.2;
  font-style:normal;
  font-weight:850;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.mode-choice.ux-mode-choice,.plan-mode-buttons)>button:is(.active,.selected){border-color:var(--yk-border-select);box-shadow:0 0 0 1px var(--yk-border-select);background:#FFF8E8;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;align-items:center;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-actions>.btn:only-child{grid-column:1/-1;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .on-actions>.btn{min-height:48px;}

body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-shell{
  width:min(720px,calc(100vw - 24px));
  max-height:calc(100dvh - 24px);
  min-height:0;
  border-radius:26px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-head{
  min-height:74px;
  padding:12px 14px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 44px;
  align-items:center;
  gap:10px;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-head>div{min-width:0;display:grid;gap:1px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-head h2{font-size:18px;line-height:1.25;margin:0;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-brand{width:44px;height:44px;display:grid;place-items:center;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-brand img{max-width:30px;max-height:30px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-content{padding:14px;overflow:auto;overscroll-behavior:contain;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-studio{gap:12px;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-studio-step{border:1px solid var(--yk-border-inner);border-radius:18px;background:var(--yk-paper);box-shadow:none;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-studio-step-head,
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-studio-step-head-static{background:transparent;border:0;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-studio-step-body{padding:0 12px 12px;}

body.yekfi-v99.yekfi-signature.yekfi-v11 .sheet-panel{
  width:min(560px,calc(100vw - 24px));
  max-height:min(82dvh,760px);
  border-radius:26px;
  overflow:hidden;
  padding:0;
  display:flex;
  flex-direction:column;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sheet-panel>.handle{margin:8px auto 2px;width:42px;height:4px;border-radius:999px;background:var(--yk-border-inner);flex:0 0 auto;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sheet-head{padding:7px 12px 10px;border-bottom:1px solid var(--yk-border-inner);display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;flex:0 0 auto;}
body.yekfi-v99.yekfi-signature.yekfi-v11 .sheet-head h2{text-align:center;margin:0;}
body.yekfi-v99.yekfi-signature.yekfi-v11 #sheetContent{padding:14px;overflow:auto;overscroll-behavior:contain;}

@media(max-width:680px){
  body.yekfi-v99.yekfi-signature.yekfi-v11 .mode-choice.ux-mode-choice,
  body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-mode-buttons{grid-template-columns:1fr;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .mode-choice.ux-mode-choice>button,
  body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-mode-buttons>button{
    min-height:88px;
    grid-template-columns:36px minmax(0,1fr) auto;
    grid-template-areas:"icon title badge" "icon desc badge";
    padding:11px 12px;
  }
  body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.mode-choice.ux-mode-choice,.plan-mode-buttons)>button>em{grid-area:badge;align-self:center;margin:0;white-space:nowrap;}
}
@media(max-width:360px){
  body.yekfi-v99.yekfi-signature.yekfi-v11 .modal.onboarding,
  body.yekfi-v99.yekfi-signature.yekfi-v11 .modal.composer-modal,
  body.yekfi-v99.yekfi-signature.yekfi-v11 .modal.sheet{padding:6px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .on-card,
  body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-shell,
  body.yekfi-v99.yekfi-signature.yekfi-v11 .sheet-panel{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);border-radius:22px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 #onContent{padding:14px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .on-step-lead h1{font-size:22px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .mode-choice.ux-mode-choice>button,
  body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-mode-buttons>button{grid-template-columns:32px minmax(0,1fr);grid-template-areas:"icon title" "icon desc" "badge badge";}
  body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.mode-choice.ux-mode-choice,.plan-mode-buttons)>button>em{grid-area:badge;justify-self:start;margin-top:3px;}
}

/* v99 secondary microtype closure */
body.yekfi-v99 .on-step-lead .step-kicker{font-size:12px;line-height:1.45;font-weight:800;color:var(--yk-ink2);letter-spacing:0;}

/* v99 composer intrinsic-height closure */
body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-shell{
  height:auto;
  min-height:0;
  max-height:calc(100dvh - 24px);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-content{
  flex:0 1 auto;
  min-height:0;
  max-height:calc(100dvh - 98px);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .plan-studio{
  min-height:0;
  height:auto;
  align-content:start;
}
@media(max-width:360px){
  body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-shell{max-height:calc(100dvh - 12px);}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .composer-content{max-height:calc(100dvh - 86px);}
}

/* =====================================================================
   PRE-BETA B3 — VISUAL PRECISION & INTERACTION VOCABULARY
   Purpose: preserve Engine→UI truth while tightening navigation, touch,
   contrast, selection and action semantics. No product capability change.
   ===================================================================== */

/* Five destinations are first-class peers. Planning must not float or look
   like a privileged CTA inside the navigation bar. */
body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:4px;
  overflow:visible;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav .planning-nav-btn{
  transform:none;
  z-index:auto;
  background:transparent;
  color:var(--yk-ink-2);
  border-color:transparent;
  box-shadow:none;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav .planning-nav-btn i{
  width:auto;
  height:auto;
  border-radius:0;
  background:transparent;
  color:inherit;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav .planning-nav-btn.active{
  transform:none;
  color:#FFFDF8;
  background:var(--yk-green);
  border-color:var(--yk-border-select);
  box-shadow:0 8px 18px rgba(23,56,38,.18);
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav .planning-nav-btn.active i{
  background:transparent;
  color:#FFFDF8;
}

/* Header remains one compact decision row; utilities are not allowed to
   crush the brand or escape the viewport. */
body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar-primary-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  width:100%;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar-primary-row>.brand{
  min-width:0;
  overflow:hidden;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar-utility-row{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  max-width:150px;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .header-budget-chip{
  overflow:hidden;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 .header-budget-copy,
body.yekfi-v99.yekfi-signature.yekfi-v11 .header-budget-copy :is(small,b){
  max-width:100%;
}

/* Interaction vocabulary: back/close controls share geometry; primary,
   secondary and danger actions are visually distinct without low-contrast
   labels or color-only state. */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.modal-close-control,.sheet-back-control,.close-x,.fi-back,.view-backbar>button){
  min-inline-size:44px;
  min-block-size:44px;
  border:1px solid var(--yk-border-inner);
  border-radius:14px;
  background:var(--yk-paper);
  color:var(--yk-ink);
  display:inline-grid;
  place-items:center;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.modal-close-control,.close-x){
  font-size:22px;
  line-height:1;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sheet-back-control,.fi-back,.view-backbar>button){
  font-size:13px;
  font-weight:850;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.btn.soft,.btn.light,.sig-btn-ghost){
  background:var(--yk-paper);
  border:1px solid var(--yk-border-struct);
  color:var(--yk-ink);
  box-shadow:none;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.btn.danger,.danger-action){
  background:#FFF6F4;
  border:1px solid var(--yk-danger);
  color:var(--yk-danger);
}

/* Selection must be visible through shape + border + surface, not color only. */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.sig-day.active,.shopping-domains button.active,.shopping-scope-tabs button.active,.registry-alt-chip.current,.option.active,.option.selected,.choice-row.selected){
  background:#FFF8E8;
  border-color:var(--yk-border-select);
  box-shadow:0 0 0 1px var(--yk-border-select);
  color:var(--yk-ink);
}

/* Consumer text contract: muted information remains readable. Accent gold
   and sage stay accents/borders rather than low-contrast body text. */
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.muted,.subtle,.tiny-muted,small,em){
  text-decoration-thickness:from-font;
}
body.yekfi-v99.yekfi-signature.yekfi-v11 :is(.card,.stat,.insight,.summary-banner,.sig-week-card,.sig-shop-item,.member-card-v2,.memo-row,.stock-food-row,.stock-purchase-row,.sheet-panel,.composer-main,.composer-insight,.plan-recipe-card) :is(.muted,.subtle,.tiny-muted,small,em){
  color:var(--yk-ink-3);
  opacity:1;
}

/* Focus is a first-class state for keyboard/switch access. */
body.yekfi-v99.yekfi-signature.yekfi-v11 :where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid var(--yk-border-select);
  outline-offset:3px;
}

@media(max-width:360px){
  body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav{gap:2px;padding-inline:5px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav .nav-btn{min-width:0;padding-inline:2px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .bottom-nav .nav-btn span{font-size:12px;}
  body.yekfi-v99.yekfi-signature.yekfi-v11 .topbar-utility-row{max-width:145px;gap:5px;}
}

/* ===== AUTHORITY SOURCE 2: css-src/yekfi-experience-system-v2.css ===== */
/* YEKFI Experience System 2.0 — authoritative semantic layer */
:root{
  --y-forest-950:#173E31;--y-cardamom-800:#285342;--y-leaf-600:#477361;
  --y-mint-300:#CFE9DD;--y-mint-100:#EAF5EF;--y-ivory:#F8F5EC;--y-surface:#FFFEFA;--y-surface-2:#F4F7F3;
  --y-honey-500:#C58E32;--y-honey-ink:#7A5316;--y-honey-soft:#F0DFC0;--y-apricot:#E5B38B;
  --y-ink:#15221B;--y-graphite:#536159;--y-border:#B7C3BB;--y-border-soft:#DCE2DD;
  --y-danger:#9D2F2F;--y-warning:#8A5B12;--y-info:#285A78;
  --y-space-1:4px;--y-space-2:8px;--y-space-3:12px;--y-space-4:16px;--y-space-5:20px;--y-space-6:24px;--y-space-8:32px;--y-space-10:40px;--y-space-12:48px;--y-space-16:64px;
  --y-r-input:12px;--y-r-button:14px;--y-r-control:16px;--y-r-card:20px;--y-r-hero:26px;--y-r-pill:999px;
  --y-nav-h:74px;--y-safe-bottom:env(safe-area-inset-bottom,0px);--y-page-bottom:calc(var(--y-nav-h) + var(--y-safe-bottom) + 28px);
  --y-shadow-float:0 8px 24px rgba(23,62,49,.095);--y-motion:190ms;
  --y-content-max:1180px;
}
html{background:var(--y-ivory);color:var(--y-ink);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{background:var(--y-ivory)!important;color:var(--y-ink)!important;min-height:100dvh;font-family:"IBM Plex Sans Arabic","Alexandria",Tahoma,Arial,sans-serif!important;line-height:1.55;overflow-x:hidden}
main,.main,.app-main,.view{min-height:calc(100dvh - 64px);padding-bottom:var(--y-page-bottom)!important}
:is(.view,.sig-page,.page-content,.screen-content){max-width:var(--y-content-max);margin-inline:auto}
:is(h1,h2,h3,h4,strong,b){color:var(--y-ink)}
:is(p,small,em,.muted,.tiny-muted){color:var(--y-graphite)}
button,input,select,textarea{font:inherit}button{min-height:44px}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid rgba(71,115,97,.35);outline-offset:2px}

/* Top shell */
.app-header,.top-header,header.appbar{background:rgba(255,254,250,.96)!important;border-bottom:1px solid var(--y-border-soft)!important;backdrop-filter:saturate(120%) blur(12px);-webkit-backdrop-filter:saturate(120%) blur(12px)}
.header-budget,.budget-capsule,#headerBudget{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--y-forest-950)!important}
#headerSpend{color:var(--y-graphite)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:155px}
.round-icon{background:var(--y-surface)!important;border:1px solid var(--y-border)!important;color:var(--y-forest-950)!important}

/* Bottom navigation — exactly one state authority */
.bottom-nav,.bottom-navigation,.app-bottom-nav{position:fixed!important;z-index:1000!important;inset-inline:12px!important;bottom:calc(8px + var(--y-safe-bottom))!important;width:auto!important;min-height:var(--y-nav-h)!important;height:var(--y-nav-h)!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-template-rows:1fr!important;gap:2px!important;padding:6px!important;background:rgba(255,254,250,.97)!important;border:1px solid var(--y-border-soft)!important;border-radius:22px!important;box-shadow:var(--y-shadow-float)!important;overflow:visible!important}
.bottom-nav .nav-btn,.bottom-navigation .nav-btn,.app-bottom-nav .nav-btn{min-width:0!important;width:100%!important;min-height:60px!important;height:60px!important;margin:0!important;padding:5px 2px!important;border:0!important;border-radius:16px!important;background:transparent!important;color:var(--y-ink)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;transform:none!important;box-shadow:none!important;overflow:hidden}
.bottom-nav .nav-btn i,.bottom-navigation .nav-btn i{width:25px!important;height:25px!important;display:grid!important;place-items:center!important;color:var(--y-cardamom-800)!important}
.bottom-nav .nav-btn span,.bottom-navigation .nav-btn span{font-size:12px!important;line-height:1.15!important;font-weight:600!important;color:inherit!important;white-space:nowrap!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important}
.bottom-nav .nav-btn.active,.bottom-nav .nav-btn[aria-current="page"],.bottom-navigation .nav-btn.active{background:var(--y-mint-100)!important;color:var(--y-forest-950)!important;box-shadow:inset 0 0 0 1.5px var(--y-cardamom-800)!important}
.bottom-nav .planning-nav-btn:not(.active):not([aria-current="page"]){background:rgba(207,233,221,.48)!important;color:var(--y-cardamom-800)!important;box-shadow:none!important}
.bottom-nav .planning-nav-btn.active,.bottom-nav .planning-nav-btn[aria-current="page"]{background:var(--y-mint-300)!important;color:var(--y-forest-950)!important;box-shadow:inset 0 0 0 2px var(--y-cardamom-800)!important}

/* Shared surfaces */
.card,.panel,.sheet-section,.v11-card,.planning-context,.planning-approved,.planning-draft,.planning-preview-ready{background:var(--y-surface)!important;border:1px solid var(--y-border)!important;border-radius:var(--y-r-card)!important;box-shadow:none!important;color:var(--y-ink)!important}
:is(.card,.panel,.sheet-section) :is(p,small,em){color:var(--y-graphite)}
.selected,.is-selected,[aria-selected="true"]{--selected-bg:var(--y-mint-100)}
.option.selected,.chip.selected,.budget-policy-card.selected,.appearance-bg-card.selected{background:var(--y-mint-100)!important;border:2px solid var(--y-cardamom-800)!important;color:var(--y-forest-950)!important}

/* Buttons */
.btn,.sig-btn{border-radius:var(--y-r-button)!important;min-height:52px!important;font-weight:700!important;transition:transform var(--y-motion),background var(--y-motion),border-color var(--y-motion)!important}
.btn.primary,.sig-btn-primary{background:var(--y-forest-950)!important;color:#fff!important;border:1px solid var(--y-forest-950)!important}
.btn.light,.btn.secondary,.sig-btn-ghost{background:var(--y-surface)!important;color:var(--y-forest-950)!important;border:1.5px solid var(--y-cardamom-800)!important}
.btn.soft,.soft-action{background:var(--y-mint-100)!important;color:var(--y-forest-950)!important;border:1px solid var(--y-border)!important}
button:disabled,.btn:disabled{opacity:1!important;background:#ECEFEA!important;color:#66736B!important;border-color:#CBD2CD!important;cursor:not-allowed}

/* Planning — signature experience */
.planning-signature-page{padding-inline:clamp(16px,4.8vw,24px)!important;padding-top:20px!important;display:grid;gap:32px}
.planning-hero{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--y-mint-100),var(--y-surface))!important;border:1px solid var(--y-border)!important;border-radius:var(--y-r-hero)!important;color:var(--y-ink)!important;padding:clamp(24px,6vw,40px)!important;min-height:0!important;box-shadow:none!important}
.planning-hero-copy{position:relative;z-index:2;max-width:680px;text-align:start!important}
.planning-kicker{display:inline-block;color:var(--y-cardamom-800)!important;font-weight:700;font-size:13px;margin-bottom:8px}
.planning-hero h1{font-size:clamp(30px,8vw,40px)!important;line-height:1.18!important;margin:0 0 12px!important;color:var(--y-forest-950)!important;text-align:start!important}
.planning-hero h1 em{font-style:normal;color:var(--y-cardamom-800)!important}
.planning-hero p{font-size:16px!important;color:var(--y-graphite)!important;max-width:56ch;text-align:start!important;margin:0}
.planning-proof{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-top:18px!important}.planning-proof span{background:var(--y-surface)!important;color:var(--y-forest-950)!important;border:1px solid var(--y-border-soft)!important;border-radius:var(--y-r-pill)!important;padding:7px 10px!important;font-size:12px!important;font-weight:700!important}
.planning-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.planning-section-heading h2{font-size:21px!important;margin:2px 0 0!important}.planning-section-heading small{color:var(--y-leaf-600)!important;font-weight:700}.planning-section-heading em{color:var(--y-graphite)!important;font-style:normal;font-size:13px}
.planning-context-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}.planning-context-grid>span{background:var(--y-surface)!important;border:1px solid var(--y-border-soft)!important;border-radius:16px!important;padding:14px!important;min-width:0}.planning-context-grid>span.mint{background:var(--y-mint-100)!important;border-color:var(--y-border)!important}.planning-context-grid small{display:block;color:var(--y-graphite)!important}.planning-context-grid b{display:block;color:var(--y-ink)!important;overflow-wrap:anywhere}
.planning-way-stack{display:grid!important;gap:14px!important}.planning-way{width:100%!important;min-height:0!important;padding:20px!important;display:grid!important;grid-template-columns:52px minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important;text-align:start!important;background:var(--y-surface)!important;border:1px solid var(--y-border-soft)!important;border-radius:var(--y-r-card)!important;color:var(--y-ink)!important;box-shadow:none!important}.planning-way:hover,.planning-way:focus-visible{background:var(--y-mint-100)!important;border-color:var(--y-cardamom-800)!important}.planning-way-icon{width:48px;height:48px;border-radius:16px;background:var(--y-mint-100);color:var(--y-forest-950);display:grid;place-items:center}.planning-way-copy{min-width:0}.planning-way-copy>small{display:block;color:var(--y-leaf-600)!important;font-weight:700}.planning-way-copy>b{display:block;font-size:18px!important;color:var(--y-ink)!important;margin:2px 0 3px}.planning-way-copy>em{display:block;color:var(--y-graphite)!important;font-style:normal;line-height:1.55}.planning-way-copy>u{display:flex;gap:6px;flex-wrap:wrap;text-decoration:none;margin-top:9px}.planning-way-copy>u i{font-style:normal;background:var(--y-mint-100);color:var(--y-cardamom-800);padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700}.planning-way>strong{color:var(--y-forest-950)!important;white-space:nowrap}
.planning-way-assist{border-color:#9DCBB4!important}.planning-way-assist .planning-way-icon{background:var(--y-mint-300)!important}.planning-way-auto,.planning-way-manual{background:var(--y-surface)!important}
.planning-engine-trust{display:grid!important;grid-template-columns:44px 1fr!important;gap:14px!important;align-items:start!important;background:var(--y-mint-100)!important;border:1px solid var(--y-border-soft)!important;border-radius:20px!important;padding:18px!important;color:var(--y-ink)!important}.planning-engine-trust :is(b,p,small){color:inherit!important}.planning-engine-trust p{color:var(--y-graphite)!important}.mint-badge{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:var(--y-mint-300);color:var(--y-forest-950)}
.planning-preview-ready{display:grid!important;grid-template-columns:48px minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;padding:18px!important;background:var(--y-mint-100)!important;border:2px solid var(--y-cardamom-800)!important}.planning-preview-ready button{background:var(--y-forest-950);color:#fff;border:0;border-radius:14px;padding:10px 14px}.planning-approved{padding:18px!important}.planning-approved h2{font-size:18px!important;margin:2px 0 4px!important}.planning-approved-actions{display:flex;gap:8px;flex-wrap:wrap}.planning-approved-actions button{background:var(--y-surface);color:var(--y-forest-950);border:1px solid var(--y-cardamom-800);border-radius:12px;padding:8px 12px}
.plan-preview-hero{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:start;background:var(--y-mint-100);border:1px solid var(--y-border-soft);padding:18px;border-radius:20px}.plan-preview-hero>span{width:44px;height:44px;border-radius:14px;background:var(--y-mint-300);display:grid;place-items:center;color:var(--y-forest-950)}.plan-preview-hero h2{margin:2px 0 6px;font-size:22px}.plan-preview-hero p{margin:0}.plan-preview-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.plan-preview-metrics>span{background:var(--y-surface);border:1px solid var(--y-border-soft);border-radius:16px;padding:14px}.plan-preview-metrics small{display:block;color:var(--y-graphite)}.plan-preview-metrics b{display:block;font-size:20px;font-variant-numeric:tabular-nums}.plan-preview-why{padding:16px;border-radius:16px;background:#F4F7F3;border:1px solid var(--y-border-soft)}.plan-preview-actions{display:grid;gap:8px;margin-top:14px}

/* Hero text over photography: enforced scrim */
:is(.grocery-hero,.week-hero,.v11-hero,.hero-photo){position:relative;isolation:isolate}.grocery-hero:before,.week-hero:before,.v11-hero:before,.hero-photo:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(23,62,49,.88),rgba(23,62,49,.48))}.grocery-hero :is(h1,h2,h3,b,p,small,span),.week-hero :is(h1,h2,h3,b,p,small,span),.v11-hero :is(h1,h2,h3,b,p,small,span){color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.22)}
:is(.hero-chip,.v11-chip,.grocery-hero .chip,.week-hero .chip){background:rgba(23,62,49,.86)!important;color:#fff!important;border:1px solid rgba(255,255,255,.28)!important}

/* Grocery compact contract */
:is(.monthly-item,.grocery-card,.procurement-row,.shopping-item){min-width:0!important}.grocery-card,.monthly-item{background:var(--y-surface)!important;color:var(--y-ink)!important;border:1px solid var(--y-border)!important;border-radius:18px!important}.grocery-card :is(h3,b,.title),.monthly-item :is(h3,b,.title){color:var(--y-ink)!important;overflow-wrap:normal!important;word-break:normal!important}.grocery-card :is(p,small,em),.monthly-item :is(p,small,em){color:var(--y-graphite)!important}.purchase-total,.money,.price{font-variant-numeric:tabular-nums}

/* Household surfaces */
:is(.household-card,.home-card,.stock-card){background:var(--y-surface)!important;color:var(--y-ink)!important;border:1px solid var(--y-border)!important;border-radius:20px!important;box-shadow:none!important}.household-card :is(h3,b),.home-card :is(h3,b){color:var(--y-ink)!important}.household-card :is(p,small,em),.home-card :is(p,small,em){color:var(--y-graphite)!important}

/* Sheets / errors / empties */
.sheet,.bottom-sheet,.modal-sheet{max-height:calc(100dvh - max(16px,env(safe-area-inset-top,0px)))!important;background:var(--y-surface)!important;color:var(--y-ink)!important}.sheet-header,.bottom-sheet-header{position:sticky;top:0;z-index:3;background:var(--y-surface)!important;border-bottom:1px solid var(--y-border-soft)!important}.sheet-content,.bottom-sheet-body{overflow:auto!important;overscroll-behavior:contain;padding-bottom:calc(24px + var(--y-safe-bottom))!important}.empty-state-page,.empty-mini{background:transparent!important;color:var(--y-ink)!important;text-align:start!important}.note{color:var(--y-ink)!important;border-radius:14px}.danger-note{background:#FFF0EE!important;color:#6F211F!important;border:1px solid #D89A95!important}
.toast{bottom:calc(var(--y-nav-h) + var(--y-safe-bottom) + 20px)!important;background:var(--y-forest-950)!important;color:#fff!important;border-radius:14px!important}

@media(max-width:599px){
  :root{--y-nav-h:70px;--y-page-bottom:calc(var(--y-nav-h) + var(--y-safe-bottom) + 32px)}
  .planning-signature-page{padding-inline:16px!important;gap:24px}.planning-hero{padding:22px 18px!important;border-radius:24px!important}.planning-hero h1{font-size:30px!important}.planning-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.planning-way{grid-template-columns:44px minmax(0,1fr)!important;padding:16px!important;gap:12px!important}.planning-way>strong{grid-column:2;font-size:13px!important}.planning-way-icon{width:42px;height:42px}.planning-preview-ready{grid-template-columns:44px 1fr!important}.planning-preview-ready button{grid-column:1/-1;width:100%}.planning-section-heading{align-items:flex-start;flex-direction:column;gap:4px}.planning-section-heading em{font-size:12px}
  .plan-preview-metrics{grid-template-columns:1fr 1fr}.plan-preview-metrics b{font-size:18px}
  .bottom-nav,.bottom-navigation,.app-bottom-nav{inset-inline:8px!important;border-radius:20px!important}.bottom-nav .nav-btn span{font-size:11px!important}.bottom-nav .nav-btn i{width:23px!important;height:23px!important}
  .monthly-item,.grocery-card{grid-template-columns:minmax(0,1fr) auto!important}.monthly-item img,.grocery-card .thumb{max-width:52px;max-height:52px;object-fit:cover}
}
@media(min-width:600px) and (max-width:1023px){.planning-way-stack{grid-template-columns:1fr 1fr}.planning-way:first-child{grid-column:1/-1}.planning-context-grid{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1024px){.planning-way-stack{grid-template-columns:repeat(3,1fr)}.planning-way{grid-template-columns:52px 1fr!important;align-content:start}.planning-way>strong{grid-column:2}.bottom-nav,.bottom-navigation,.app-bottom-nav{max-width:620px!important;margin-inline:auto!important;inset-inline:0!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* ================================================================
   YEKFI v11.17.4 — Operational Hardening & Household Recovery
   Root-cause closure for Safari navigation geometry, header budget,
   card legibility/elevation, hero density and planning family entry.
   ================================================================ */
:root{
  --y-page-bottom:calc(var(--app-bottom-nav-h,var(--y-nav-h)) + var(--y-safe-bottom) + 48px);
  --y-shadow-card-subtle:0 3px 10px rgba(23,62,49,.050);
  --y-shadow-card-raised:0 5px 14px rgba(23,62,49,.075);
}

/* Header budget capsule owns its geometry. No inherited legacy grid may hide or overlap copy. */
.topbar-primary-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;min-width:0!important}
.topbar-primary-row>.brand{flex:1 1 auto!important;min-width:0!important}
.topbar-utility-row{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;flex:0 0 auto!important;min-width:0!important}
.header-budget-chip{
  width:clamp(112px,31vw,132px)!important;min-width:112px!important;max-width:132px!important;
  height:52px!important;min-height:52px!important;padding:6px 8px!important;
  display:grid!important;grid-template-rows:auto auto!important;align-content:center!important;justify-items:stretch!important;gap:3px!important;
  background:var(--y-surface)!important;border:1px solid var(--y-border-soft)!important;border-radius:14px!important;
  box-shadow:0 2px 7px rgba(23,62,49,.035)!important;color:var(--y-ink)!important;overflow:hidden!important;
}
.header-budget-copy{display:flex!important;align-items:baseline!important;justify-content:center!important;gap:5px!important;width:100%!important;min-width:0!important}
.header-budget-copy small{display:inline!important;font-size:10.5px!important;line-height:1!important;font-weight:800!important;color:var(--y-graphite)!important;white-space:nowrap!important}
.header-budget-copy b,#headerBudget{font-size:13px!important;line-height:1!important;font-weight:900!important;color:var(--y-forest-950)!important;white-space:nowrap!important;font-variant-numeric:tabular-nums!important}
.header-budget-chip>#headerSpend,#headerSpend{display:block!important;grid-row:2!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:0!important;border:0!important;text-align:center!important;font-size:9.5px!important;line-height:1.15!important;font-weight:700!important;color:var(--y-graphite)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

/* Bottom navigation: legacy left:50% + translateX(-50%) was still surviving beneath logical insets on iPhone Safari. */
.bottom-nav,.bottom-navigation,.app-bottom-nav{
  inset-inline:auto!important;
  left:max(10px,env(safe-area-inset-left,0px))!important;
  right:max(10px,env(safe-area-inset-right,0px))!important;
  bottom:calc(10px + var(--y-safe-bottom))!important;
  width:auto!important;max-width:none!important;height:72px!important;min-height:72px!important;
  margin:0!important;transform:none!important;box-sizing:border-box!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:3px!important;padding:6px!important;
  direction:rtl!important;overflow:visible!important;
  border:1px solid var(--y-border-soft)!important;background:rgba(255,254,250,.985)!important;
  box-shadow:0 8px 22px rgba(23,62,49,.095)!important;
}
.bottom-nav .nav-btn,.bottom-navigation .nav-btn,.app-bottom-nav .nav-btn{
  min-width:0!important;width:100%!important;height:58px!important;min-height:58px!important;padding:5px 2px!important;
  background:transparent!important;color:var(--y-forest-950)!important;border:0!important;border-radius:15px!important;
  transform:none!important;box-shadow:none!important;opacity:1!important;
}
.bottom-nav .nav-btn i,.bottom-navigation .nav-btn i,.app-bottom-nav .nav-btn i,
.bottom-nav .nav-btn .ui-svg,.bottom-navigation .nav-btn .ui-svg,.app-bottom-nav .nav-btn .ui-svg{
  width:24px!important;height:24px!important;color:var(--y-forest-950)!important;opacity:1!important;stroke:currentColor!important;
}
.bottom-nav .nav-btn span,.bottom-navigation .nav-btn span,.app-bottom-nav .nav-btn span{font-size:11px!important;line-height:1.15!important;font-weight:800!important;color:inherit!important;opacity:1!important}
.bottom-nav .planning-nav-btn:not(.active):not([aria-current="page"]){background:transparent!important;color:var(--y-forest-950)!important;border-color:transparent!important;transform:none!important;box-shadow:none!important}
.bottom-nav .planning-nav-btn:not(.active):not([aria-current="page"]) i{background:transparent!important;color:var(--y-forest-950)!important}
.bottom-nav .nav-btn.active,.bottom-nav .nav-btn[aria-current="page"],.bottom-navigation .nav-btn.active,.app-bottom-nav .nav-btn.active{
  background:var(--y-mint-100)!important;color:var(--y-forest-950)!important;border:0!important;box-shadow:inset 0 0 0 1.5px var(--y-cardamom-800)!important;transform:none!important;
}
.bottom-nav .planning-nav-btn.active,.bottom-nav .planning-nav-btn[aria-current="page"]{background:var(--y-mint-100)!important;color:var(--y-forest-950)!important;box-shadow:inset 0 0 0 1.5px var(--y-cardamom-800)!important;transform:none!important}

/* Ensure hero shade can never intercept taps; keep interactive hero copy above media overlays. */
.sig-hero-shade,.stock-hero-shade{pointer-events:none!important}
.sig-hero-copy{position:relative!important;z-index:3!important;pointer-events:auto!important}
.sig-hero-actions{position:relative!important;z-index:4!important;pointer-events:auto!important}
.sig-hero-actions button{pointer-events:auto!important}

/* Lighter olive treatment at page heads while preserving white-text contrast on the copy side. */
:is(.grocery-hero,.week-hero,.sig-week-hero,.sig-next-hero,.sig-shopping-hero,.sig-family-hero,.stock-hero,.v11-hero) :is(.hero-shade,.sig-hero-shade,.stock-hero-shade),
:is(.sig-week-hero,.sig-next-hero,.sig-shopping-hero,.sig-family-hero)>.sig-hero-shade{
  background:linear-gradient(to left,rgba(23,62,49,.69) 0%,rgba(32,76,57,.41) 48%,rgba(23,62,49,.12) 100%)!important;
}

/* Surface/card hierarchy: stronger separation and fully legible operational copy. */
:is(.card,.panel,.sheet-section,.v11-card,.sig-section,.sig-panel,.sig-context-bar,.sig-meal-row,.sig-week-card,.v11-plan-decision,.v11-week-pulse,.v11-week-health-note,.planning-context,.planning-approved,.planning-draft,.planning-preview-ready,.planning-engine-trust,.household-card,.home-card,.stock-card,.summary-banner:not(.risk),.delight-day-glance){
  color:var(--y-ink)!important;border-color:var(--y-border)!important;
}
/* v11.17.6 visual hierarchy: structure is defined by space first; borders/elevation are secondary. */
:is(.v11-plan-decision,.planning-context,.planning-approved,.planning-draft,.planning-preview-ready,.planning-engine-trust){
  background:var(--y-surface)!important;border:1px solid var(--y-border)!important;box-shadow:none!important;
}
:is(.sig-meal-row,.sig-week-card,.v11-week-pulse,.v11-week-health-note,.household-card,.home-card,.stock-card){
  background:var(--y-surface)!important;border:1px solid var(--y-border-soft)!important;box-shadow:var(--y-shadow-card-subtle)!important;
}
:is(.summary-banner:not(.risk),.delight-day-glance){
  background:var(--y-surface-2)!important;border:1px solid var(--y-border-soft)!important;box-shadow:none!important;
}
.sig-meal-row{box-shadow:var(--y-shadow-card-raised)!important;margin-inline:3px!important}
.sig-week-card{margin-inline:3px!important}
.sig-meal-main b,.sig-week-copy .name,.v11-plan-decision h2,.v11-week-pulse-copy b,.v11-week-health-note b,.planning-context b,.planning-approved b,.planning-draft b,.planning-preview-ready b,
:is(.household-card,.home-card,.stock-card,.summary-banner:not(.risk),.delight-day-glance) :is(h2,h3,b,strong){color:var(--y-ink)!important;opacity:1!important}
.sig-meal-main small,.sig-week-copy .type,.v11-week-pulse-copy small,.v11-week-health-note small,.planning-context small,.planning-approved small,.planning-draft small,.planning-preview-ready small{color:var(--y-cardamom-800)!important;opacity:1!important;font-weight:750!important}
.sig-meal-main em,.sig-week-copy .meta span,.v11-week-pulse-copy em,.planning-approved p,.planning-draft em,.planning-preview-ready em,
:is(.household-card,.home-card,.stock-card,.summary-banner:not(.risk),.delight-day-glance) :is(p,small,em){color:var(--y-graphite)!important;opacity:1!important}

/* Planning starts with household identity, not hidden setup. */
.planning-family-first{
  display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important;
  padding:18px!important;background:var(--y-surface)!important;border:1px solid var(--y-border)!important;border-radius:var(--y-r-card)!important;
  box-shadow:none!important;color:var(--y-ink)!important;
}
.planning-family-first.needs-setup{border-color:var(--y-cardamom-800)!important;background:linear-gradient(145deg,var(--y-mint-100),var(--y-surface))!important}
.planning-family-number{min-width:72px;min-height:72px;border-radius:18px;background:var(--y-mint-100);border:1px solid var(--y-border-soft);display:grid;place-items:center;align-content:center;line-height:1.05}
.planning-family-number small{font-size:10px!important;color:var(--y-cardamom-800)!important;font-weight:800!important}.planning-family-number strong{font-size:25px;color:var(--y-forest-950)!important}.planning-family-number em{font-size:10px!important;color:var(--y-graphite)!important;font-style:normal}
.planning-family-copy{min-width:0}.planning-family-copy h2{margin:0 0 4px!important;font-size:18px!important;line-height:1.35!important;color:var(--y-ink)!important}.planning-family-copy p{margin:0!important;font-size:12px!important;line-height:1.55!important;color:var(--y-graphite)!important}
.planning-family-people{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.planning-family-people>span{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:4px 8px;border-radius:999px;background:var(--y-mint-100);border:1px solid var(--y-border-soft);color:var(--y-forest-950);font-size:11px;font-weight:800}.planning-family-people>span small{font-size:9.5px!important;color:var(--y-graphite)!important}.planning-family-people>span.more{background:var(--y-honey-soft);color:var(--y-honey-ink)}
.planning-family-actions{display:flex;flex-direction:column;gap:7px;min-width:132px}.planning-family-actions .btn{min-height:44px!important;padding-inline:10px!important;font-size:11px!important}

/* Very small horizontal inset for full-width cards so borders never collide with the page frame. */
@media(max-width:599px){
  :root{--y-page-bottom:calc(var(--app-bottom-nav-h,var(--y-nav-h)) + var(--y-safe-bottom) + 54px)}
  .topbar-primary-row>.brand{max-width:148px!important}
  .header-budget-chip{width:clamp(108px,31vw,124px)!important;min-width:108px!important;max-width:124px!important;padding-inline:6px!important}
  .header-budget-copy small{font-size:9.8px!important}.header-budget-copy b,#headerBudget{font-size:12.5px!important}#headerSpend{font-size:9px!important}
  .bottom-nav,.bottom-navigation,.app-bottom-nav{left:max(8px,env(safe-area-inset-left,0px))!important;right:max(8px,env(safe-area-inset-right,0px))!important;bottom:calc(9px + var(--y-safe-bottom))!important;height:72px!important;min-height:72px!important}
  .bottom-nav .nav-btn,.bottom-navigation .nav-btn,.app-bottom-nav .nav-btn{height:58px!important;min-height:58px!important}.bottom-nav .nav-btn span{font-size:10.5px!important}
  .sig-page:not(.planning-signature-page)>:is(.sig-context-bar,.sig-hero,.sig-section,.v11-plan-decision,.v11-week-pulse,.v11-week-health-note,.v11-command-surface,.delight-secondary-insights){margin-inline:5px!important;width:auto!important;max-width:calc(100% - 10px)!important;box-sizing:border-box!important}
  .planning-signature-page{padding-inline:18px!important}
  .planning-family-first{grid-template-columns:60px minmax(0,1fr)!important;gap:12px!important;padding:15px!important}.planning-family-number{min-width:60px;min-height:66px}.planning-family-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.planning-family-first.needs-setup .planning-family-actions{grid-template-columns:1fr}.planning-family-actions .btn{width:100%!important}
}
@media(min-width:1024px){
  .bottom-nav,.bottom-navigation,.app-bottom-nav{left:50%!important;right:auto!important;width:min(620px,calc(100vw - 32px))!important;max-width:620px!important;transform:translateX(-50%)!important;margin:0!important}
}

/* v11.17.4 — Household member identity + validation hardening */
body.yekfi-signature .member-default-avatar{
  inline-size:100%;block-size:100%;display:grid;place-items:center;border-radius:inherit;overflow:hidden;
}
body.yekfi-signature .member-default-avatar svg{inline-size:100%;block-size:100%;display:block}
body.yekfi-signature .member-default-avatar .avatar-bg{fill:#E7F1EB}
body.yekfi-signature .member-default-avatar .avatar-face{fill:#F0C7A4}
body.yekfi-signature .member-default-avatar .avatar-body{fill:#477361}
body.yekfi-signature .member-default-avatar .avatar-hair{fill:#315244}
body.yekfi-signature .member-default-avatar.female .avatar-bg{fill:#F3EAE1}
body.yekfi-signature .member-default-avatar.female .avatar-body{fill:#B77C65}
body.yekfi-signature .member-default-avatar.female .avatar-hair{fill:#4F3C34}
body.yekfi-signature .field-error{border-color:#A83A31!important;box-shadow:0 0 0 3px rgba(168,58,49,.12)!important}
body.yekfi-signature .member-photo-preview{background:#FFFEFA;color:#15221B}

/* v11.17.4 — Onboarding household recovery: Safari scroll + all-member identity */
body.yekfi-v99.yekfi-signature.yekfi-v11 #onContent,
body.yekfi-signature #onContent{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-y:contain;
  touch-action:pan-y;
  scroll-padding-block:20px 128px;
}
body.yekfi-signature .rc25-profile-box,
body.yekfi-signature .setup-profile-box{
  overflow:visible!important;
  max-height:none!important;
}
body.yekfi-signature .setup-profile-group{gap:10px!important}
body.yekfi-signature .rc25-profile-row{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
  min-height:0!important;
  padding:14px!important;
  border:1px solid var(--y-soft-border,#DCE2DD)!important;
  border-radius:18px!important;
  background:var(--y-surface,#FFFEFA)!important;
  box-shadow:0 5px 18px rgba(23,62,49,.055)!important;
}
body.yekfi-signature .rc25-profile-row.complete{border-color:var(--y-border,#B7C3BB)!important}
body.yekfi-signature .rc25-profile-row.field-error-card{border-color:#A83A31!important;box-shadow:0 0 0 3px rgba(168,58,49,.10)!important}
body.yekfi-signature .setup-profile-avatar-wrap{display:grid;justify-items:center;align-content:start;gap:6px;min-width:0}
body.yekfi-signature .setup-profile-avatar{
  inline-size:64px;block-size:64px;border-radius:18px;overflow:hidden;
  border:1px solid var(--y-border,#B7C3BB);background:var(--y-mint-100,#EAF5EF);
  box-shadow:0 2px 9px rgba(23,62,49,.08);
}
body.yekfi-signature .setup-profile-avatar>img{width:100%;height:100%;display:block;object-fit:cover}
body.yekfi-signature .setup-profile-photo{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:4px 8px;border-radius:999px;border:1px solid var(--y-border,#B7C3BB);background:#fff;color:var(--y-cardamom-800,#285342);font-size:10px;font-weight:850;cursor:pointer}
body.yekfi-signature .setup-profile-photo input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
body.yekfi-signature .setup-profile-photo-remove{border:0;background:transparent;color:#A83A31;font-size:9.5px;font-weight:800;min-height:28px;padding:2px 4px}
body.yekfi-signature .setup-profile-fields{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(92px,.8fr) minmax(82px,.65fr);gap:8px;min-width:0}
body.yekfi-signature .setup-profile-fields>label{display:grid;gap:5px;min-width:0}
body.yekfi-signature .setup-profile-fields>label>span{font-size:10.5px;line-height:1.3;font-weight:850;color:var(--y-graphite,#536159)}
body.yekfi-signature .setup-profile-fields .input{width:100%;min-width:0;min-height:46px!important;color:var(--y-ink,#15221B)!important;background:#fff!important;border:1px solid var(--y-border,#B7C3BB)!important}
body.yekfi-signature .member-default-avatar.neutral .avatar-bg{fill:#EDF0EA}
body.yekfi-signature .member-default-avatar.neutral .avatar-body{fill:#718277}
body.yekfi-signature .member-default-avatar.neutral .avatar-hair{fill:#536159}
@media(max-width:560px){
  body.yekfi-signature .rc25-profile-row{grid-template-columns:58px minmax(0,1fr)!important;padding:12px 10px!important;gap:10px!important}
  body.yekfi-signature .setup-profile-avatar{inline-size:54px;block-size:54px;border-radius:16px}
  body.yekfi-signature .setup-profile-fields{grid-template-columns:minmax(0,1fr) minmax(78px,.72fr)!important}
  body.yekfi-signature .setup-profile-fields>label:first-child{grid-column:1/-1}
  body.yekfi-signature .setup-profile-photo{font-size:9.5px;padding-inline:6px}
  body.yekfi-signature .on-actions.ux-on-actions{position:sticky!important;bottom:0!important;z-index:5!important;padding-block:12px calc(10px + env(safe-area-inset-bottom))!important;background:linear-gradient(180deg,rgba(248,245,236,0),rgba(248,245,236,.94) 24%,#F8F5EC 58%)!important}
}

/* v11.17.4 — Week explanation resilience */
body.yekfi-signature .sig-week-hero.sig-week-hero-fallback .sig-hero-media{background:linear-gradient(145deg,#315D4D,#173E31)!important}
body.yekfi-signature .week-hero-fallback-mark{position:absolute;inset:0;display:grid;place-content:center;gap:6px;text-align:center;color:#fff;opacity:.92}
body.yekfi-signature .week-hero-fallback-mark b{font-size:clamp(28px,9vw,44px);letter-spacing:.08em;line-height:1}
body.yekfi-signature .week-hero-fallback-mark span{font-size:12px;font-weight:800}
body.yekfi-signature .recipe-meta-missing .sig-meal-thumb{background:#EAF5EF}


/* ================================================================
   YEKFI v11.17.6 — Visual Quieting & Card Hierarchy
   Same Experience System authority; no new CSS layer.
   ================================================================ */
body.yekfi-signature :is(.sig-section,.sig-panel,.sig-context-bar){
  border-color:var(--y-border-soft)!important;
  box-shadow:none!important;
}
body.yekfi-signature :is(.sig-section,.sig-panel)+:is(.sig-section,.sig-panel){margin-top:var(--y-space-3)!important}
body.yekfi-signature :is(.sig-week-card,.sig-meal-row,.household-card,.home-card,.stock-card):hover{
  border-color:var(--y-border)!important;
}
body.yekfi-signature :is(.sig-week-card,.sig-meal-row,.household-card,.home-card,.stock-card):focus-within{
  border-color:var(--y-cardamom-800)!important;
}
body.yekfi-signature :is(.planning-way,.planning-context-grid>span,.planning-proof span){box-shadow:none!important}
@media(max-width:599px){
  body.yekfi-signature .planning-signature-page{gap:28px!important}
  body.yekfi-signature :is(.sig-section,.sig-panel)+:is(.sig-section,.sig-panel){margin-top:16px!important}
}

/* ================================================================
   YEKFI v11.17.7 — Typography & Content Precision
   Platform-native Arabic typography authority. No external font dependency.
   ================================================================ */
:root{
  --y-font-ui:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,Arial,sans-serif;
  --y-type-micro:12px;
  --y-type-meta:13px;
  --y-type-body:15px;
  --y-type-card-title:18px;
  --y-type-section-title:22px;
  --y-line-compact:1.3;
  --y-line-body:1.6;
}
html,body{font-family:var(--y-font-ui)!important}
body{font-size:var(--y-type-body)!important;line-height:var(--y-line-body)!important}
body.yekfi-signature :is(h1,h2,h3,h4){text-wrap:balance;overflow-wrap:anywhere}
body.yekfi-signature :is(p,small,em,.muted,.tiny-muted){overflow-wrap:anywhere}
body.yekfi-signature :is(.btn,.sig-btn,button){line-height:1.35;overflow-wrap:anywhere}
body.yekfi-signature :is(.sig-meal-main b,.sig-week-copy .name,.sig-shop-main b,.sig-member-copy b,.stock-food-copy b){overflow-wrap:anywhere;word-break:normal}

/* Operational text floor: these are active Experience System surfaces, not legacy demo screens. */
body.yekfi-signature :is(.sig-page,.sheet,.modal,.onboarding,.planning-signature-page) :is(small,.tiny-muted){font-size:var(--y-type-micro)!important;line-height:1.45!important}
body.yekfi-signature :is(.sig-meal-main small,.sig-week-copy .type,.sig-shop-main small,.sig-shop-main em,.sig-shop-qty small,.sig-metric small,.sig-member-copy small,.sig-member-copy em,.stock-food-copy small,.generation-notice small,.trust-row span,.trust-row b,.trust-disclaimer small,.support-diagnostic small,.app-trust-footer-copy small,.app-trust-footer a,.app-trust-footer button){font-size:var(--y-type-micro)!important;line-height:1.45!important}
body.yekfi-signature :is(.sig-meal-main em,.sig-week-copy .meta span){font-size:var(--y-type-micro)!important;line-height:1.45!important}
body.yekfi-signature .sig-day :is(b,small){font-size:var(--y-type-micro)!important;line-height:1.25!important}
body.yekfi-signature #stepLabel{font-size:var(--y-type-micro)!important;line-height:1.25!important}

/* Navigation and budget must remain compact but never micro-sized. */
.bottom-nav .nav-btn span,.bottom-navigation .nav-btn span,.app-bottom-nav .nav-btn span{font-size:12px!important;line-height:1.2!important}
.header-budget-copy small{font-size:12px!important;line-height:1.2!important}
.header-budget-copy b,#headerBudget{font-size:13.5px!important;line-height:1.1!important;font-variant-numeric:tabular-nums!important}
.header-budget-chip>#headerSpend,#headerSpend{font-size:12px!important;line-height:1.2!important;font-variant-numeric:tabular-nums!important}

/* Household identity and setup must be readable at a glance. */
.planning-family-number :is(small,em){font-size:12px!important;line-height:1.2!important}
.planning-family-people>span{font-size:12px!important;line-height:1.25!important}
.planning-family-people>span small{font-size:12px!important;line-height:1.25!important}
.planning-family-actions .btn{font-size:12.5px!important;line-height:1.3!important}
body.yekfi-signature .setup-profile-photo,
body.yekfi-signature .setup-profile-photo-remove,
body.yekfi-signature .setup-profile-fields>label>span{font-size:12px!important;line-height:1.35!important}

/* Numeric trust: money and metrics should align rather than visually jump. */
body.yekfi-signature :is(.sig-metric b,.sig-shop-qty b,.budget-number b,.header-budget-copy b,#headerBudget,#headerSpend,.planning-family-number strong){font-variant-numeric:tabular-nums!important}

/* Long Arabic labels/user names may grow; operational controls must not clip them. */
body.yekfi-signature :is(.btn,.sig-btn,.planning-family-actions .btn,.planning-approved-actions button){white-space:normal!important;min-width:0!important}
body.yekfi-signature :is(.sig-meal-main,.sig-week-copy,.sig-shop-main,.sig-member-copy,.stock-food-copy,.planning-family-copy){min-width:0!important}

/* iPhone Safari: 16px form controls prevent focus zoom and preserve context. */
@media(max-width:599px){
  body.yekfi-signature :is(input,select,textarea){font-size:16px!important;line-height:1.35!important}
  .header-budget-copy small{font-size:12px!important}
  .header-budget-copy b,#headerBudget{font-size:13px!important}
  .header-budget-chip>#headerSpend,#headerSpend{font-size:12px!important}
  .bottom-nav .nav-btn span,.bottom-navigation .nav-btn span,.app-bottom-nav .nav-btn span{font-size:12px!important}
}

/* ================================================================
   YEKFI v11.17.8 — Screen-by-Screen UX Simplification
   Execution-first hierarchy; same Experience System authority.
   ================================================================ */
body.yekfi-signature .planning-context-grid.planning-context-essentials{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
body.yekfi-signature .planning-hero .planning-hero-copy p{max-width:52ch!important}

body.yekfi-signature .ux-secondary-disclosure{
  background:var(--y-surface)!important;
  border:1px solid var(--y-border-soft)!important;
  border-radius:var(--y-r-card)!important;
  box-shadow:none!important;
  color:var(--y-ink)!important;
  overflow:hidden!important;
}
body.yekfi-signature .ux-secondary-disclosure>summary{
  list-style:none!important;
  min-height:50px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:14px 16px!important;
  cursor:pointer!important;
  color:var(--y-forest-950)!important;
  font-weight:850!important;
  font-size:13px!important;
}
body.yekfi-signature .ux-secondary-disclosure>summary::-webkit-details-marker{display:none!important}
body.yekfi-signature .ux-secondary-disclosure>summary::after{
  content:"＋";
  flex:0 0 auto;
  width:28px;height:28px;
  display:grid;place-items:center;
  border-radius:10px;
  background:var(--y-mint-100);
  color:var(--y-forest-950);
  font-size:16px;
  font-weight:700;
}
body.yekfi-signature .ux-secondary-disclosure[open]>summary::after{content:"−"}
body.yekfi-signature .ux-secondary-disclosure[open]>summary{border-bottom:1px solid var(--y-border-soft)!important}
body.yekfi-signature .ux-secondary-disclosure-body,
body.yekfi-signature .ux-secondary-stack{
  padding:14px 16px 16px!important;
}
body.yekfi-signature .planning-trust-details .ux-secondary-disclosure-body{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
}
body.yekfi-signature .planning-trust-details p{margin:0!important;color:var(--y-graphite)!important}
body.yekfi-signature .planning-trust-details p b{color:var(--y-ink)!important}

body.yekfi-signature .ux-secondary-stack{display:grid!important;gap:12px!important}
body.yekfi-signature .ux-secondary-stack>.v11-week-pulse{
  margin:0!important;width:100%!important;max-width:none!important;
}

body.yekfi-signature .ux-week-trust-strip{
  width:auto!important;
  margin-inline:5px!important;
  min-height:58px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  text-align:start!important;
  padding:12px 14px!important;
  border:1px solid var(--y-border-soft)!important;
  border-radius:16px!important;
  background:var(--y-surface-2)!important;
  color:var(--y-ink)!important;
  box-shadow:none!important;
}
body.yekfi-signature .ux-week-trust-strip span{min-width:0!important}
body.yekfi-signature .ux-week-trust-strip small{display:block!important;color:var(--y-graphite)!important}
body.yekfi-signature .ux-week-trust-strip b{display:block!important;color:var(--y-ink)!important}
body.yekfi-signature .ux-week-trust-strip strong{flex:0 0 auto;color:var(--y-cardamom-800)!important;font-size:12px!important}
body.yekfi-signature .ux-day-glance-compact{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

body.yekfi-signature .ux-shopping-stats-compact{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
body.yekfi-signature .shopping-finance-details{margin-top:12px!important}
body.yekfi-signature .ux-shopping-truth{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  padding:14px 16px 8px!important;
}
body.yekfi-signature .ux-shopping-truth>span{
  min-width:0!important;
  padding:12px!important;
  border:1px solid var(--y-border-soft)!important;
  border-radius:14px!important;
  background:var(--y-surface-2)!important;
}
body.yekfi-signature .ux-shopping-truth small{display:block!important;color:var(--y-graphite)!important}
body.yekfi-signature .ux-shopping-truth b{display:block!important;color:var(--y-ink)!important;font-variant-numeric:tabular-nums!important}
body.yekfi-signature .shopping-finance-details>.price-trust-inline{
  margin:4px 16px 16px!important;
  width:calc(100% - 32px)!important;
}

body.yekfi-signature .stock-secondary-insights{margin-top:14px!important}
body.yekfi-signature .stock-secondary-insights .stock-kpis{
  margin:14px 16px 10px!important;
}
body.yekfi-signature .stock-secondary-insights .household-learning-card{
  margin:0 16px 16px!important;
  width:calc(100% - 32px)!important;
}

@media(max-width:599px){
  body.yekfi-signature .planning-context-grid.planning-context-essentials{
    grid-template-columns:1fr!important;
  }
  body.yekfi-signature .ux-secondary-disclosure,
  body.yekfi-signature .ux-week-trust-strip{
    margin-inline:5px!important;
    width:auto!important;
    max-width:calc(100% - 10px)!important;
    box-sizing:border-box!important;
  }
  body.yekfi-signature .ux-shopping-truth{
    grid-template-columns:1fr!important;
  }
  body.yekfi-signature .ux-shopping-stats-compact{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* v11.18.0 — Complete Meal Truth: show calculated meal companions without visual noise. */
.complete-meal-line{
  display:block;
  margin-top:4px;
  color:var(--yekfi-graphite,#536159);
  font-size:12px;
  line-height:1.55;
  font-style:normal;
  font-weight:650;
  white-space:normal;
  overflow-wrap:anywhere;
}
.sig-hero-copy .complete-meal-line{
  color:rgba(255,255,255,.92);
  font-size:13px;
  line-height:1.55;
  margin-top:0;
}
.complete-meal-composition{
  display:grid;
  gap:8px;
  margin-top:10px;
}
.complete-meal-part{
  display:grid;
  grid-template-columns:minmax(64px,.55fr) minmax(0,1.45fr);
  gap:2px 10px;
  align-items:start;
  padding:10px 12px;
  border:1px solid var(--yekfi-soft-border,#DCE2DD);
  border-radius:14px;
  background:var(--yekfi-surface-2,#F4F7F3);
}
.complete-meal-part.is-main{
  background:var(--yekfi-surface,#FFFEFA);
  border-color:var(--yekfi-border,#B7C3BB);
}
.complete-meal-part>span{
  grid-row:1 / span 2;
  color:var(--yekfi-graphite,#536159);
  font-size:12px;
  line-height:1.55;
}
.complete-meal-part>b{
  min-width:0;
  color:var(--yekfi-ink,#15221B);
  font-size:14px;
  line-height:1.5;
  overflow-wrap:anywhere;
}
.complete-meal-part>small{
  color:var(--yekfi-graphite,#536159);
  font-size:12px;
  line-height:1.55;
}
@media (max-width:390px){
  .complete-meal-part{grid-template-columns:1fr;padding:10px}
  .complete-meal-part>span{grid-row:auto}
}

/* =====================================================================
   Pre-Beta B2 — Engine→UI Truth & Decision Closure
   Decision surfaces only; no new visual authority layer.
   ===================================================================== */
.plan-preview-lineup{margin-top:14px}
.plan-preview-lineup-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:8px}
.plan-preview-lineup-head span{display:grid;gap:2px}
.plan-preview-lineup-head small{font-size:12px;font-weight:800;opacity:.72}
.plan-preview-lineup-head h3{margin:0;font-size:18px}
.plan-preview-lineup-head>b{font-size:14px;white-space:nowrap}
.plan-preview-week{display:grid;gap:10px}
.plan-preview-day{border:1px solid var(--line,#d9dfd3);border-radius:16px;padding:12px;background:var(--surface,#fff)}
.plan-preview-day-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--line,#d9dfd3)}
.plan-preview-day-head span{display:grid;gap:1px}.plan-preview-day-head small{font-size:11px;font-weight:800;opacity:.72}.plan-preview-day-head b{font-size:15px}.plan-preview-day-head em{font-size:11px;font-style:normal;font-weight:800;opacity:.72}
.plan-preview-day-meals{display:grid;gap:7px;padding-top:8px}.plan-preview-meal{display:grid;grid-template-columns:minmax(52px,auto) 1fr;gap:8px;align-items:start}.plan-preview-meal>span{font-size:11px;font-weight:900;opacity:.72;padding-top:2px}.plan-preview-meal>div{display:grid;gap:2px}.plan-preview-meal b{font-size:14px}.plan-preview-meal .complete-meal-line{margin:0;font-size:11px}
.plan-preview-support{margin-top:8px;padding-top:8px;border-top:1px dashed var(--line,#d9dfd3);display:grid;gap:2px}.plan-preview-support span{font-size:11px;font-weight:800;opacity:.7}.plan-preview-support b{font-size:12px}
.nutrition-support-reason{display:block;margin-top:3px;font-size:11px;line-height:1.5;font-weight:750;opacity:.82}
.nutrition-support-explain{display:flex;gap:10px;align-items:flex-start;padding:12px;margin:10px 0;border:1px solid var(--line,#d9dfd3);border-radius:14px;background:var(--surface-soft,#f7f8f3)}.nutrition-support-explain>span{font-size:18px}.nutrition-support-explain>div{display:grid;gap:3px}.nutrition-support-explain b{font-size:13px}.nutrition-support-explain small{font-size:12px;line-height:1.6}
.cook-part{border:1px solid var(--line,#d9dfd3);border-radius:16px;padding:12px;margin-top:10px;background:var(--surface,#fff)}.cook-part-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}.cook-part-head span{display:grid;gap:2px}.cook-part-head small{font-size:11px;font-weight:800;opacity:.7}.cook-part-head h3{margin:0;font-size:16px}.cook-part-head em{font-size:11px;font-style:normal;font-weight:900}.cook-part-steps h4{margin:12px 0 6px;font-size:13px}
.shopping-usage{margin:10px 0 14px;border:1px solid var(--line,#d9dfd3);border-radius:14px;background:var(--surface-soft,#f7f8f3);overflow:hidden}.shopping-usage>summary{list-style:none;cursor:pointer;padding:11px 12px;display:flex;justify-content:space-between;align-items:center;gap:10px}.shopping-usage>summary::-webkit-details-marker{display:none}.shopping-usage>summary span{display:grid;gap:2px}.shopping-usage>summary b{font-size:13px}.shopping-usage>summary small{font-size:11px;opacity:.72}.shopping-usage>summary strong{font-size:11px;white-space:nowrap}.shopping-usage-list{border-top:1px solid var(--line,#d9dfd3);display:grid}.shopping-usage-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--line,#d9dfd3)}.shopping-usage-row:last-child{border-bottom:0}.shopping-usage-row>span{display:grid;gap:1px}.shopping-usage-row small{font-size:10px;opacity:.7}.shopping-usage-row b{font-size:12px}.shopping-usage-row em{font-size:10px;font-style:normal;opacity:.72}.shopping-usage-row>strong{font-size:11px;white-space:nowrap}
@media(max-width:390px){.plan-preview-meal{grid-template-columns:48px 1fr}.plan-preview-day{padding:10px}.shopping-usage-row{align-items:flex-start}}

/* =====================================================================
   Pre-Beta B3 — Visual Precision & Responsive Hardening
   Source/static hardening only. Physical-device certification remains open.
   ===================================================================== */
/* Decision-supporting secondary copy is never dimmed into low-salience micro text. */
.plan-preview-lineup-head small,
.plan-preview-day-head small,
.plan-preview-day-head em,
.plan-preview-meal>span,
.plan-preview-meal .complete-meal-line,
.plan-preview-support span,
.nutrition-support-reason,
.cook-part-head small,
.cook-part-head em,
.shopping-usage>summary small,
.shopping-usage>summary strong,
.shopping-usage-row small,
.shopping-usage-row em,
.shopping-usage-row>strong{
  font-size:12px;
  line-height:1.45;
  opacity:1;
  color:var(--y-graphite);
}
.plan-preview-meal>span,
.plan-preview-day-head em,
.plan-preview-support span,
.cook-part-head em,
.shopping-usage>summary strong,
.shopping-usage-row>strong{font-weight:800;color:var(--y-cardamom-800)}
.nutrition-support-reason{font-size:12.5px;color:var(--y-cardamom-800)}
.plan-preview-meal b,.shopping-usage-row b{color:var(--y-ink)}

/* Interactive disclosures keep a real touch target while preserving visual compactness. */
.shopping-usage>summary{min-height:48px;box-sizing:border-box}
.shopping-usage-row{min-height:44px;box-sizing:border-box}
.shopping-usage>summary>span,.shopping-usage-row>span,.plan-preview-meal>div,.cook-part-head>span{min-width:0}
.shopping-usage :is(b,small,em,strong),
.plan-preview-lineup :is(b,small,em,strong),
.cook-part :is(b,small,em,strong),
.nutrition-support-reason{overflow-wrap:anywhere;word-break:normal}

/* Long Arabic copy should reflow rather than collide with amounts/status labels. */
.plan-preview-lineup-head,.plan-preview-day-head,.cook-part-head,.shopping-usage>summary,.shopping-usage-row{min-width:0}
@media(max-width:430px){
  .plan-preview-lineup-head,.plan-preview-day-head,.cook-part-head,.shopping-usage>summary{align-items:flex-start}
  .plan-preview-lineup-head{flex-wrap:wrap}
  .shopping-usage-row>span{min-width:0;flex:1 1 auto}
  .shopping-usage-row>strong{flex:0 0 auto}
}
@media(max-width:360px){
  .plan-preview-meal{grid-template-columns:1fr}
  .plan-preview-meal>span{padding-top:0}
  .shopping-usage-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}
  .shopping-usage-row>strong{justify-self:end}
}

/* =====================================================================
   Pre-Beta B4 — First-Plan & Journey Hardening
   Reduce first-value friction without hiding planning truth.
   ===================================================================== */
.planning-signature-page.is-first-plan{gap:22px}
.planning-signature-page.is-first-plan .planning-hero{padding-block:24px}
.planning-signature-page.is-first-plan .planning-hero h1{font-size:clamp(28px,7vw,36px)}
.planning-first-context-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.planning-first-context-grid>span{background:var(--y-surface);border:1px solid var(--y-border-soft);border-radius:16px;padding:14px;min-width:0}
.planning-first-context-grid small{display:block;color:var(--y-graphite)}
.planning-first-context-grid b{display:block;color:var(--y-ink);overflow-wrap:anywhere}
.planning-first-context-grid>span.truth-missing{background:#FFF8E9;border-color:#B8872F}
.planning-first-context-grid>span.truth-missing b{color:#6A4A12}
.planning-context-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.planning-context-action{min-height:44px;padding:9px 12px;border-radius:12px;border:1px solid var(--y-border);background:var(--y-surface);color:var(--y-forest-950);font-weight:800;text-align:start}
.planning-context-action.attention{border-color:#B8872F;background:#FFF8E9;color:#6A4A12}
.first-plan-fast-path{scroll-margin-top:18px}
.first-plan-fast-path .planning-way-auto{border-width:2px;border-color:var(--y-cardamom-800);background:linear-gradient(145deg,var(--y-mint-100),var(--y-surface))}
.first-plan-fast-path .planning-way-auto .planning-way-copy>small{color:var(--y-cardamom-800)}

@media(max-width:599px){
  .planning-signature-page.is-first-plan{gap:18px}
  .planning-first-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .planning-context-actions{display:grid;grid-template-columns:1fr}
  .planning-context-action{width:100%}
}
@media(max-width:360px){
  .planning-first-context-grid{grid-template-columns:1fr}
}
