@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;0,6..72,700;1,6..72,400;1,6..72,500;1,6..72,600&display=swap");:root{--color-bg-main:#fcf9f4;--color-bg-card:#f2efe8;--color-bg-dark:#28380f;--color-bg-dark-hover:#3e4f24;--color-secondary:#7d562d;--color-text-main:#2a2a2a;--color-text-dark:#1a240a;--color-text-muted:#6b6b6b;--color-text-light:#fff;--color-white:#fff;--font-serif:"Newsreader",serif;--font-sans:"Manrope",sans-serif;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2.5rem;--spacing-xxl:4rem}*{box-sizing:border-box;margin:0;padding:0}body,html{background-color:var(--color-bg-main);color:var(--color-text-main);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;width:100%;height:100%;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.1);border-radius:4px}.serif-text,h1,h2,h3,h4{font-family:var(--font-serif);color:var(--color-text-dark)}.app-container{display:flex;flex-direction:column;min-height:100vh;padding-bottom:80px}@media (min-width:768px){.app-container{padding-bottom:0;padding-left:250px}}.main-content{flex:1 1;width:100%;max-width:1100px;margin:0 auto;padding:0 var(--spacing-lg);position:relative;animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.7}}.shimmer{background:linear-gradient(90deg,#f2efe8 8%,#e0d9cc 18%,#f2efe8 33%);background-size:1000px 100%;animation:shimmer 2s linear infinite}.pulse-icon{animation:pulse 2s ease-in-out infinite}.animate-spring-up{animation:springUp .6s cubic-bezier(.175,.885,.32,1.275) both}.animate-stagger-1{animation-delay:.1s}.animate-stagger-2{animation-delay:.2s}.animate-stagger-3{animation-delay:.3s}.animate-stagger-4{animation-delay:.4s}.hover-lift{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease}.hover-lift:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px rgba(0,0,0,.08)!important}.hover-glow:hover{box-shadow:0 0 20px rgba(40,56,15,.15)}.tap-effect:active{transform:scale(.95);opacity:.8}@keyframes springUp{0%{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes glassShine{0%{left:-100%}to{left:100%}}.glass-shine{position:relative;overflow:hidden}.glass-shine:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);transform:skewX(-25deg);transition:.75s}.glass-shine:hover:after{animation:glassShine .75s forwards}.active-pill{position:relative}.active-pill:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);width:4px;height:4px;background:currentColor;border-radius:50%}.top-nav{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);position:-webkit-sticky;position:sticky;top:0;background-color:hsla(38,57%,97%,.95);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100}@media (min-width:768px){.top-nav{display:none}}.top-nav .brand-title{font-size:1.5rem;font-weight:600}.icon-btn{background:none;border:none;color:var(--color-text-dark);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.icon-btn:hover{transform:scale(1.1)}.sidebar-nav{position:fixed;left:0;top:0;bottom:0;width:280px;background-color:var(--color-bg-main);border-right:1px solid rgba(0,0,0,.05);display:flex;flex-direction:column;padding:var(--spacing-xl) 0;z-index:1000;box-shadow:4px 0 20px rgba(0,0,0,.05);transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.sidebar-nav.mobile-open{transform:translateX(0)}@media (min-width:768px){.sidebar-nav{transform:translateX(0);width:250px;background-color:var(--color-white)}.mobile-close-btn{display:none}}.sidebar-brand{font-size:1.8rem;font-weight:600;padding:0 var(--spacing-xl);margin-bottom:var(--spacing-xxl);color:var(--color-bg-dark);text-decoration:none}.sidebar-links{display:flex;flex-direction:column;gap:10px;padding:0 var(--spacing-xl)}.sidebar-link{display:flex;align-items:center;gap:var(--spacing-md);padding:10px 14px;border-radius:12px;text-decoration:none;color:var(--color-text-muted);font-weight:600;white-space:nowrap;transition:all .25s cubic-bezier(.4,0,.2,1)}.sidebar-link:hover{background-color:rgba(40,56,15,.05);color:var(--color-bg-dark);padding-left:18px}.sidebar-link.active{background-color:var(--color-bg-dark);color:var(--color-white);box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:70px;background-color:var(--color-bg-main);border-top:1px solid rgba(0,0,0,.05);display:flex;justify-content:space-around;align-items:center;z-index:100;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -4px 20px rgba(0,0,0,.02)}@media (min-width:768px){.bottom-nav{display:none}}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#b59b88;text-decoration:none;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;transition:all .3s ease}.nav-item.active{color:var(--color-white);background-color:var(--color-bg-dark);width:54px;height:54px;border-radius:50%;margin-top:-20px;box-shadow:0 4px 15px rgba(40,56,15,.3),inset 0 2px 4px rgba(0,0,0,.2)}.nav-item.active span{display:none}.btn-primary{background-color:var(--color-bg-dark);color:var(--color-text-light);border:none;border-radius:20px;padding:.8rem 1.8rem;font-weight:700;font-size:.8rem;letter-spacing:.05em;cursor:pointer;text-transform:uppercase;box-shadow:inset 0 2px 5px rgba(0,0,0,.2),0 4px 10px rgba(40,56,15,.2);transition:all .2s ease;font-family:var(--font-sans)}.btn-primary:hover{background-color:var(--color-bg-dark-hover);transform:translateY(-2px)}.btn-primary:active{transform:translateY(1px);box-shadow:inset 0 4px 8px rgba(0,0,0,.3)}.section-label{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--spacing-xs);display:block}.hero-section{display:grid;grid-template-columns:1fr;grid-gap:var(--spacing-lg);gap:var(--spacing-lg);margin:var(--spacing-xl) 0}@media (min-width:768px){.hero-section{grid-template-columns:1fr 1fr;align-items:center;gap:var(--spacing-xxl)}}.hero-image-wrapper{background-color:var(--color-white);border-radius:16px;overflow:hidden;box-shadow:0 10px 40px rgba(0,0,0,.04);aspect-ratio:1;position:relative}.hero-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.hero-title{font-size:2.8rem;line-height:1.1;font-weight:500;margin-bottom:var(--spacing-md)}.hero-title i{font-style:italic;font-weight:400}.hero-description{font-size:1.05rem;color:var(--color-text-muted);line-height:1.6;margin-bottom:var(--spacing-xl)}.vitality-metrics{background-color:var(--color-bg-card);border-radius:20px;padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);position:relative;overflow:hidden}.vitality-metrics-bg-icon{position:absolute;right:-20px;top:-20px;color:#e6e1d6;opacity:.6;z-index:0}.vitality-title{font-size:1.6rem;margin-bottom:var(--spacing-xl);font-weight:500;position:relative;z-index:1}.metrics-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--spacing-xl);gap:var(--spacing-xl);position:relative;z-index:1}@media (min-width:768px){.metrics-grid{grid-template-columns:repeat(4,1fr)}}.metric-item{display:flex;flex-direction:column}.metric-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--color-text-muted);margin-bottom:4px}.metric-value{font-size:1.5rem;font-family:var(--font-serif);color:var(--color-text-main);margin-bottom:8px}.metric-bar-bg{height:3px;background-color:rgba(0,0,0,.08);width:100%;border-radius:2px}.metric-bar-fill{height:100%;border-radius:2px;transition:width 1s ease-out}.metric-bar-fill,.pledge-card{background-color:var(--color-bg-dark)}.pledge-card{background-image:linear-gradient(135deg,var(--color-bg-dark) 0,#1a2609 100%);border-radius:20px;padding:var(--spacing-xl);margin-bottom:var(--spacing-xxl);color:var(--color-text-light);box-shadow:inset 0 2px 10px rgba(0,0,0,.2),0 10px 30px rgba(40,56,15,.2);display:flex;flex-direction:column;justify-content:center}@media (min-width:768px){.pledge-card{flex-direction:row;align-items:center;gap:var(--spacing-xxl)}}.pledge-icon{margin-bottom:var(--spacing-md)}@media (min-width:768px){.pledge-icon{margin-bottom:0}}.pledge-title{font-size:1.6rem;color:var(--color-text-light);margin-bottom:var(--spacing-sm);font-weight:500;line-height:1.2}.pledge-text{font-size:.95rem;opacity:.9;line-height:1.5;font-weight:300}.pantry-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:var(--spacing-lg)}.pantry-title{font-size:2rem;line-height:1.1;font-weight:500;margin-bottom:var(--spacing-xs)}.pantry-subtitle{font-size:.95rem;font-style:italic;color:var(--color-text-muted)}.nav-arrows{display:flex;gap:12px}.arrow-btn{width:36px;height:36px;border-radius:50%;background-color:var(--color-bg-card);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-main);transition:all .2s ease}.arrow-btn:hover{background-color:#e2dfd8;transform:scale(1.05)}.pantry-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:var(--spacing-xl);gap:var(--spacing-xl);margin-bottom:var(--spacing-xxl)}.pantry-carousel{display:flex;overflow-x:auto;gap:var(--spacing-lg);padding-bottom:var(--spacing-lg);scroll-snap-type:x mandatory;scrollbar-width:none}@media (min-width:768px){.pantry-carousel{display:grid;grid-template-columns:repeat(3,1fr);overflow-x:visible;padding-bottom:0}}.pantry-card{min-width:280px;background-color:var(--color-bg-main);border-radius:16px;scroll-snap-align:start;transition:transform .3s ease;cursor:pointer}.pantry-card:hover{transform:translateY(-4px)}.pantry-card-img-wrapper{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:1;margin-bottom:var(--spacing-md);background-color:var(--color-white);box-shadow:inset 0 2px 10px rgba(0,0,0,.05),0 10px 20px rgba(0,0,0,.02)}.pantry-card-img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.pantry-card:hover .pantry-card-img{transform:scale(1.05)}.meal-tag{position:absolute;top:12px;right:12px;background-color:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:6px 10px;border-radius:6px;font-size:.6rem;font-weight:700;letter-spacing:.05em;color:var(--color-text-dark);box-shadow:0 4px 10px rgba(0,0,0,.05)}.pantry-card-title{font-size:1.3rem;font-weight:500;margin-bottom:4px}.pantry-card-desc{font-size:.85rem;color:var(--color-text-muted)}.page-header{margin:var(--spacing-xl) 0;text-align:center}.page-title{font-size:3rem;margin-bottom:var(--spacing-md)}.page-subtitle{font-size:1.1rem;color:var(--color-text-muted);max-width:600px;margin:0 auto}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:var(--spacing-xl);gap:var(--spacing-xl);margin-bottom:var(--spacing-xxl)}.cart-summary{background-color:var(--color-white);border-radius:20px;padding:var(--spacing-xl);box-shadow:0 10px 40px rgba(0,0,0,.04)}.cart-item{padding:var(--spacing-md) 0;border-bottom:1px solid rgba(0,0,0,.05)}.cart-item,.cart-total{display:flex;justify-content:space-between;align-items:center}.cart-total{padding:var(--spacing-lg) 0;font-size:1.5rem;font-weight:600;font-family:var(--font-serif)}.form-input{width:100%;padding:var(--spacing-md);border:none;background-color:rgba(0,0,0,.03);border-radius:8px;font-family:var(--font-sans);font-size:1rem;margin-bottom:var(--spacing-md);box-shadow:inset 0 2px 4px rgba(0,0,0,.05);transition:all .2s ease}.form-input:focus{outline:none;background-color:rgba(0,0,0,.05);box-shadow:inset 0 2px 6px rgba(0,0,0,.1)}.add-button{width:100%;margin-top:var(--spacing-md);background-color:transparent;color:var(--color-bg-dark);border:1px solid var(--color-bg-dark);border-radius:20px;padding:.6rem;font-weight:700;font-size:.75rem;text-transform:uppercase;cursor:pointer;transition:all .2s ease}.add-button:hover{background-color:var(--color-bg-dark);color:var(--color-white)}.badge{display:inline-flex;align-items:center;justify-content:center;background-color:var(--color-secondary);color:var(--color-white);border-radius:50%;width:20px;height:20px;font-size:.65rem;font-weight:700;position:absolute;top:-5px;right:-5px}.admin-tabs-scroll-container::-webkit-scrollbar{display:none}.admin-tabs-scroll-container{-ms-overflow-style:none;scrollbar-width:none}