.site-shell{min-height:100dvh}.site-shell .app-side,.site-shell .app-frame{min-width:0;height:100dvh;min-height:0}.site-shell .app-content{min-width:0;min-height:0;padding-bottom:24px;scroll-padding-bottom:24px;overflow:hidden auto}.site-shell .app-header{padding-top:max(16px,env(safe-area-inset-top));flex-shrink:0}.site-shell .bottom-nav{height:auto;min-height:72px;padding:4px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));z-index:20;flex:none;grid-template-columns:repeat(5,minmax(0,1fr));position:relative}.site-shell .bottom-nav button{white-space:nowrap;gap:5px;min-width:0;min-height:60px;padding:8px 0}.site-shell .bottom-nav button span{font-size:11px;line-height:1.4}.site-shell .bottom-nav button svg{flex-shrink:0}.site-shell .bottom-nav:has(.hotdeal-nav){grid-template-columns:repeat(6,minmax(0,1fr))}.site-shell .bottom-nav .hotdeal-nav{white-space:nowrap;min-height:60px;padding:8px 0}.site-shell .bottom-nav .hotdeal-nav span{font-size:11px;line-height:1.4}.site-shell .bottom-nav .hotdeal-nav svg{flex-shrink:0}.home-steps{color:#6e805b;background:#f1f5e5;border-radius:16px;align-items:center;gap:8px;margin-bottom:18px;padding:12px 14px;font-size:12px;display:flex}.home-steps strong{color:#405e36}.home-secondary,.today-record-summary,.planner-more-options,.planner-profile-summary{background:#fcfcf6;border:1px solid #e4e9d8;border-radius:16px;margin:12px 0;padding:12px 14px}.home-secondary>summary,.today-record-summary>summary,.planner-more-options>summary,.planner-profile-summary>summary{cursor:pointer;color:#708362;font-size:13px}.today-record-summary .today-metrics{margin-top:16px}.today-partial{background:#f4f7e9;border:1px solid #dce5cc;border-radius:14px;margin:10px 0;padding:12px}.today-partial>strong{margin-bottom:8px;font-size:13px;display:block}.today-partial>div{flex-wrap:wrap;gap:8px;display:flex}.today-partial button{color:#466538;background:#fff;border:1px solid #d6e1c8;border-radius:12px;padding:10px 12px}.today-left{color:#708060;margin:10px 0;font-size:12px;display:block}.cook-comparison-context{color:#75816a;margin:0!important;font-size:12px!important;line-height:1.7!important}@media (max-width:480px){.site-shell .app-content{padding-left:16px;padding-right:16px}.site-shell .bottom-nav{min-height:68px}.home-steps{justify-content:center;gap:6px;font-size:11px}.site-shell .app-frame{width:100%}.site-shell input,.site-shell select,.site-shell textarea{max-width:100%}}.contact-entry>span{color:#837466;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;margin-top:8px;font-size:12px;display:block}.planner-budget-hint{color:#526c47;background:#f4f7e8;border:1px solid #e2e7ce;border-radius:16px;padding:14px}.planner-budget-hint>strong{font-size:13px}.planner-budget-hint p{margin:8px 0;font-size:12px;line-height:1.7}.planner-budget-hint>small{color:#788469;margin-top:9px;font-size:10px;display:block}
@media (prefers-reduced-motion:no-preference){.shopping-planner button,.shopping-planner .planner-exclusion-group label,.community-actions button{transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s,transform .15s}.shopping-planner fieldset label:has(input[type=radio]){transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s,transform .15s}.shopping-planner button:enabled:active,.community-actions button:enabled:active{transform:scale(.97)}.shopping-planner .purchase-items>article{transition:border-color .18s,box-shadow .18s}.shopping-planner .today-menu,.shopping-planner .purchase-items>article,.shopping-planner .planner-result,.shopping-planner .today-purchase-panel,.shopping-planner .planner-exclusions{animation:.22s ease-out kkini-appear}.shopping-planner [role=status],.community-message,.body-success{animation:.24s ease-out kkini-confirm}}.shopping-planner .purchase-items>article:has(.purchase-item-heading input:checked){border-color:#72967b;box-shadow:0 0 0 1px #72967b}@keyframes kkini-appear{0%{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes kkini-confirm{0%{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
