.navbar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-xl);background-color:var(--color-background-dark-primary);color:var(--color-text-white);box-shadow:0 2px 8px var(--color-shadow-dark);width:100%;position:fixed;top:0;z-index:1000;flex-wrap:wrap;gap:var(--spacing-md);--navbar-height: 80px;height:var(--navbar-height);border-bottom-left-radius:var(--border-radius-lg);border-bottom-right-radius:var(--border-radius-lg)}.navbar-left,.navbar-right{display:flex;align-items:center;gap:var(--spacing-md)}.navbar-right.hide-for-cart .navbar-toggle-button{visibility:hidden;pointer-events:none;opacity:0}.navbar-right.hide-for-cart .cart-icon-wrapper{pointer-events:auto}.navbar-right.hide-for-menu>:first-child,.navbar-right.hide-for-menu .cart-icon-wrapper{visibility:hidden!important;opacity:0!important;pointer-events:none!important}.navbar-brand a{font-family:Playfair Display,serif;color:var(--color-text-white);text-decoration:none;font-size:2.2em;font-weight:700;letter-spacing:.05em;transition:color .2s ease}.navbar-brand a:hover{color:var(--color-primary)}.navbar-auth-main{display:none}.navbar-welcome{color:var(--color-text-light-mode);font-size:1em;font-weight:500;white-space:nowrap}.navbar-button{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-primary);background-color:transparent;color:var(--color-primary);border-radius:var(--border-radius-sm);cursor:pointer;font-size:1em;font-weight:600;transition:background-color .2s ease,color .2s ease,border-color .2s ease;white-space:nowrap}.navbar-button:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);color:var(--color-text-white)}.navbar-button.logout{border-color:var(--color-accent-red);color:var(--color-accent-red)}.navbar-button.logout:hover{background-color:var(--color-accent-red);color:var(--color-text-white);border-color:var(--color-accent-red)}.navbar-toggle-button{background:none;border:none;width:44px;height:44px;cursor:pointer;display:flex;justify-content:center;align-items:center;padding:0;z-index:1000;position:relative;border-radius:var(--border-radius-md);transition:background-color .3s ease}.navbar-toggle-button:hover{background-color:var( --color-background-dark-secondary )}.hamburger-icon{position:relative;width:30px;height:3px;background-color:var(--color-text-white);border-radius:2px;transition:background-color .3s ease}.hamburger-icon:before,.hamburger-icon:after{content:"";position:absolute;width:30px;height:3px;background-color:var(--color-text-white);border-radius:2px;transition:transform .3s ease,top .3s ease,opacity .3s ease}.hamburger-icon:before{top:-10px}.hamburger-icon:after{top:10px}.navbar-toggle-button.open .hamburger-icon{background-color:transparent}.navbar-toggle-button.open .hamburger-icon:before{top:0;transform:rotate(45deg)}.navbar-toggle-button.open .hamburger-icon:after{top:0;transform:rotate(-45deg)}.navbar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var( --color-background-dark-primary );color:var(--color-text-white);z-index:999;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;opacity:0;visibility:hidden;transform:translate(100%);transition:opacity .4s cubic-bezier(.25,.46,.45,.94),transform .4s cubic-bezier(.25,.46,.45,.94),visibility .4s;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--spacing-xxl) var(--spacing-md) var(--spacing-lg) var(--spacing-md);box-shadow:-5px 0 15px #0000004d}.navbar-overlay.open{opacity:1;visibility:visible;transform:translate(0)}.overlay-close-button{position:sticky;top:var( --spacing-lg );right:var(--spacing-md);align-self:flex-end;background:none;border:none;color:var(--color-text-white);font-size:3.5em;cursor:pointer;transition:color .2s ease;z-index:1002;font-family:sans-serif;line-height:1;padding:var(--spacing-sm);border-radius:var(--border-radius-md)}.overlay-close-button:hover{color:var(--color-accent-red);background-color:var( --color-background-dark-tertiary )}.overlay-close-button:before{content:"×"}.overlay-links{list-style:none;padding:0;margin:var(--spacing-xl) 0;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg);width:100%;max-width:450px;text-align:center}.overlay-auth-status{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) 0;margin-top:var( --spacing-xl );margin-bottom:var(--spacing-xl);border-top:1px solid var(--color-border-dark);border-bottom:1px solid var(--color-border-dark);width:100%;max-width:300px;border-radius:var(--border-radius-md);background-color:var( --color-background-dark-tertiary );box-shadow:0 2px 10px #0003}.overlay-auth-status .navbar-welcome{font-size:1.1em;color:var(--color-text-white);margin-bottom:var(--spacing-sm)}.overlay-auth-status .navbar-button{width:80%;max-width:200px;text-align:center;padding:var(--spacing-sm) var(--spacing-md);font-size:.95em;border-radius:var(--border-radius-md)}.overlay-auth-status .navbar-button.logout{border-color:var(--color-accent-red);color:var(--color-accent-red)}.overlay-auth-status .navbar-button.logout:hover{background-color:var(--color-accent-red);color:var(--color-text-white);border-color:var(--color-accent-red)}.overlay-links>li>a{font-family:Playfair Display,serif;color:var(--color-text-white);text-decoration:none;font-size:2.5em;font-weight:700;transition:color .2s ease,transform .2s ease;display:block;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);letter-spacing:.02em}.overlay-links>li>a:hover{color:var(--color-primary);transform:translate(10px)}.overlay-links>li>a.active{color:var(--color-primary)}.overlay-section-title{font-family:Playfair Display,serif;color:var(--color-secondary);font-size:1.8em;font-weight:600;margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:.05em;padding-bottom:var(--spacing-xs);position:relative;cursor:default}.overlay-section-title:after{content:"";position:absolute;left:50%;transform:translate(-50%);bottom:0;width:50px;height:2px;background-color:var(--color-primary);border-radius:1px}.overlay-sub-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);width:100%}.overlay-sub-links li a{font-family:Nunito,sans-serif;color:var(--color-text-medium-light);text-decoration:none;font-size:1.1em;transition:color .2s ease,transform .2s ease;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-sm);display:block;width:fit-content}.overlay-sub-links li a:hover{color:var(--color-text-white);background-color:var( --color-background-dark-tertiary );transform:translate(5px)}.overlay-sub-links li a.active{color:var(--color-secondary);background-color:var( --color-background-dark-tertiary )}.overlay-search-item{width:90%;max-width:350px;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.overlay-search-input{width:100%;padding:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var(--color-background-dark-tertiary);color:var(--color-text-light-mode);font-size:1.1em;box-sizing:border-box;box-shadow:inset 0 1px 3px #0003}.overlay-search-input::placeholder{color:var(--color-text-medium-light);opacity:.8}.overlay-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #809b5266;background-color:var( --color-background-dark-secondary )}.overlay-social-links{display:flex;justify-content:center;gap:var(--spacing-xl);margin-top:var(--spacing-xl);padding-bottom:var(--spacing-xxl)}.overlay-social-links a{color:var(--color-text-light-mode);font-size:2.2em;transition:color .2s ease,transform .2s ease;padding:var(--spacing-xs)}.overlay-social-links a:hover{color:var(--color-primary);transform:translateY(-3px) scale(1.1)}.overlay-section-divider{width:80%;height:1px;background-color:var(--color-border-dark);margin:var(--spacing-xl) 0}@media (max-width: 768px){.navbar{padding:var(--spacing-sm) var(--spacing-md);--navbar-height: 50px;height:var(--navbar-height);border-bottom-left-radius:var( --border-radius-md );border-bottom-right-radius:var(--border-radius-md)}.navbar-brand a{font-size:1.8em}.navbar-toggle-button{width:40px;height:40px}.hamburger-icon,.hamburger-icon:before,.hamburger-icon:after{width:25px}.hamburger-icon:before{top:-8px}.hamburger-icon:after{top:8px}.navbar-overlay{padding:var(--spacing-lg) var(--spacing-md)}.overlay-close-button{font-size:3em;top:var(--spacing-md);right:var(--spacing-md)}.overlay-links{gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.overlay-links>li>a{font-size:2em;padding:var(--spacing-sm) var(--spacing-md)}.overlay-section-title{font-size:1.6em;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm)}.overlay-section-title:after{width:40px}.overlay-sub-links li a{font-size:1em;padding:var(--spacing-xs)}.overlay-search-item{margin-top:var(--spacing-md);margin-bottom:var(--spacing-lg)}.overlay-search-input{font-size:1em;padding:var(--spacing-sm)}.overlay-social-links{gap:var(--spacing-lg);font-size:1.8em;padding-bottom:var(--spacing-xl)}.overlay-auth-status{padding:var(--spacing-md) 0;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.overlay-auth-status .navbar-welcome{font-size:1em}.overlay-auth-status .navbar-button{padding:var(--spacing-sm) var(--spacing-md);font-size:.9em}}@media (max-width: 480px){.navbar-brand a{font-size:1.6em}.navbar-toggle-button{width:36px;height:36px}.hamburger-icon,.hamburger-icon:before,.hamburger-icon:after{width:20px;height:2px}.hamburger-icon:before{top:-7px}.hamburger-icon:after{top:7px}.overlay-close-button{font-size:2.5em}.overlay-links{gap:var(--spacing-sm)}.overlay-links>li>a{font-size:1.8em;padding:var(--spacing-xs) var(--spacing-sm)}.overlay-section-title{font-size:1.4em;margin-top:var(--spacing-md)}.overlay-sub-links li a{font-size:.9em}.overlay-social-links{font-size:1.6em}.overlay-search-input{padding:var(--spacing-xs)}}@media print{.navbar{display:none!important}}.cart-icon-container{position:relative;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:5px;min-width:40px;min-height:40px;transition:transform .2s ease-in-out}.cart-icon-container:hover{transform:scale(1.05)}.cart-icon{font-size:1.5rem;color:var(--color-primary);z-index:1000}.cart-quantity{position:absolute;top:-8px;right:-8px;background-color:var(--color-accent-red);color:var(--color-white);border-radius:50%;padding:2px 6px;font-size:.75rem;font-weight:700;line-height:1;min-width:20px;text-align:center;box-shadow:0 1px 3px #0003}.cart-quantity.loading{background-color:var(--color-grey-light);color:var(--color-text-light)}.cart-link-hidden-accessible{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cart-drawer-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;z-index:999}.cart-drawer{position:fixed;top:0;right:0;width:100%;max-width:400px;height:100%;background-color:var( --color-background-dark-secondary );box-shadow:-5px 0 15px #0006;z-index:1001;display:flex;flex-direction:column;padding:var(--spacing-lg);box-sizing:border-box;overflow-y:auto}.cart-drawer-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border-dark)}.cart-drawer-header h3{font-family:Playfair Display,serif;font-size:1.8em;color:var(--color-primary-light);margin:0}.close-drawer-button{background:none;border:none;font-size:2em;color:var(--color-text-medium-light);cursor:pointer;padding:0;line-height:1;transition:color .2s ease}.close-drawer-button:hover{color:var(--color-accent-red)}.cart-loading,.cart-error,.cart-empty-state{text-align:center;padding:var(--spacing-xl);font-size:1.1em;color:var(--color-text-medium-light)}.cart-error{color:var(--color-error);font-weight:700}.cart-empty-state .btn{margin-top:var(--spacing-lg)}.cart-items-list{list-style:none;padding:0;margin:0;flex-grow:1}.cart-item{display:flex;align-items:center;padding:var(--spacing-md) 0;border-bottom:1px solid var(--color-border-dark);position:relative}.cart-item:last-child{border-bottom:none}.cart-item-image-container{width:80px;height:80px;flex-shrink:0;border-radius:var(--border-radius-sm);overflow:hidden;margin-right:var(--spacing-md);background-color:var(--color-background-dark-tertiary);display:flex;justify-content:center;align-items:center}.cart-item-placeholder-image{font-size:.8em;color:var(--color-text-medium-light);text-align:center}.cart-item-details{flex-grow:1;display:flex;flex-direction:column;padding-right:var(--spacing-lg)}.cart-item-title{font-weight:600;color:var(--color-text-light-mode);font-size:1.1em;margin-bottom:var(--spacing-xs);text-decoration:none;transition:color .2s ease}.cart-item-variant{font-size:.9em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-xs)}.cart-item-price{font-size:1em;font-weight:700;color:var(--color-secondary-light);margin-bottom:var(--spacing-sm)}.cart-item-quantity-controls{display:flex;align-items:center;gap:var(--spacing-xs)}.quantity-button{background-color:var(--color-background-dark-tertiary);color:var(--color-text-light-mode);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-sm);width:30px;height:30px;display:flex;justify-content:center;align-items:center;font-size:1.2em;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.quantity-button:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary)}.quantity-button:disabled{opacity:.5;cursor:not-allowed}.quantity-input{width:40px;padding:5px;text-align:center;border:1px solid var(--color-border-dark);border-radius:var(--border-radius-sm);background-color:var(--color-background-dark-primary);color:var(--color-text-light-mode);font-size:1em;appearance:textfield;-moz-appearance:textfield}.quantity-input::-webkit-inner-spin-button,.quantity-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.remove-item-button{background:none;border:none;color:var(--color-text-medium-light);font-size:1.5em;cursor:pointer;position:absolute;top:var(--spacing-md);right:0;transition:color .2s ease}.remove-item-button:hover{color:var(--color-accent-red)}.cart-summary{padding-top:var(--spacing-md);margin-top:var(--spacing-md);border-top:1px solid var(--color-border-dark)}.summary-row{display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm);font-size:1.1em;color:var(--color-text-light-mode)}.summary-row.total{font-weight:700;font-size:1.3em;color:var(--color-primary)}.cart-actions{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.cart-actions .btn{width:100%;padding:var(--spacing-md);font-size:1.2em}.clear-cart-button{margin-top:var(--spacing-md);width:100%;padding:var(--spacing-sm);font-size:.9em;text-align:center}@media (max-width: 480px){.cart-drawer{width:100%;max-width:none}.cart-item-image-container{width:60px;height:60px}.cart-item-title{font-size:1em}.cart-item-price{font-size:.9em}.quantity-button,.quantity-input{width:28px;height:28px;font-size:1em}.quantity-input{width:35px}.remove-item-button{font-size:1.3em}.cart-drawer-header h3{font-size:1.5em}.summary-row{font-size:1em}.summary-row.total{font-size:1.2em}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:clamp(.75rem,2vw,1rem) clamp(1.5rem,3vw,2rem);border-radius:var(--border-radius-md);font-family:Nunito,sans-serif;font-size:clamp(.95rem,2vw,1.1rem);font-weight:600;line-height:1.2;text-decoration:none;text-align:center;white-space:nowrap;cursor:pointer;border:none;transition:background-color var(--transition-base),color var(--transition-base),transform var(--transition-fast),box-shadow var(--transition-base);-webkit-tap-highlight-color:transparent;user-select:none;min-height:44px;min-width:44px}.btn:active{transform:translateY(1px)}.btn-primary{background-color:var(--color-primary);color:var(--color-text-white);box-shadow:0 4px 12px #00000040}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);transform:translateY(-2px);box-shadow:0 6px 20px rgba(var(--color-primary-rgb),.4);color:var(--color-text-white);text-decoration:none}.btn-primary:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:2px}.btn-secondary{background-color:var(--color-secondary);color:var(--color-text-white);box-shadow:0 4px 12px #00000040}.btn-secondary:hover:not(:disabled){background-color:var(--color-secondary-hover);transform:translateY(-2px);box-shadow:0 6px 20px rgba(var(--color-secondary-rgb),.4);color:var(--color-text-white);text-decoration:none}.btn-outline{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary);box-shadow:none}.btn-outline:hover:not(:disabled){background-color:rgba(var(--color-primary-rgb),.1);border-color:var(--color-primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.2);color:var(--color-primary);text-decoration:none}.btn-accent-red{background-color:var(--color-accent-red);color:var(--color-text-white);box-shadow:0 4px 12px #00000040}.btn-accent-red:hover:not(:disabled){background-color:var(--color-accent-red-hover);transform:translateY(-2px);box-shadow:0 6px 20px rgba(var(--color-accent-red-rgb),.4);color:var(--color-text-white);text-decoration:none}.btn-outline-red{background-color:transparent;color:var(--color-accent-red);border:2px solid var(--color-accent-red);box-shadow:none}.btn-outline-red:hover:not(:disabled){background-color:var(--color-accent-red);border-color:var(--color-accent-red);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--color-accent-red-rgb),.3);color:var(--color-text-white);text-decoration:none}.btn-lg{padding:clamp(1rem,2.5vw,1.5rem) clamp(2rem,4vw,3rem);font-size:clamp(1.1rem,2.5vw,1.3rem);min-height:56px}.btn-sm{padding:clamp(.5rem,1.5vw,.75rem) clamp(1rem,2vw,1.5rem);font-size:clamp(.85rem,1.5vw,.95rem);min-height:40px}.btn:disabled,.btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none;box-shadow:none;transform:none}.single-recipe-like-button{color:var(--color-accent-red);border-color:var(--color-accent-red)}.single-recipe-like-button:hover:not(:disabled){background-color:rgba(var(--color-accent-red-rgb),.1);color:var(--color-accent-red);border-color:var(--color-accent-red-hover);text-decoration:none}.single-recipe-like-button.btn-favorited{background-color:var(--color-accent-red);color:var(--color-text-white)}.single-recipe-like-button.btn-favorited:hover:not(:disabled){background-color:var(--color-accent-red-hover);color:var(--color-text-white)}.single-recipe-print-button,.single-recipe-share-button{color:var(--color-secondary);border-color:var(--color-secondary)}.single-recipe-print-button:hover:not(:disabled),.single-recipe-share-button:hover:not(:disabled){background-color:rgba(var(--color-secondary-rgb),.1);color:var(--color-secondary);border-color:var(--color-secondary-hover);text-decoration:none}@media (max-width: 768px){.btn{width:100%;justify-content:center}.btn-sm{width:auto}}@media (max-width: 480px){.btn{font-size:1rem;padding:.875rem 1.5rem}.btn-lg{font-size:1.15rem;padding:1.125rem 2rem}.btn-sm{font-size:.875rem;padding:.625rem 1rem}}.btn:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:2px}@media (prefers-contrast: high){.btn{border-width:2px}.btn-primary,.btn-secondary,.btn-accent-red{border:2px solid currentColor}}.footer{background-color:var( --color-background-dark-primary );color:var(--color-text-medium-light);padding:var(--spacing-xxl) var(--spacing-xl) var(--spacing-lg);font-family:Nunito,sans-serif;border-top:1px solid var(--color-border-dark)}.footer-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl);justify-content:space-between;text-align:left}.footer-column{margin-bottom:var(--spacing-lg)}.footer-logo{font-family:Playfair Display,serif;font-size:1.8em;font-weight:700;color:var(--color-primary);text-decoration:none;display:block;margin-bottom:var(--spacing-md)}.footer-about-text{font-size:.95em;line-height:1.5;margin-bottom:var(--spacing-md)}.footer-copyright{color:var( --color-text-medium-light );font-size:.85em}.footer-heading{font-family:Playfair Display,serif;font-size:1.3em;font-weight:600;color:var(--color-text-light-mode);margin-bottom:var(--spacing-md)}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:var(--spacing-sm)}.footer-links a{color:var(--color-text-medium-light);text-decoration:none;font-size:.95em;transition:color .2s ease-in-out}.footer-links a:hover{color:var(--color-primary);text-decoration:underline}.footer-social-icons{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.footer-social-icons a{color:var(--color-text-light-mode);font-size:1.8em;transition:color .2s ease-in-out}.footer-social-icons a:hover{color:var(--color-primary)}.footer-newsletter-text{font-size:.95em;margin-bottom:var(--spacing-md);color:var(--color-text-light-mode)}.footer-newsletter-input{padding:var(--spacing-sm);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-sm);background-color:var(--color-background-dark-tertiary);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;font-size:.95em;box-sizing:border-box}.footer-newsletter-input::placeholder{color:var(--color-text-medium-light);opacity:.7}.footer-newsletter-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #809b524d}.footer-newsletter-button{background-color:var(--color-secondary);color:var( --color-text-dark-mode );padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--border-radius-sm);font-size:1em;font-weight:600;cursor:pointer;transition:background-color .2s ease-in-out}.footer-newsletter-button:hover{background-color:var(--color-secondary-light)}@media (max-width: 768px){.footer-container{grid-template-columns:1fr;text-align:center;gap:var(--spacing-lg)}.footer-logo,.footer-heading{text-align:center}.footer-social-icons{justify-content:center}.footer-newsletter-form{align-items:center}}@media (max-width: 480px){.footer{padding:var(--spacing-xl) var(--spacing-md)}}.newsletter-signup-form{display:flex;flex-direction:column;gap:var(--spacing-md);margin:0 auto;box-shadow:0 4px 10px #0003;border-radius:var(--border-radius-md);padding:var(--spacing-lg);background-color:var( --color-background-dark-tertiary )}.newsletter-signup-input{padding:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var( --color-background-dark-secondary );color:var(--color-text-light-mode);font-family:Nunito,sans-serif;font-size:1em;box-sizing:border-box;width:100%;transition:border-color .2s ease,box-shadow .2s ease;box-shadow:inset 0 1px 3px #0000001a}.newsletter-signup-input::placeholder{color:var(--color-text-medium-light);opacity:.8}.newsletter-signup-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #809b5266,inset 0 1px 3px #0003}.newsletter-signup-button{background-color:var(--color-secondary);color:var(--color-text-white);padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:var(--border-radius-md);font-family:Nunito,sans-serif;font-size:1.1em;font-weight:700;cursor:pointer;transition:background-color .3s ease,transform .1s ease,box-shadow .3s ease;width:100%;box-shadow:0 4px 15px #0000004d}.newsletter-signup-button:hover:not(:disabled){background-color:var( --color-secondary-hover );transform:translateY(-2px);box-shadow:0 6px 20px #c7754c80}.newsletter-signup-button:disabled{background-color:var(--color-border-dark);cursor:not-allowed;opacity:.7;transform:none;box-shadow:none}.email-status-message{text-align:center;padding:var(--spacing-sm);margin-top:var(--spacing-md);border-radius:var(--border-radius-sm);font-weight:500;font-size:.95em}.email-status-message.success{color:var(--color-primary);background-color:#809b5226;border:1px solid var(--color-primary)}.email-status-message.error{color:var(--color-accent-red);background-color:#b54f4f26;border:1px solid var(--color-accent-red)}@media (max-width: 480px){.newsletter-signup-input,.newsletter-signup-button{font-size:.95em;padding:var(--spacing-sm) var(--spacing-md)}}.layout-wrapper{display:flex;flex-direction:column;min-height:100vh;background-color:var( --color-background-dark-primary )}.main-content{flex:1;padding-top:var( --navbar-height, 60px )}.auth-container{max-width:450px;width:100%;margin:clamp(2rem,8vw,4rem) auto;padding:clamp(1.5rem,4vw,2.5rem);background-color:var(--color-background-dark-secondary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 32px var(--color-shadow-dark);color:var(--color-text-light-mode)}.auth-header{font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,2.5rem);font-weight:700;color:var(--color-primary);text-align:center;margin-bottom:var(--spacing-xl)}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.label{font-size:1rem;font-weight:600;color:var(--color-text-light-mode)}.input{width:100%;padding:clamp(.75rem,2vw,1rem);font-size:16px;font-family:Nunito,sans-serif;background-color:var(--color-background-dark-tertiary);color:var(--color-text-white);border:2px solid var(--color-border-dark);border-radius:var(--border-radius-md);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.input::placeholder{color:var(--color-text-medium-light);opacity:.7}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 var(--focus-ring-width) var(--focus-ring-color)}.input:disabled{opacity:.6;cursor:not-allowed}.password-group{position:relative}.input-with-toggle-wrapper{position:relative;display:flex;align-items:center}.input-with-toggle-wrapper .input{padding-right:3rem}.password-toggle-button{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--color-text-medium-light);font-size:1.2rem;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color var(--transition-base);min-width:44px;min-height:44px}.password-toggle-button:hover:not(:disabled){color:var(--color-primary)}.password-toggle-button:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px;border-radius:var(--border-radius-sm)}.checkbox-group{flex-direction:row;align-items:center;gap:var(--spacing-sm)}.register-checkbox{width:20px;height:20px;min-width:20px;flex-shrink:0;appearance:none;-webkit-appearance:none;background-color:var(--color-background-dark-primary);border:2px solid var(--color-border-dark);border-radius:var(--border-radius-sm);cursor:pointer;position:relative;transition:background-color var(--transition-base),border-color var(--transition-base)}.register-checkbox:checked{background-color:var(--color-primary);border-color:var(--color-primary)}.register-checkbox:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--color-text-white);font-size:14px;font-weight:700}.register-checkbox:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:2px}.register-checkbox-label{font-size:.95rem;font-weight:400;color:var(--color-text-medium-light);cursor:pointer;line-height:1.4;margin:0}.message{padding:var(--spacing-md);margin-top:var(--spacing-lg);border-radius:var(--border-radius-md);font-size:.95rem;font-weight:600;text-align:center;line-height:1.5}.success-message{background-color:rgba(var(--color-primary-rgb),.15);color:var(--color-primary);border:1px solid var(--color-primary)}.error-message{background-color:rgba(var(--color-accent-red-rgb),.15);color:var(--color-accent-red);border:1px solid var(--color-accent-red)}.link-text{margin-top:var(--spacing-xl);text-align:center;font-size:.95rem;color:var(--color-text-medium-light)}.link-text a{color:var(--color-secondary);font-weight:600;text-decoration:none;transition:color var(--transition-base)}.link-text a:hover{color:var(--color-secondary-hover);text-decoration:underline}@media (max-width: 768px){.auth-container{margin:var(--spacing-xl) var(--spacing-md);padding:var(--spacing-xl)}}@media (max-width: 480px){.auth-container{margin:var(--spacing-lg) var(--spacing-sm);padding:var(--spacing-lg);max-width:calc(100% - 2rem)}.auth-header{font-size:1.75rem;margin-bottom:var(--spacing-lg)}.auth-form{gap:var(--spacing-md)}.input{padding:.75rem}.password-toggle-button{font-size:1rem}.label,.message,.link-text,.register-checkbox-label{font-size:.9rem}}@media (prefers-reduced-motion: reduce){.input,.password-toggle-button,.register-checkbox{transition:none}}.add-recipe-container{max-width:1000px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var( --color-background-dark-secondary );border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);font-family:Nunito,sans-serif;color:var(--color-text-light-mode)}.add-recipe-header{font-family:Playfair Display,serif;text-align:center;color:var(--color-primary);margin-bottom:var(--spacing-xl);font-size:3em;font-weight:700}.add-recipe-form{display:flex;flex-direction:column}.add-recipe-section{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var( --color-background-dark-tertiary );box-shadow:0 4px 10px #0003}.add-recipe-section-header{font-family:Playfair Display,serif;color:var(--color-primary);margin-bottom:var(--spacing-md);font-size:1.8em;border-bottom:2px solid var(--color-primary);padding-bottom:var(--spacing-sm)}.add-recipe-form-group{margin-bottom:var(--spacing-md);display:flex;flex-direction:column}.add-recipe-label{margin-bottom:var(--spacing-xs);font-weight:600;color:var(--color-text-light-mode);font-size:.95em}.add-recipe-input,.add-recipe-textarea,.add-recipe-select-multi{padding:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);font-size:1em;box-sizing:border-box;width:100%;background-color:var( --color-background-dark-primary );color:var(--color-text-light-mode);font-family:Nunito,sans-serif;box-shadow:inset 0 1px 3px #0000001a;transition:border-color .2s ease,box-shadow .2s ease}.add-recipe-textarea{resize:vertical;min-height:100px}.add-recipe-input::placeholder,.add-recipe-textarea::placeholder{color:var(--color-text-medium-light);opacity:.7}.add-recipe-input:focus,.add-recipe-textarea:focus,.add-recipe-select-multi:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #809b5266,inset 0 1px 3px #0003}.add-recipe-time-input-group{display:flex;align-items:center;gap:var(--spacing-sm)}.add-recipe-time-input{width:80px;text-align:center}.add-recipe-time-separator{font-weight:600;color:var(--color-text-medium-light);white-space:nowrap}.add-recipe-ingredient-row{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);align-items:center;flex-wrap:wrap}.add-recipe-ingredient-input{flex:1;min-width:80px;padding:var(--spacing-xs);font-size:.9em}.add-recipe-ingredient-input[name=quantity]{flex:0 0 60px}.add-recipe-ingredient-input[name=unit]{flex:0 0 100px}.add-recipe-message{text-align:center;margin-top:var(--spacing-md);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);font-weight:500;font-size:.95em;margin-left:auto;margin-right:auto;max-width:600px}.add-recipe-message:not(.error){color:var(--color-success);background-color:#5cb85c26;border:1px solid var(--color-success)}.add-recipe-message.error{color:var(--color-error);background-color:#d9534f26;border-color:var(--color-error)}.add-recipe-select-multi{min-height:120px;cursor:pointer}@media (max-width: 768px){.add-recipe-container{padding:var(--spacing-md)}.add-recipe-header{font-size:2.2em}.add-recipe-section-header{font-size:1.5em}.add-recipe-ingredient-row{flex-direction:column;align-items:stretch}.add-recipe-ingredient-input,.add-recipe-ingredient-input[name=quantity],.add-recipe-ingredient-input[name=unit],.add-recipe-ingredient-input[name=notes]{width:100%!important;min-width:auto;flex:none}.add-recipe-button-remove{width:100%}.add-recipe-remove-section-button{width:100%;margin-left:0}.add-recipe-button-add,.add-recipe-button-submit{width:100%;margin-top:var(--spacing-md)}}@media (max-width: 480px){.add-recipe-header{font-size:1.8em}.add-recipe-section-header{font-size:1.2em}.add-recipe-input,.add-recipe-textarea,.add-recipe-select-multi{font-size:.9em;padding:var(--spacing-sm)}.add-recipe-time-input{width:60px}}.add-recipe-ingredient-section-group{border:1px dashed var(--color-border-dark);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);border-radius:var(--border-radius-md);background-color:rgba(var(--color-primary-rgb),.05)}.add-recipe-remove-section-button{margin-top:var(--spacing-sm);margin-left:auto;display:block;width:fit-content}.add-recipe-add-section-button{margin-top:var(--spacing-lg);width:100%}.add-recipe-action-buttons{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.add-recipe-button-submit,.add-recipe-action-buttons .btn{flex-shrink:0}@media (max-width: 768px){.add-recipe-button-add,.add-recipe-button-submit,.add-recipe-action-buttons .btn{width:100%;margin-top:var(--spacing-md)}.add-recipe-action-buttons{flex-direction:column;align-items:stretch}}.recipe-management-container{max-width:1200px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.recipe-management-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.recipe-management-actions{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-lg)}.recipe-management-actions .btn{padding:var(--spacing-md) var(--spacing-lg);font-size:1em}.posts-table-wrapper{overflow-x:auto;margin-bottom:var(--spacing-lg)}.recipe-management-table{width:100%;border-collapse:collapse;margin-top:var(--spacing-lg);font-size:.95em}.recipe-management-table th,.recipe-management-table td{border:1px solid var(--color-border-dark);padding:var(--spacing-sm) var(--spacing-md);text-align:left;vertical-align:middle}.recipe-management-table th{background-color:var(--color-background-dark-tertiary);color:var(--color-text-medium-light);font-weight:600;text-transform:uppercase;font-size:.9em}.recipe-management-table tbody tr{background-color:var(--color-background-dark-primary)}.recipe-management-table tbody tr:nth-child(2n){background-color:var( --color-background-dark-secondary )}.recipe-management-table tbody tr:hover{background-color:rgba(var(--color-primary-rgb),.1)}@media (max-width: 1024px){.recipe-management-container{padding:var(--spacing-lg) var(--spacing-md)}.recipe-management-table th,.recipe-management-table td{padding:var(--spacing-sm);font-size:.85em}}@media (max-width: 768px){.recipe-management-header{font-size:2.2em}.recipe-management-actions{justify-content:center}.recipe-management-actions .btn{width:100%}.recipe-management-table thead{display:none}.recipe-management-table,.recipe-management-table tbody,.recipe-management-table tr,.recipe-management-table td{display:block;width:100%}.recipe-management-table tr{margin-bottom:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var(--color-background-dark-secondary);box-shadow:0 2px 5px #0000001a}.recipe-management-table td{text-align:right;padding-left:50%;position:relative}.recipe-management-table td:before{content:attr(data-label);position:absolute;left:var(--spacing-md);width:calc(50% - var(--spacing-md));padding-right:var(--spacing-md);white-space:nowrap;text-align:left;font-weight:600;color:var(--color-text-medium-light)}.actions-buttons{justify-content:flex-end}.pagination-controls{flex-direction:column;gap:var(--spacing-md)}}@media (max-width: 480px){.recipe-management-header{font-size:1.8em}.recipe-management-container{padding:var(--spacing-md)}.recipe-management-table td{font-size:.85em;padding-left:40%}.recipe-management-table td:before{width:calc(40% - var(--spacing-md))}}.homepage-container{padding:0;margin:0;background-color:var(--color-background-dark-primary);overflow-x:hidden;position:relative;z-index:1;min-height:100vh}.homepage-hero-section{position:relative;width:100%;height:75vh;min-height:500px;max-height:900px;display:flex;justify-content:center;align-items:center;text-align:center;color:var(--color-text-white);overflow:hidden;isolation:isolate}.hero-background-fixed{position:fixed;top:0;left:0;width:100vw;height:70vh;background-image:url(/assets/hero-image-vegetables-6-AH3bI5di.png);background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed;z-index:0;transform:translateZ(0);will-change:transform}.hero-overlay{background:linear-gradient(to bottom,#0000004d,#000000b3);position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:clamp(1rem,4vw,3rem);z-index:2}.hero-title,.hero-tagline,.hero-secondary-cta{position:relative;z-index:3}.hero-title{font-family:Playfair Display,serif;font-size:clamp(2.5rem,8vw,5.5rem);font-weight:700;margin-bottom:var(--spacing-sm);color:#fff;text-shadow:0 4px 12px rgba(0,0,0,.6);line-height:1.1;animation:fadeInUp 1s ease-out}.hero-tagline{font-family:Nunito,sans-serif;font-size:clamp(1.1rem,3vw,2.2rem);margin-bottom:clamp(1.5rem,5vw,3rem);color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.6);max-width:800px;line-height:1.4;animation:fadeInUp 1s ease-out .2s backwards}.hero-secondary-cta{margin-top:var(--spacing-md);color:var(--color-text-white);text-decoration:none;font-size:clamp(1rem,2vw,1.1rem);font-weight:600;transition:all .3s ease;text-shadow:1px 1px 4px rgba(0,0,0,.6);padding:.5rem 1rem;border-radius:var(--border-radius-sm);animation:fadeInUp 1s ease-out .4s backwards}.hero-secondary-cta:hover{color:var(--color-primary);background:#ffffff1a;transform:translateY(-2px)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.homepage-content-wrapper{position:relative;z-index:10;background-color:var(--color-background-dark-primary);padding:clamp(2rem,4vw,4rem) 0;width:100%}.homepage-about-section,.homepage-featured-content,.homepage-email-capture-section,.homepage-seasonal-spotlight-section,.homepage-video-section,.homepage-journal-section,.homepage-curated-kitchen-section{max-width:900px;margin:clamp(2rem,6vw,4rem) auto;padding:clamp(1.5rem,4vw,3rem);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 24px var(--color-shadow-dark);color:var(--color-text-light-mode);text-align:center;position:relative;z-index:11}.homepage-journal-section{max-width:1200px}.homepage-section-title{font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,3rem);font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-lg);text-align:center;position:relative;line-height:1.3}.homepage-section-title:after{content:"";display:block;width:clamp(60px,15vw,100px);height:4px;background-color:var(--color-secondary);margin:var(--spacing-md) auto 0;border-radius:2px}.homepage-subsection-title{font-family:Playfair Display,serif;font-size:clamp(1.5rem,4vw,2.2rem);font-weight:600;color:var(--color-text-light-mode);margin-top:var(--spacing-xxl);margin-bottom:var(--spacing-lg);text-align:center;position:relative;line-height:1.3}.homepage-subsection-title:after{content:"";display:block;width:clamp(50px,12vw,80px);height:3px;background-color:var(--color-secondary);margin:var(--spacing-sm) auto 0;border-radius:2px}.homepage-about-section p{font-size:clamp(1rem,2vw,1.15rem);line-height:1.7;margin-bottom:var(--spacing-md);color:var(--color-text-medium-light);text-align:left}.homepage-about-section p strong{color:var(--color-text-light-mode);font-weight:700}.about-content{display:flex;flex-direction:row;gap:var(--spacing-xl);align-items:center;margin-top:var(--spacing-xl)}.about-text{flex:2;text-align:left}.about-photo-wrapper-homepage{flex:1;display:flex;justify-content:center;align-items:center}.homepage-about-photo{width:clamp(150px,30vw,250px);height:clamp(150px,30vw,250px);object-fit:cover;border-radius:50%;border:4px solid var(--color-primary);box-shadow:0 4px 16px #0006}.featured-recipes-grid,.featured-resources-grid,.seasonal-recipes-grid,.journal-articles-grid,.homepage-featured-products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:clamp(1rem,3vw,2rem);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl);padding:0 var(--spacing-sm)}.seasonal-image-wrapper{margin:var(--spacing-xl) auto;max-width:700px;border-radius:var(--border-radius-md);overflow:hidden;box-shadow:0 4px 16px #0006}.seasonal-image-wrapper img{width:100%;height:auto;display:block}.seasonal-intro-text,.journal-intro-text,.email-capture-text,.homepage-subsection-intro{font-size:clamp(1rem,2vw,1.15rem);line-height:1.7;color:var(--color-text-medium-light);margin-bottom:var(--spacing-xl);text-align:center;padding:0 var(--spacing-md)}.video-embed-container{position:relative;width:100%;padding-bottom:56.25%;height:0;margin:var(--spacing-xl) auto;background-color:var(--color-background-dark-primary);border-radius:var(--border-radius-md);overflow:hidden;box-shadow:0 4px 16px #00000080}.video-embed-container iframe{position:absolute;inset:0;width:100%;height:100%;border:none}.resource-card-link-wrapper{text-decoration:none;display:block;height:100%;width:100%;transition:transform .3s ease}.resource-card-link-wrapper:hover{transform:translateY(-4px)}@media (max-width: 768px){.homepage-hero-section{height:65vh;min-height:450px}.hero-background-fixed{background-attachment:scroll;background-position:center 40%;background-size:cover}.about-content{flex-direction:column;gap:var(--spacing-lg)}.about-text,.homepage-about-section p{text-align:center}}@media (max-width: 480px){.homepage-hero-section{height:60vh;min-height:400px}.hero-background-fixed{background-attachment:scroll;background-position:center 35%;background-size:cover}.homepage-about-section,.homepage-featured-content,.homepage-email-capture-section,.homepage-seasonal-spotlight-section,.homepage-video-section,.homepage-curated-kitchen-section,.homepage-journal-section{padding:var(--spacing-lg);margin:var(--spacing-lg) var(--spacing-sm)}.featured-recipes-grid,.featured-resources-grid,.seasonal-recipes-grid,.journal-articles-grid,.homepage-featured-products-grid{grid-template-columns:1fr;padding:0}.btn{min-height:48px;padding:1rem 2rem;font-size:1rem}}@media (max-width: 768px) and (orientation: landscape){.homepage-hero-section{height:85vh}.hero-title{font-size:clamp(2rem,6vw,4rem)}}@media (prefers-reduced-motion: reduce){.hero-title,.hero-tagline,.hero-secondary-cta{animation:none}.hero-background-fixed{background-attachment:scroll}.resource-card-link-wrapper:hover{transform:none}}.recipe-card-content-wrapper{display:flex;flex-direction:column;height:100%;min-height:400px}.recipe-card{background-color:var(--color-background-dark-tertiary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:0 6px 18px var(--color-shadow-dark);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.recipe-card:hover{transform:translateY(-8px);box-shadow:0 12px 28px var(--color-shadow-dark)}.recipe-card-image{width:100%;height:240px;object-fit:cover;object-position:center;border-bottom:1px solid var(--color-border-dark);display:block;background-color:var(--color-background-dark-primary)}.card-info{padding:clamp(1rem,3vw,1.5rem);display:flex;flex-direction:column;flex-grow:1;min-height:0}.card-title{font-family:Playfair Display,serif;font-size:clamp(1.5rem,3vw,2rem);color:var(--color-text-light-mode);margin:0 0 var(--spacing-sm) 0;line-height:1.3;word-wrap:break-word;overflow-wrap:break-word;hyphens:manual;-webkit-hyphens:manual;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}.card-author{font-size:clamp(.85rem,2vw,.95rem);color:var(--color-text-medium-light);margin-bottom:var(--spacing-md);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-description{font-size:clamp(.9rem,2vw,1rem);color:var(--color-text-medium-light);margin-bottom:var(--spacing-lg);flex-grow:1;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;line-height:1.5;min-height:4.5em;max-height:4.5em}.card-footer{padding:clamp(.75rem,2vw,1rem);border-top:1px solid var(--color-border-dark);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;min-height:60px;margin-top:auto}.recipe-card-details{font-size:clamp(.8rem,1.8vw,.85rem);color:var(--color-text-medium-light);display:flex;flex-direction:column;gap:.25rem;flex:1 1 auto;min-width:0}.recipe-card-details p{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipe-card-rating{display:flex;align-items:center;margin-left:auto;flex-shrink:0}.recipe-card-rating.no-ratings{font-size:.85rem;color:var(--color-text-medium-light);font-style:italic}.star-rating-container{display:flex;align-items:center;gap:.25rem}.star-rating-container .stars{flex-shrink:0;display:flex;gap:2px}.star-rating-container .rating-info{white-space:nowrap;font-size:clamp(.75rem,1.5vw,.8rem);color:var(--color-text-medium-light);margin-left:.25rem}.recipe-card-view-button{width:100%;margin-top:var(--spacing-sm);min-height:44px}@media (max-width: 768px){.recipe-card-image{height:200px}.card-title{font-size:1.4rem;-webkit-line-clamp:2}.card-description{-webkit-line-clamp:3}.card-footer{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.recipe-card-rating{margin-left:0;width:100%}}@media (max-width: 480px){.recipe-card-content-wrapper{min-height:350px}.recipe-card-image{height:180px}.card-title{font-size:1.3rem;-webkit-line-clamp:2;min-height:2.6em}.card-description{font-size:.9rem;-webkit-line-clamp:2;min-height:3em;max-height:3em}.card-footer{padding:.75rem}.recipe-card-details,.recipe-card-rating,.recipe-card-view-button{width:100%}.star-rating-container .stars svg{width:18px;height:18px}}@media (prefers-reduced-motion: reduce){.recipe-card{transition:none}.recipe-card:hover{transform:none}}@media (prefers-contrast: high){.recipe-card{border:2px solid var(--color-border-dark)}.card-title{font-weight:900}}@media print{.recipe-card{break-inside:avoid;page-break-inside:avoid}.card-title,.card-description{display:block;-webkit-line-clamp:unset;overflow:visible;text-overflow:unset}}.star-rating-container{display:flex;align-items:center;gap:var(--spacing-xs)}.stars{display:flex;flex-shrink:0;gap:var(--spacing-xxs)}.star-wrapper{position:relative;display:flex;width:20px;height:20px;cursor:default}.star-wrapper.clickable{cursor:pointer}.star-icon{width:100%;height:100%;display:block}.star-icon-base{fill:var(--color-background-dark-tertiary);stroke:var(--color-text-medium-light)}.rating-info{white-space:nowrap;font-size:.85em;color:var(--color-text-medium-light);flex-shrink:0;min-width:0;text-align:left}.average-text{font-weight:600;color:var(--color-text-light-mode)}.total-ratings-text{color:var(--color-text-medium-light);margin-left:var(--spacing-xxs)}.no-ratings-text{color:var(--color-text-medium-light)}@media (max-width: 480px){.star-rating-container{gap:var(--spacing-xs);flex-wrap:wrap}.stars{gap:var(--spacing-xxs)}.star-wrapper{width:18px;height:18px}.rating-info{font-size:.8em;flex-basis:100%;text-align:center}}.resource-card{background-color:var(--color-background-dark-tertiary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);box-shadow:0 4px 10px var(--color-shadow-dark);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;height:450px}.resource-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px var(--color-shadow-dark);text-decoration:none!important}.resource-card-image{width:100%;height:180px;object-fit:cover;display:block;background-color:var( --color-background-dark-primary );border-bottom:1px solid var(--color-border-dark)}.resource-card-content{padding:var(--spacing-md);flex-grow:1;display:flex;flex-direction:column}.resource-card-title{font-family:Playfair Display,serif;font-size:1.4em;color:var(--color-primary);margin-top:0;margin-bottom:var(--spacing-xs);line-height:1.3}.resource-card-description{font-size:.95em;color:var(--color-text-medium-light);line-height:1.5;margin-bottom:var(--spacing-sm);flex-grow:1;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical}.resource-card-category{display:inline-block;background-color:#809b5233;color:var(--color-primary);padding:5px 10px;border-radius:15px;font-size:.8em;font-weight:700;text-transform:capitalize;align-self:flex-start;margin-top:var(--spacing-sm)}@media (max-width: 768px){.resource-card-image{height:150px}.resource-card-content{padding:var(--spacing-sm)}.resource-card-title{font-size:1.2em}}.resource-card-content{position:relative}.resource-card-feature-button{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background-color:#00000080;border:1px solid var(--color-primary);color:var(--color-primary);padding:5px;border-radius:50%;width:30px;height:30px;display:flex;justify-content:center;align-items:center;font-size:1.2em;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,transform .1s ease;z-index:2}.resource-card-feature-button:hover{background-color:var(--color-primary);color:var(--color-text-white);border-color:var(--color-primary);transform:scale(1.1)}.resource-card-feature-button.is-featured{background-color:var(--color-primary);color:var(--color-text-white);border-color:var(--color-primary)}.resource-card-feature-button.is-featured:hover{background-color:var(--color-primary-hover)}.product-card{background-color:var(--color-background-dark-tertiary);border-radius:var(--border-radius-md);overflow:hidden;box-shadow:0 4px 8px var(--color-shadow-dark);transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;height:100%;position:relative}.product-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px var(--color-shadow-hover)}.product-card-link{text-decoration:none;color:inherit;display:flex;flex-direction:column;flex-grow:1}.product-card-image{width:100%;height:200px;object-fit:cover;display:block}.product-card-content{padding:var(--spacing-md);flex-grow:1;display:flex;flex-direction:column;align-items:center;text-align:center}.product-card-title{font-family:Playfair Display,serif;font-size:1.4em;font-weight:600;color:var(--color-text-light-mode);margin-bottom:var(--spacing-xs);line-height:1.3;flex-grow:0}.product-card-tagline{font-size:.9em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-sm);line-height:1.4;font-style:italic;min-height:2.8em;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.product-card-price{font-size:1.2em;font-weight:700;color:var(--color-secondary-light);margin-top:auto;margin-bottom:var(--spacing-md)}.product-card-category{font-size:.85em;padding:.3em .6em;border-radius:var(--border-radius-pill);font-weight:600;text-transform:uppercase;white-space:nowrap;box-shadow:0 1px 3px #0003;display:inline-block;background-color:var(--color-tag-category-bg);color:var(--color-tag-category-text);margin-top:auto}@media (max-width: 768px){.product-card-image{height:180px}.product-card-title{font-size:1.3em}.product-card-price{font-size:1.1em}.product-card-category{font-size:.8em}}@media (max-width: 480px){.product-card-image{height:150px}.product-card-title{font-size:1.2em}.product-card-price{font-size:1em}.product-card-category{font-size:.75em}}.email-verification-banner{background-color:#ffa50026;color:var(--color-secondary);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-xl);text-align:center;font-size:1em;font-weight:500;border-bottom:1px solid var(--color-secondary);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);box-shadow:0 2px 8px #0003;width:100%;z-index:99;position:sticky;top:calc(var(--navbar-height, 0px) + var(--spacing-xl))}.email-verification-banner-message{margin:0;line-height:1.5;color:var(--color-text-medium-light)}.email-verification-banner-button{background-color:var( --color-secondary );color:var(--color-text-white);border:none;border-radius:var(--border-radius-sm);padding:var(--spacing-xs) var(--spacing-md);cursor:pointer;font-size:.9em;font-weight:600;transition:background-color .2s ease,transform .1s ease;white-space:nowrap}.email-verification-banner-button:hover:not(:disabled){background-color:var(--color-secondary-hover);transform:translateY(-1px)}.email-verification-banner-button:disabled{opacity:.6;cursor:not-allowed}.email-verification-banner-status-message{font-size:.85em;margin-top:var(--spacing-xs);padding:0 var(--spacing-sm);border-radius:var(--border-radius-sm)}.email-verification-banner-status-message.success{color:var(--color-primary)}.email-verification-banner-status-message.error{color:var(--color-accent-red)}.email-verification-container-page{max-width:600px;margin:var(--spacing-xxl) auto;padding:var(--spacing-xxl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);text-align:center;font-family:Nunito,sans-serif;min-height:300px;display:flex;flex-direction:column;justify-content:center;align-items:center}.verification-header{font-family:Playfair Display,serif;font-size:2.8em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl)}.verification-success,.verification-error{margin-top:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md);align-items:center}.loading-message,.success-message,.error-message{font-size:1.1em;line-height:1.6}.success-message{color:var(--color-success);font-weight:600}.error-message{color:var(--color-error);font-weight:600}@media (max-width: 768px){.email-verification-banner{padding:var(--spacing-sm);font-size:.9em;flex-direction:column}.email-verification-banner-button{font-size:.8em;padding:var(--spacing-xs) var(--spacing-sm)}}.journal-card{background-color:var(--color-background-dark-tertiary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);box-shadow:0 4px 12px var(--color-shadow-dark);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;height:100%}.journal-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px var(--color-shadow-hover)}.journal-card-image{width:100%;height:200px;object-fit:cover;display:block}.journal-card-content{padding:var(--spacing-md);display:flex;flex-direction:column;flex-grow:1;min-height:180px}.journal-card-title{font-family:Playfair Display,serif;font-size:1.5em;font-weight:600;color:var(--color-text-light-mode);margin-bottom:var(--spacing-sm);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.journal-card-title a{color:inherit;text-decoration:none}.journal-card-title a:hover{color:var(--color-primary)}.journal-card-meta{font-size:.9em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-sm);flex-shrink:0}.journal-card-excerpt{font-size:1em;color:var(--color-text-light-mode);line-height:1.5;margin-bottom:var(--spacing-md);flex-grow:1;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical}.journal-card-tags{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-md);display:flex;flex-wrap:wrap;gap:var(--spacing-xs);flex-shrink:0}.journal-card-tag{font-size:.8em;padding:.3em .7em;border-radius:var(--border-radius-pill);font-weight:600;text-transform:uppercase;white-space:nowrap}.journal-card-tag.category{background-color:var(--color-tag-category);color:var(--color-tag-text-category)}.journal-card-tag.tag{background-color:var(--color-tag-tag);color:var(--color-tag-text-tag)}.journal-card-button{margin-top:auto}.journal-card-link:hover{text-decoration:none!important}.recipes-page-container{max-width:1400px;margin:var(--spacing-lg) auto;padding:var(--spacing-lg);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);font-family:Nunito,sans-serif;position:relative}.recipes-header{font-family:Playfair Display,serif;text-align:center;color:var(--color-text-light-mode);margin-bottom:var(--spacing-xl);font-size:3.2em;font-weight:700;letter-spacing:.02em;padding-top:var(--spacing-xl)}.no-recipes-message{text-align:center;font-size:1.2em;color:var(--color-text-medium-light);padding:var(--spacing-xl);background-color:var(--color-background-dark-tertiary);border-radius:var(--border-radius-md);margin-top:var(--spacing-xl)}.search-filter-controls{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);padding:var(--spacing-md);background-color:var(--color-background-dark-tertiary);border-radius:var(--border-radius-lg);box-shadow:0 2px 8px var(--color-shadow-dark);max-width:600px;margin-left:auto;margin-right:auto;align-items:center}.search-input-wrapper{display:flex;width:100%;gap:var(--spacing-sm);align-items:center}.search-input{flex-grow:1;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-sm);font-size:1em;color:var(--color-text-light-mode);background-color:var(--color-background-dark-primary);transition:border-color .2s ease,box-shadow .2s ease}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #809b5266}.clear-search-button{background-color:var(--color-accent-red);color:var(--color-text-white);border:none;border-radius:50%;width:30px;height:30px;display:flex;justify-content:center;align-items:center;font-size:.9em;cursor:pointer;transition:background-color .2s ease;flex-shrink:0}.clear-search-button:hover{background-color:var(--color-accent-red-hover)}@media (min-width: 768px){.search-filter-controls{flex-direction:row;justify-content:space-between}.search-input-wrapper{flex-grow:1;max-width:400px}}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,320px));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.recipe-card{background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-md);overflow:hidden;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;display:flex;flex-direction:column;height:100%;width:100%}.recipe-card:hover{transform:translateY(-5px);box-shadow:0 6px 16px #0000004d}.recipe-card-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%;text-decoration:none!important}.recipe-card-link>div{display:flex;flex-direction:column;height:100%}@media (max-width: 992px){.recipe-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--spacing-md)}}@media (max-width: 768px){.recipes-page-container{padding:0 var(--spacing-md)}.recipes-header{font-size:2.5em}.recipe-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-md)}}@media (max-width: 480px){.recipe-grid{grid-template-columns:1fr}}@media (max-width: 768px){.pagination-controls{flex-direction:column;gap:var(--spacing-md)}.pagination-info{margin-right:0;margin-bottom:var(--spacing-sm)}.page-numbers{flex-wrap:wrap;justify-content:center}}.loading-message,.error-message{text-align:center;font-size:1.2em;padding:var(--spacing-xl);margin-top:var(--spacing-xl);border-radius:var(--border-radius-md);background-color:var(--color-background-dark-tertiary);color:var(--color-text-light-mode)}.error-message{color:var(--color-accent-red);background-color:#b54f4f33;border:1px solid var(--color-accent-red)}.subtle-loader{text-align:center;font-size:.9em;color:var(--color-primary);margin-top:var(--spacing-md)}.subtle-loader:after{content:"";display:inline-block;width:1em;height:1em;border:2px solid var(--color-primary);border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite;margin-left:var(--spacing-sm);vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.filter-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(var(--color-shadow-dark-rgb),.8);z-index:1000;opacity:0;pointer-events:none;transition:opacity .3s ease-out}.filter-overlay.is-open{opacity:1;pointer-events:auto}.filter-overlay-content-wrapper{background-color:var( --color-background-dark-secondary );padding:var(--spacing-lg);border-radius:var(--border-radius-lg) 0 0 var(--border-radius-lg);box-shadow:0 5px 15px var(--color-shadow-dark);width:85%;max-width:400px;height:100%;position:absolute;right:0;left:auto;top:0;display:flex;flex-direction:column;box-sizing:border-box;transform:translate(100%);transition:transform .3s ease-out}.filter-overlay.is-open .filter-overlay-content-wrapper{transform:translate(0)}.filter-overlay-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-border-dark);padding-bottom:var(--spacing-md);flex-shrink:0}.filter-overlay-header h2{margin:0;color:var(--color-text-light-mode);font-family:Playfair Display,serif;font-size:1.8em}.close-filter-button{background:none;border:none;font-size:2em;cursor:pointer;color:var(--color-text-medium-light);padding:var(--spacing-xs) var(--spacing-sm);transition:color .2s ease}.close-filter-button:hover{color:var(--color-text-white)}.filter-overlay-content{flex-grow:1;padding-top:var(--spacing-md);padding-bottom:var(--spacing-md);overflow-y:auto}.filter-options-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}.filter-group{background-color:var( --color-background-dark-tertiary );border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);padding:var(--spacing-md)}.filter-group h3{margin-top:0;color:var(--color-primary);font-size:1.2em;border-bottom:1px solid var(--color-primary);padding-bottom:var(--spacing-xs);margin-bottom:var(--spacing-md);font-family:Playfair Display,serif}.filter-checkbox-label{display:flex;align-items:center;margin-bottom:var(--spacing-xs);font-size:.95em;color:var(--color-text-light-mode);cursor:pointer;padding:var(--spacing-xs) 0;transition:background-color .15s ease;border-radius:var(--border-radius-sm)}.filter-checkbox-label:hover{background-color:rgba(var(--color-primary-rgb),.1)}.filter-checkbox-label input[type=checkbox]{margin-right:var(--spacing-sm);accent-color:var( --color-primary );transform:scale(1.1);flex-shrink:0}.filter-overlay-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-lg);border-top:1px solid var(--color-border-dark);background-color:var( --color-background-dark-tertiary );border-bottom-left-radius:var( --border-radius-lg );border-bottom-right-radius:var( --border-radius-lg )}.filter-overlay-footer .btn{padding:var(--spacing-sm) var(--spacing-md);font-size:.9em;flex-shrink:0;white-space:nowrap;width:auto}.filter-overlay-footer .btn.btn-secondary.btn-outline{color:var(--color-text-medium-light);border-color:var(--color-border-dark)}.filter-overlay-footer .btn.btn-outline-red{color:var(--color-accent-red);border-color:var(--color-accent-red)}@media (max-width: 600px){.filter-overlay-footer{flex-direction:column;align-items:stretch;gap:var(--spacing-sm);padding:var(--spacing-md)}.filter-overlay-footer .btn{width:100%;font-size:1em;padding:var(--spacing-md) var(--spacing-lg)}}.filter-overlay-content::-webkit-scrollbar-thumb{background-color:var(--color-border-dark);border-radius:10px}.filter-overlay-content::-webkit-scrollbar-track{background-color:var( --color-background-dark-tertiary )}.filter-overlay-content::-webkit-scrollbar{width:8px}@media (max-width: 768px){.filter-overlay-content-wrapper{width:90%}}@media (max-width: 480px){.filter-overlay-content-wrapper{width:100%;border-radius:0}.filter-overlay-header h2,.close-filter-button{font-size:1.5em}.filter-group h3{font-size:1em}.filter-checkbox-label{font-size:.9em}.filter-overlay-footer{flex-direction:column;gap:var(--spacing-sm)}}.filter-group-ingredients{position:relative}.ingredient-autocomplete-wrapper{position:relative;width:100%;margin-bottom:var(--spacing-md)}.ingredient-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-sm);background-color:var(--color-background-dark-primary);color:var(--color-text-light-mode);font-size:1em;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease}.ingredient-input::placeholder{color:var(--color-text-medium-light);opacity:.7}.ingredient-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #809b5266}.ingredient-suggestions-list{list-style:none;padding:0;margin:0;position:absolute;top:100%;left:0;right:0;background-color:var( --color-background-dark-secondary );border:1px solid var(--color-border-dark);border-radius:0 0 var(--border-radius-sm) var(--border-radius-sm);max-height:200px;overflow-y:auto;z-index:50;box-shadow:0 4px 10px #0000004d}.ingredient-suggestion-item{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;color:var(--color-text-light-mode);font-size:.95em;transition:background-color .15s ease}.ingredient-suggestion-item:hover{background-color:var( --color-background-dark-tertiary );color:var(--color-primary)}.selected-ingredients-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.ingredient-tag{display:flex;align-items:center;background-color:var( --color-tag-main-ingredient-bg );color:var(--color-tag-main-ingredient-text);padding:.4em .8em;border-radius:var(--border-radius-pill);font-size:.85em;font-weight:600;white-space:nowrap;box-shadow:0 1px 3px #0003}.remove-ingredient-tag-button{background:none;border:none;color:inherit;margin-left:var(--spacing-xs);font-size:.9em;cursor:pointer;padding:0;line-height:1;transition:opacity .2s ease;opacity:.7}.remove-ingredient-tag-button:hover{opacity:1}@media (max-width: 480px){.ingredient-input{padding:var(--spacing-sm);font-size:.9em}.ingredient-suggestion-item{font-size:.85em;padding:var(--spacing-xs) var(--spacing-md)}.ingredient-tag{font-size:.8em;padding:.3em .7em}}.single-recipe-comment-item{background-color:var(--color-background-dark-tertiary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md);overflow:hidden;color:var(--color-text-light-mode)}.single-recipe-comment-header{display:flex;align-items:center;justify-content:space-between;font-size:.9em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-sm)}.single-recipe-comment-header strong{margin-right:var(--spacing-xs);color:var(--color-text-light-mode)}.single-recipe-comment-delete-button{background:none;border:none;color:var(--color-accent-red);font-size:1.2em;cursor:pointer;padding:0;border-radius:50%;width:24px;height:24px;display:flex;justify-content:center;align-items:center;transition:color .2s ease,background-color .2s ease;margin-left:var(--spacing-sm)}.single-recipe-comment-delete-button:hover{background-color:#b54f4f33;color:var(--color-accent-red-hover)}.single-recipe-comment-text{font-size:1em;color:var(--color-text-medium-light);line-height:1.4;margin-bottom:var(--spacing-md)}.single-recipe-comment-reply-button{padding:var(--spacing-xs) var(--spacing-sm);font-size:.9em;align-self:flex-start;background-color:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.single-recipe-comment-reply-button:hover{background-color:var(--color-primary-hover);color:var(--color-text-white);border-color:var(--color-primary-hover)}.single-recipe-reply-form{border-top:1px dashed var(--color-border-dark);padding-top:var(--spacing-md);margin-top:var(--spacing-md);margin-left:var(--spacing-lg);background-color:var( --color-background-dark-primary );border-radius:var(--border-radius-md);padding:var(--spacing-md);box-shadow:inset 0 1px 4px #0003}.single-recipe-reply-form .single-recipe-comment-input{width:100%;margin-bottom:var(--spacing-sm)}.single-recipe-reply-form .btn.btn-primary.btn-sm{width:auto;align-self:flex-end}.single-recipe-comment-replies{list-style-type:none;padding-left:var(--spacing-xl);margin-top:var(--spacing-md);position:relative}.single-recipe-comment-replies:before{content:"";position:absolute;left:calc(var(--spacing-xl) / 2);top:0;bottom:0;width:2px;background-color:var(--color-border-dark);border-radius:1px}.single-recipe-comment-replies .single-recipe-comment-item{background-color:var( --color-background-dark-secondary );border-color:var(--color-border-dark);margin-top:var(--spacing-md)}@media (max-width: 480px){.single-recipe-comment-item{padding:var(--spacing-sm)}.single-recipe-comment-text{font-size:.9em}.single-recipe-comment-replies{padding-left:var(--spacing-lg)}.single-recipe-comment-replies:before{left:calc(var(--spacing-lg) / 2)}}.single-recipe-container{max-width:1000px;margin:var(--spacing-xxl) auto;padding:0;background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);font-family:Nunito,sans-serif;position:relative;overflow:hidden}.back-to-recipes-button.top-back-button{position:absolute;top:var(--spacing-md);left:var(--spacing-lg);z-index:20;font-size:.9em;padding:var(--spacing-sm) var(--spacing-md)}.single-recipe-hero-media{position:relative;width:100%;min-height:400px;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg)}.single-recipe-hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0006;z-index:1}.single-recipe-header{font-family:Playfair Display,serif;font-size:4em;font-weight:700;color:var(--color-text-white);text-align:center;max-width:90%;z-index:2;text-shadow:0px 4px 10px rgba(0,0,0,.5);margin:0}.single-recipe-author{font-size:1.1em;color:var(--color-text-white);text-align:center;margin-top:var(--spacing-sm);z-index:2}.single-recipe-header.no-hero-image{color:var(--color-text-light-mode);text-shadow:none;font-size:2.8em;padding:var(--spacing-xl) var(--spacing-lg) 0;margin-bottom:var(--spacing-md);text-align:center}.single-recipe-author.no-hero-image{color:var(--color-text-medium-light);margin-top:0;text-align:center;padding-bottom:var(--spacing-lg)}.single-recipe-action-buttons{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);margin-top:calc(-1 * var(--spacing-xxl));margin-bottom:var(--spacing-xxl);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-background-dark-tertiary);border-radius:var(--border-radius-lg);box-shadow:0 4px 10px #0003;max-width:800px;margin-left:auto;margin-right:auto;position:relative;z-index:15}.single-recipe-button-group{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--spacing-md);width:100%}.single-recipe-main-content{padding-top:100px;padding-left:var( --spacing-lg );padding-right:var(--spacing-lg);padding-bottom:var( --spacing-xxl );position:relative;box-sizing:border-box;display:flex;flex-direction:column;align-items:center}.recipe-media{width:100%;margin-bottom:var(--spacing-xl);display:flex;justify-content:center}.single-recipe-image{max-width:100%;height:auto;display:block;border-radius:var(--border-radius-md);border:1px solid var(--color-border-dark);box-shadow:0 4px 10px #0003}.single-recipe-video-container{position:relative;width:100%;padding-bottom:56.25%;background-color:var(--color-background-dark-primary);border-radius:var(--border-radius-md);overflow:hidden;box-shadow:0 4px 10px #0003}.single-recipe-video{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.single-recipe-description{font-size:1.1em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-xl);font-style:italic;text-align:center;padding:0 var(--spacing-md);max-width:800px}.single-recipe-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl);padding:var(--spacing-md);background-color:var(--color-background-dark-tertiary);border-radius:var(--border-radius-md);border:1px solid var(--color-border-dark);width:100%;max-width:800px}.single-recipe-detail-item{margin:0;font-size:1em;color:var(--color-text-medium-light);text-align:center}.single-recipe-detail-item strong{color:var(--color-text-light-mode)}.recipe-ratings-section{text-align:center;margin:var(--spacing-md) auto var(--spacing-xl)}.single-recipe-section{width:100%;max-width:800px;margin-bottom:var(--spacing-xxl);padding:0 var(--spacing-lg);box-sizing:border-box}.single-recipe-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.single-recipe-section-header{font-family:Playfair Display,serif;color:var(--color-primary);font-size:2.2em;margin-bottom:var(--spacing-md);text-align:center;position:relative;padding-bottom:var(--spacing-sm)}.single-recipe-section-header:after{content:"";display:block;width:60px;height:2px;background-color:var(--color-secondary);margin:var(--spacing-sm) auto 0}.serving-multiplier-controls{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-md);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:1px dashed var(--color-border-dark);width:100%;max-width:400px;margin-left:auto;margin-right:auto}.multiplier-label{font-weight:600;color:var(--color-text-light-mode);margin-right:var(--spacing-xs);font-size:1.1em}.multiplier-button-group{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);align-items:center}.multiplier-button{padding:var(--spacing-xs) var(--spacing-md);font-size:.9em;min-width:50px;text-align:center}.multiplier-button.active{background-color:var(--color-primary);color:var(--color-text-white);border-color:var(--color-primary)}.multiplier-button:hover:not(.active){background-color:rgba(var(--color-primary-rgb),.1)}.servings-text{font-size:1em;color:var(--color-text-medium-light);margin-left:var(--spacing-sm);white-space:nowrap}.ingredient-section-group{margin-bottom:var(--spacing-md)}.instruction-section-title{font-family:Playfair Display,serif;font-size:1.4em;font-weight:700;color:var(--color-primary-light);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border-dark);padding-bottom:var(--spacing-sm)}.single-recipe-ingredient-list,.single-recipe-instructions-list{list-style-type:none;padding-left:0;font-size:1.1em;color:var(--color-text-medium-light);line-height:1.6}.single-recipe-ingredient-item,.single-recipe-instruction-step{margin-bottom:var(--spacing-sm);position:relative;padding-left:var(--spacing-lg)}.single-recipe-ingredient-item:before{content:"•";position:absolute;left:0;color:var(--color-secondary);font-weight:700}.single-recipe-instructions-list{counter-reset:instruction-step}.single-recipe-instruction-step:before{counter-increment:instruction-step;content:counter(instruction-step) ".";position:absolute;left:0;color:var(--color-secondary);font-weight:700;margin-right:var(--spacing-xs)}.single-recipe-tags-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-background-dark-tertiary);border-radius:var(--border-radius-md);border:1px solid var(--color-border-dark)}.single-recipe-tag-group strong{color:var(--color-text-medium-light);margin-bottom:var(--spacing-xs);font-size:.9em;text-transform:uppercase;letter-spacing:.05em}.single-recipe-tags-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.single-recipe-tag{font-size:.85em;padding:.4em .8em;border-radius:var(--border-radius-pill);font-weight:600;text-transform:uppercase;white-space:nowrap;box-shadow:0 1px 3px #0003}.single-recipe-tag.category{background-color:var(--color-tag-category-bg);color:var(--color-tag-category-text)}.single-recipe-tag.cuisine{background-color:var(--color-tag-cuisine-bg);color:var(--color-tag-cuisine-text)}.single-recipe-tag.season{background-color:var(--color-tag-season-bg);color:var(--color-tag-season-text)}.single-recipe-tag.dietary{background-color:var(--color-tag-dietary-bg);color:var(--color-tag-dietary-text)}.single-recipe-tag.method{background-color:var(--color-tag-method-bg);color:var(--color-tag-method-text)}.single-recipe-tag.main-ingredient{background-color:var(--color-tag-main-ingredient-bg);color:var(--color-tag-main-ingredient-text)}.single-recipe-tag.difficulty{background-color:var(--color-tag-difficulty-bg);color:var(--color-tag-difficulty-text)}.single-recipe-tag.occasion{background-color:var(--color-tag-occasion-bg);color:var(--color-tag-occasion-text)}.single-recipe-add-comment{background-color:var(--color-background-dark-tertiary);padding:var(--spacing-md);border-radius:var(--border-radius-md);border:1px solid var(--color-border-dark);margin-top:var(--spacing-xl)}.single-recipe-comment-input{width:100%;padding:var(--spacing-md);margin-bottom:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);font-size:1em;color:var(--color-text-light-mode);background-color:var(--color-background-dark-primary);resize:vertical}.single-recipe-comment-input::placeholder{color:var(--color-text-medium-light);opacity:.7}.single-recipe-comment-list{list-style-type:none;padding:0;margin:0}.single-recipe-section-header.comment-header{margin-top:var(--spacing-xxl)}.markdown-content{font-size:1.1em;color:var(--color-text-medium-light);line-height:1.8}.instruction-paragraph{margin-bottom:var(--spacing-md);color:var(--color-text-medium-light)}.instruction-emphasis{color:var(--color-primary-light);font-weight:700}.instruction-note{color:var(--color-text-medium);font-style:italic}.recipe-tip{background-color:var(--color-background-dark-tertiary);border-left:4px solid var(--color-secondary);padding:var(--spacing-md);margin:var(--spacing-lg) 0;border-radius:var(--border-radius-md);font-style:italic;color:var(--color-text-light-mode)}.recipe-tip p{margin:0}.markdown-content a{color:var(--color-primary-light);text-decoration:underline;transition:color .2s ease}.markdown-content a:hover{color:var(--color-primary)}.markdown-content code{background-color:var(--color-background-dark-tertiary);padding:.2em .4em;border-radius:var(--border-radius-sm);font-family:Courier New,monospace;font-size:.9em;color:var(--color-secondary)}.markdown-content hr{border:none;border-top:2px dashed var(--color-border-dark);margin:var(--spacing-xl) 0}.back-to-recipes-button{display:block;width:max-content;margin:var(--spacing-xl) auto}@media (max-width: 768px){.single-recipe-container{margin:var(--spacing-lg) auto;padding:0}.single-recipe-hero-media{min-height:300px}.single-recipe-header{font-size:3em}.single-recipe-author{font-size:1em}.single-recipe-content-main{padding:var(--spacing-xl) var(--spacing-md)}.single-recipe-header.no-hero-image{font-size:2.5em;padding:var(--spacing-lg) var(--spacing-md) 0}.single-recipe-author.no-hero-image{font-size:.9em}}@media (max-width: 480px){.single-recipe-hero-media{min-height:250px}.single-recipe-header{font-size:2.2em}.single-recipe-author{font-size:.85em}.single-recipe-content-main{padding:var(--spacing-lg) var(--spacing-sm)}.single-recipe-header.no-hero-image{font-size:2em;padding:var(--spacing-md) var(--spacing-sm) 0}}.edit-recipe-container{max-width:1000px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var( --color-background-dark-secondary );border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);font-family:Nunito,sans-serif;color:var(--color-text-light-mode)}.edit-recipe-header{font-family:Playfair Display,serif;text-align:center;color:var(--color-primary);margin-bottom:var(--spacing-xl);font-size:3em;font-weight:700}.edit-recipe-form{display:flex;flex-direction:column}.edit-recipe-section{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var( --color-background-dark-tertiary );box-shadow:0 4px 10px #0003}.edit-recipe-section-header{font-family:Playfair Display,serif;color:var(--color-primary);font-size:1.8em;margin-bottom:var(--spacing-md);border-bottom:2px solid var(--color-primary);padding-bottom:var(--spacing-sm)}.edit-recipe-form-group{margin-bottom:var(--spacing-md);display:flex;flex-direction:column}.edit-recipe-label{margin-bottom:var(--spacing-xs);font-weight:600;color:var(--color-text-light-mode);font-size:.95em}.edit-recipe-input,.edit-recipe-textarea,.edit-recipe-select-multi{padding:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);font-size:1em;box-sizing:border-box;width:100%;background-color:var( --color-background-dark-primary );color:var(--color-text-light-mode);font-family:Nunito,sans-serif;box-shadow:inset 0 1px 3px #0000001a;transition:border-color .2s ease,box-shadow .2s ease}.edit-recipe-textarea{resize:vertical;min-height:100px}.edit-recipe-input::placeholder,.edit-recipe-textarea::placeholder{color:var(--color-text-medium-light);opacity:.7}.edit-recipe-input:focus,.edit-recipe-textarea:focus,.edit-recipe-select-multi:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #809b5266,inset 0 1px 3px #0003}.edit-recipe-time-input-group{display:flex;align-items:center;gap:var(--spacing-sm)}.edit-recipe-time-input{width:80px;text-align:center}.edit-recipe-time-separator{font-weight:600;color:var(--color-text-medium-light);white-space:nowrap}.edit-recipe-ingredient-row{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);align-items:center;flex-wrap:wrap}.edit-recipe-ingredient-input{flex:1;min-width:80px;padding:var(--spacing-xs);font-size:.9em}.edit-recipe-ingredient-input[name=quantity]{flex:0 0 60px}.edit-recipe-ingredient-input[name=unit]{flex:0 0 100px}.edit-recipe-message{text-align:center;margin-top:var(--spacing-md);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);font-weight:500;font-size:.95em;margin-left:auto;margin-right:auto;max-width:600px}.edit-recipe-message:not(.error){color:var(--color-success);background-color:#5cb85c26;border:1px solid var(--color-success)}.edit-recipe-message.error{color:var(--color-error);background-color:#d9534f26;border-color:var(--color-error)}.edit-recipe-select-multi{min-height:120px;cursor:pointer}@media (max-width: 768px){.edit-recipe-container{padding:var(--spacing-md)}.edit-recipe-header{font-size:2.2em}.edit-recipe-section-header{font-size:1.5em}.edit-recipe-ingredient-row{flex-direction:column;align-items:stretch}.edit-recipe-ingredient-input,.edit-recipe-ingredient-input[name=quantity],.edit-recipe-ingredient-input[name=unit],.edit-recipe-ingredient-input[name=notes]{width:100%!important;min-width:auto;flex:none}.edit-recipe-remove-button{width:100%}.edit-recipe-add-button,.edit-recipe-submit-button{width:100%;margin-top:var(--spacing-md)}}@media (max-width: 480px){.edit-recipe-header{font-size:1.8em}.edit-recipe-section-header{font-size:1.2em}.edit-recipe-input,.edit-recipe-textarea,.edit-recipe-select-multi{font-size:.9em;padding:var(--spacing-sm)}.edit-recipe-time-input{width:60px}}.edit-recipe-remove-section-button{margin-top:var(--spacing-sm);margin-left:auto;display:block;width:fit-content}@media (max-width: 768px){.edit-recipe-remove-section-button{width:100%;margin-left:0}}.edit-recipe-action-buttons{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-xl)}@media (max-width: 768px){.edit-recipe-action-buttons{flex-direction:column;align-items:stretch}.edit-recipe-action-buttons .btn{width:100%}}.favorites-container{max-width:1100px;margin-top:calc(var(--navbar-height) + var(--spacing-xl));margin-bottom:var(--spacing-xxl);margin-left:auto;margin-right:auto;width:100%;box-sizing:border-box;padding:var(--spacing-xxl) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 10px 30px var(--color-shadow-dark);font-family:Nunito,sans-serif;position:relative;display:flex;flex-direction:column;align-items:center}.favorites-header{font-family:Playfair Display,serif;text-align:center;color:var(--color-text-light-mode);margin-bottom:var(--spacing-xl);font-size:3em;font-weight:700;position:relative;padding-bottom:var(--spacing-sm)}.favorites-header:after{content:"";display:block;width:80px;height:4px;background-color:var(--color-secondary);margin:var(--spacing-sm) auto 0;border-radius:2px}.favorites-controls{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);justify-content:center;background-color:var(--color-background-dark-tertiary);padding:var(--spacing-md);border-radius:var(--border-radius-md);box-shadow:0 4px 12px var(--color-shadow-dark);width:100%;max-width:600px}.favorites-search-input{flex-grow:1;max-width:400px;padding:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);font-size:1em;color:var(--color-text-light-mode);background-color:var(--color-background-dark-primary);transition:border-color .2s ease,box-shadow .2s ease}.favorites-search-input::placeholder{color:var(--color-text-medium-light);opacity:.8}.favorites-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #809b5266}.no-favorites-message,.loading-message,.error-message,.message-info{text-align:center;font-size:1.2em;color:var(--color-text-medium-light);padding:var(--spacing-xl);background-color:var(--color-background-dark-tertiary);border-radius:var(--border-radius-md);margin-top:var(--spacing-lg);width:100%;max-width:600px;box-shadow:0 2px 8px var(--color-shadow-dark)}.loading-message{color:var(--color-primary)}.error-message{color:var(--color-accent-red);border:1px solid var(--color-accent-red);background-color:#b54f4f33}.message-info{color:var(--color-accent-blue);border:1px solid var(--color-accent-blue);background-color:#70a0af33}.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-xl);margin-top:var(--spacing-xl);width:100%;justify-content:center}.favorite-card{background-color:var(--color-background-dark-tertiary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease;height:100%;box-shadow:0 6px 18px var(--color-shadow-dark)}.favorite-card:hover{transform:translateY(-8px);box-shadow:0 12px 30px var(--color-shadow-dark)}.favorite-card-image{width:100%;height:220px;object-fit:cover;display:block}.favorite-card-content{padding:var(--spacing-lg);flex-grow:1;display:flex;flex-direction:column}.favorite-card-title{font-family:Playfair Display,serif;font-size:1.6em;color:var(--color-primary);margin-top:0;margin-bottom:var(--spacing-sm);line-height:1.3}.favorite-card-author{font-size:.9em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-md)}.favorite-card-details{display:flex;justify-content:space-between;font-size:.95em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-md);flex-wrap:wrap}.favorite-card-details p{margin:0;padding-right:var(--spacing-sm)}.favorite-card-description{font-size:1em;color:var(--color-text-medium-light);margin-top:var(--spacing-sm);line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical}.favorites-back-button{margin-top:var(--spacing-xxl)}@media (max-width: 1150px){.favorites-container{max-width:90%;margin-left:auto;margin-right:auto}}@media (max-width: 768px){.favorites-container{padding:var(--spacing-xl);margin-top:calc(var(--navbar-height, 0px) + var(--spacing-md))}.favorites-header{font-size:2em;margin-bottom:var(--spacing-lg)}.favorites-controls{flex-direction:column;max-width:100%;padding:var(--spacing-sm)}.favorites-search-input{max-width:100%}.favorites-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-lg)}.favorite-card-image{height:180px}.favorite-card-title{font-size:1.3em}.favorites-back-button{margin-top:var(--spacing-xl)}}@media (max-width: 480px){.favorites-container{padding:var(--spacing-md)}.favorites-header{font-size:1.8em}.favorites-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.favorite-card-image{height:150px}.favorite-card-title{font-size:1.2em}.favorite-card-content{padding:var(--spacing-md)}.favorites-back-button{width:90%}}.video-index-container{max-width:1200px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.video-index-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.video-controls{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);flex-wrap:wrap}.search-input-wrapper{position:relative;flex-grow:1;max-width:400px}.search-input{width:100%;padding:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var(--color-background-dark-primary);color:var(--color-text-light-mode);font-size:1em;box-sizing:border-box;box-shadow:inset 0 1px 3px #0000001a;transition:border-color .2s ease,box-shadow .2s ease}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.4),inset 0 1px 3px #0003}.search-input::placeholder{color:var(--color-text-medium-light);opacity:.7}.clear-search-button{position:absolute;right:var(--spacing-xs);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-text-medium-light);font-size:1.2em;cursor:pointer;padding:var(--spacing-xs);transition:color .2s ease}.clear-search-button:hover{color:var(--color-accent-red)}.filter-select-wrapper{flex-shrink:0}.type-filter-select{padding:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var(--color-background-dark-primary);color:var(--color-text-light-mode);font-size:1em;cursor:pointer;box-sizing:border-box}.type-filter-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.4)}.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.video-card{background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-md);overflow:hidden;box-shadow:0 4px 12px #0003;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;display:flex;flex-direction:column;height:100%}.video-card:hover{transform:translateY(-5px);box-shadow:0 6px 16px #0000004d}.video-card-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.video-card-link:hover{text-decoration:none}.video-embed-wrapper{position:relative;width:100%;padding-bottom:56.25%;height:0;overflow:hidden;background-color:#000}.video-embed-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.video-card-title{font-family:Playfair Display,serif;font-size:1.4em;font-weight:600;color:var(--color-text-light-mode);margin:var(--spacing-md) var(--spacing-md) var(--spacing-sm);text-align:left}.video-card-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin:0 var(--spacing-md) var(--spacing-md);font-size:.85em;color:var(--color-text-medium-light);text-align:left}.video-type-tag{background-color:var(--color-primary);color:var(--color-text-white);padding:var(--spacing-xxs) var(--spacing-sm);border-radius:var(--border-radius-sm);text-transform:uppercase;font-weight:600}.video-type-tag.quick{background-color:var(--color-tag-cuisine-bg);color:var(--color-tag-cuisine-text)}.video-type-tag.informative{background-color:var(--color-tag-season-bg);color:var(--color-tag-season-text)}.video-type-tag.episode{background-color:var(--color-tag-main-ingredient-bg);color:var(--color-tag-main-ingredient-text)}.video-duration,.video-author{color:var(--color-text-medium-light);font-weight:400}.video-card-description{font-size:.95em;color:var(--color-text-medium-light);margin:var(--spacing-sm) var(--spacing-md) var(--spacing-md);text-align:left}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl);flex-wrap:wrap}.pagination-info{margin-right:var(--spacing-md);font-size:1em;color:var(--color-text-medium-light);white-space:nowrap}.page-numbers{display:flex;gap:var(--spacing-xs);margin:0 var(--spacing-sm)}.pagination-controls .btn{padding:var(--spacing-sm) var(--spacing-md);font-size:.9em}.pagination-controls .btn.active{background-color:var(--color-primary);color:var(--color-text-white);border-color:var(--color-primary)}.pagination-controls .btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 1024px){.video-index-container{padding:var(--spacing-lg) var(--spacing-md)}}@media (max-width: 768px){.video-index-header{font-size:2.2em}.video-controls{flex-direction:column;align-items:stretch}.search-input-wrapper,.type-filter-select{max-width:100%;width:100%}.video-grid{grid-template-columns:1fr}.video-card-title{font-size:1.2em}}@media (max-width: 480px){.video-index-header{font-size:1.8em}.video-index-container{padding:var(--spacing-md)}.video-card{margin-bottom:var(--spacing-md)}}.single-video-container{max-width:900px;margin:var(--spacing-lg) auto;padding:var(--spacing-lg);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);font-family:Nunito,sans-serif;position:relative}.top-back-button{position:absolute;top:var(--spacing-md);left:var(--spacing-lg);z-index:10}.single-video-header{font-family:Playfair Display,serif;text-align:center;color:var(--color-text-light-mode);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-sm);font-size:2.5em}.single-video-author{text-align:center;color:var(--color-text-medium-light);font-size:.95em;margin-bottom:var(--spacing-lg)}.single-video-admin-actions{display:flex;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.single-video-embed-wrapper{position:relative;width:100%;padding-bottom:56.25%;margin-bottom:var(--spacing-xl);background-color:var(--color-background-dark-primary);border-radius:var(--border-radius-md);overflow:hidden;box-shadow:0 4px 10px #0000004d}.single-video-iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.single-video-description{font-size:1.1em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-xl);line-height:1.5;padding:0 var(--spacing-md)}.single-video-meta-details{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);padding:var(--spacing-md);background-color:var(--color-background-dark-tertiary);border-radius:var(--border-radius-md);border:1px solid var(--color-border-dark);color:var(--color-text-medium-light);font-size:.95em}.single-video-meta-details strong{color:var(--color-text-light-mode);margin-right:var(--spacing-xs)}@media (max-width: 768px){.single-video-container{padding:var(--spacing-md)}.top-back-button{left:var(--spacing-md)}.single-video-header{font-size:2em;margin-top:var(--spacing-lg)}.single-video-description,.single-video-meta-details{font-size:1em;padding:0 var(--spacing-sm)}}@media (max-width: 480px){.single-video-header{font-size:1.8em}.single-video-admin-actions{flex-direction:column;align-items:stretch}.single-video-admin-actions .btn{width:100%}}.add-video-container{max-width:800px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.add-video-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.add-video-form{display:flex;flex-direction:column;gap:var(--spacing-md)}@media (max-width: 768px){.add-video-container{padding:var(--spacing-md) var(--spacing-sm)}.add-video-header{font-size:2.2em}.form-group label,.form-input,.form-textarea{font-size:.95em}.form-actions{flex-direction:column;align-items:stretch}.form-actions .btn{width:100%}}@media (max-width: 480px){.add-video-header{font-size:1.8em}}.edit-video-container{max-width:800px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.edit-video-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.edit-video-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-textarea{resize:vertical;min-height:80px}@media (max-width: 768px){.edit-video-container{padding:var(--spacing-md) var(--spacing-sm)}.edit-video-header{font-size:2.2em}.form-group label,.form-input,.form-textarea{font-size:.95em}.form-actions{flex-direction:column;align-items:stretch}.form-actions .btn{width:100%}}@media (max-width: 480px){.edit-video-header{font-size:1.8em}}.video-management-container{max-width:1200px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.video-management-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.video-management-actions{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-lg)}.video-management-actions .btn{padding:var(--spacing-md) var(--spacing-lg);font-size:1em}.videos-table-wrapper{overflow-x:auto;margin-bottom:var(--spacing-lg)}.video-management-table{width:100%;border-collapse:collapse;margin-top:var(--spacing-lg);font-size:.95em}.video-management-table th,.video-management-table td{border:1px solid var(--color-border-dark);padding:var(--spacing-sm) var(--spacing-md);text-align:left;vertical-align:middle}.video-management-table th{background-color:var(--color-background-dark-tertiary);color:var(--color-text-medium-light);font-weight:600;text-transform:uppercase;font-size:.9em}.video-management-table tbody tr{background-color:var(--color-background-dark-primary)}.video-management-table tbody tr:nth-child(2n){background-color:var(--color-background-dark-secondary)}.video-management-table tbody tr:hover{background-color:rgba(var(--color-primary-rgb),.1)}.table-title-link{color:var(--color-primary);text-decoration:none;font-weight:600}@media (max-width: 1024px){.video-management-container{padding:var(--spacing-lg) var(--spacing-md)}.video-management-table th,.video-management-table td{padding:var(--spacing-sm);font-size:.85em}}@media (max-width: 768px){.video-management-header{font-size:2.2em}.video-management-actions{justify-content:center}.video-management-actions .btn{width:100%}.video-management-table thead{display:none}.video-management-table,.video-management-table tbody,.video-management-table tr,.video-management-table td{display:block;width:100%}.video-management-table tr{margin-bottom:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var(--color-background-dark-secondary);box-shadow:0 2px 5px #0000001a}.video-management-table td{text-align:right;padding-left:50%;position:relative}.video-management-table td:before{content:attr(data-label);position:absolute;left:var(--spacing-md);width:calc(50% - var(--spacing-md));padding-right:var(--spacing-md);white-space:nowrap;text-align:left;font-weight:600;color:var(--color-text-medium-light)}.actions-buttons{justify-content:flex-end}.pagination-controls{flex-direction:column;gap:var(--spacing-md)}}@media (max-width: 480px){.video-management-header{font-size:1.8em}.video-management-container{padding:var(--spacing-md)}.video-management-table td{font-size:.85em;padding-left:40%}.video-management-table td:before{width:calc(40% - var(--spacing-md))}}.about-container{max-width:1000px;margin:var(--spacing-lg) auto;padding:var(--spacing-lg);background-color:var( --color-background-dark-secondary );border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);font-family:Nunito,sans-serif;position:relative}.about-header{text-align:center;margin-bottom:var(--spacing-xxl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border-dark)}.about-title{font-family:Playfair Display,serif;font-size:3.8em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-sm);letter-spacing:.05em}.about-subtitle{font-size:1.6em;color:var(--color-secondary);font-style:italic;margin-top:var(--spacing-sm);font-weight:400}.about-section{margin-bottom:var(--spacing-xxl);padding-top:var(--spacing-md)}.section-title{font-family:Playfair Display,serif;font-size:2.5em;font-weight:700;color:var(--color-text-light-mode);margin-bottom:var(--spacing-lg);text-align:center;position:relative;line-height:1.3}.section-title:after{content:"";display:block;width:80px;height:3px;background-color:var(--color-secondary);margin:var(--spacing-md) auto 0;border-radius:2px}.about-section p{font-size:1.15em;margin-bottom:var(--spacing-md);color:var(--color-text-medium-light);text-align:justify;padding:0 var(--spacing-sm)}.about-section p:first-of-type{margin-top:var(--spacing-lg)}.about-section p strong{color:var(--color-primary);font-weight:700}.about-section p:last-child{margin-bottom:0}.final-thought{font-style:italic;text-align:center;margin-top:var(--spacing-xl);font-size:1.25em;color:var(--color-secondary);font-family:Playfair Display,serif}.about-photo-wrapper{text-align:center;margin-bottom:var(--spacing-xxl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border-dark)}.about-photo{width:220px;height:220px;object-fit:cover;border-radius:50%;border:5px solid var(--color-primary);box-shadow:0 6px 15px var(--color-shadow-dark);display:inline-block}@media (max-width: 768px){.about-container{margin:var(--spacing-lg) auto;padding:var(--spacing-md) var(--spacing-lg)}.about-title{font-size:2.8em}.about-subtitle{font-size:1.4em}.section-title{font-size:2em}.about-section p{font-size:1.05em;text-align:left;padding:0}.final-thought{font-size:1.1em}.about-photo{width:180px;height:180px;border-width:4px}}@media (max-width: 480px){.about-container{padding:var(--spacing-md)}.about-title{font-size:2.2em}.about-subtitle{font-size:1.2em}.section-title{font-size:1.7em}.about-section p{font-size:.95em}.final-thought{font-size:1em}.about-photo{width:140px;height:140px;border-width:3px}}.contact-container{max-width:1000px;margin:var(--spacing-lg) auto;padding:var(--spacing-lg);background-color:var( --color-background-dark-secondary );border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);font-family:Nunito,sans-serif;position:relative}.contact-header{text-align:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border-dark)}.contact-title{font-family:Playfair Display,serif;font-size:3.2em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-sm);letter-spacing:.03em}.contact-subtitle{font-size:1.3em;color:var(--color-text-medium-light);font-style:italic;margin-top:var(--spacing-sm)}.contact-form-section{margin-bottom:var(--spacing-xxl)}.contact-intro-text{font-size:1.05em;color:var(--color-text-medium-light);text-align:center;margin-bottom:var(--spacing-xl);padding:0 var(--spacing-md)}.contact-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column}.form-group label{font-size:1em;font-weight:600;color:var(--color-text-light-mode);margin-bottom:var(--spacing-xs)}.form-group input[type=text],.form-group input[type=email],.form-group textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-sm);font-size:1em;color:var(--color-text-light-mode);background-color:var( --color-background-dark-primary );transition:border-color .2s ease,box-shadow .2s ease;width:100%;box-sizing:border-box}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #809b5266}.form-group input[type=text]::placeholder,.form-group input[type=email]::placeholder,.form-group textarea::placeholder{color:var(--color-text-medium-light);opacity:.7}.form-group textarea{resize:vertical;min-height:120px}.contact-form button[type=submit]{padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-primary);color:var(--color-text-white);border:none;border-radius:var(--border-radius-sm);font-size:1.1em;font-weight:600;cursor:pointer;transition:background-color .2s ease,transform .1s ease;align-self:center;width:fit-content}.contact-form button[type=submit]:hover{background-color:var(--color-primary-hover);transform:translateY(-2px)}.contact-form button[type=submit]:disabled{background-color:var( --color-background-dark-tertiary );color:var(--color-text-medium-light);cursor:not-allowed;transform:none;box-shadow:none}.form-status{text-align:center;margin-top:var(--spacing-md);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:.95em;font-weight:500}.form-status.success{background-color:#809b5233;color:var(--color-primary);border:1px solid var(--color-primary)}.form-status.error{background-color:#b54f4f33;color:var(--color-accent-red);border:1px solid var(--color-accent-red)}@media (max-width: 768px){.contact-container{margin:var(--spacing-lg) auto;padding:var(--spacing-md)}.contact-title{font-size:2.5em}.contact-subtitle{font-size:1.1em}}@media (max-width: 480px){.contact-container{padding:var(--spacing-sm)}.contact-title{font-size:2em}.contact-subtitle{font-size:1em}}.profile-header{font-family:Playfair Display,serif;text-align:center;color:var(--color-primary);margin-bottom:var(--spacing-xxl);font-size:4em;font-weight:700;letter-spacing:.05em;padding-top:var(--spacing-lg)}.profile-details-view{display:flex;flex-direction:column;gap:var(--spacing-xxl);background-color:var( --color-background-dark-secondary );padding:var(--spacing-xxl);border-radius:var(--border-radius-lg);box-shadow:0 15px 50px var(--color-shadow-dark);margin-bottom:var(--spacing-xxl)}.profile-card{background-color:var( --color-background-dark-tertiary );padding:var(--spacing-xxl);border-radius:var( --border-radius-md );text-align:center;box-shadow:inset 0 2px 5px #0000000d;border:1px solid var(--color-border-dark)}.profile-picture{width:180px;height:180px;border-radius:50%;object-fit:cover;margin-bottom:var(--spacing-xl);border:6px solid var(--color-primary);box-shadow:0 8px 25px #0003}.profile-picture-placeholder{width:180px;height:180px;border-radius:50%;background-color:var(--color-border-dark);display:flex;justify-content:center;align-items:center;font-size:1.6em;color:var(--color-text-medium-light);margin:0 auto var(--spacing-xl) auto;border:4px dashed var(--color-border-dark)}.profile-username{font-family:Playfair Display,serif;font-size:3em;color:var(--color-text-light-mode);margin-bottom:var(--spacing-sm);font-weight:700}.profile-name{font-size:1.4em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-sm)}.profile-email{font-size:1.15em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-xl)}.profile-bio{font-style:italic;color:var(--color-text-medium-light);background-color:var( --color-background-dark-primary );padding:var(--spacing-xl);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-xxl);line-height:1.8;text-align:center;border:1px dashed var(--color-border-dark)}.profile-section h3{font-family:Playfair Display,serif;font-size:2em;color:var(--color-primary);margin-top:var(--spacing-xxl);margin-bottom:var(--spacing-md);border-bottom:3px solid var(--color-primary-hover);padding-bottom:var(--spacing-sm);text-align:center}.profile-tags-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:var(--spacing-lg);justify-content:center;margin-bottom:var(--spacing-md)}.profile-tag{background-color:var(--color-tag-dietary-bg);color:var(--color-tag-dietary-text);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--border-radius-lg);font-size:1em;white-space:nowrap;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease;box-shadow:0 2px 5px #0000001a}.profile-tag:hover{transform:translateY(-4px);background-color:var( --color-accent-red );box-shadow:0 8px 20px #0003}.profile-links-section{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-top:var(--spacing-xxl);padding-top:var(--spacing-xl);border-top:2px dashed var(--color-border-dark)}.profile-link-button,.edit-profile-button,.update-password-button{display:block;width:100%;padding:var(--spacing-md) var(--spacing-xl);text-align:center;text-decoration:none;border-radius:var(--border-radius-md);transition:background-color .2s ease,transform .1s ease,box-shadow .2s ease;font-weight:700;border:none;cursor:pointer;box-shadow:0 4px 10px #0000001a}.edit-profile-button{background-color:var(--color-primary);color:var(--color-text-white);margin-bottom:var(--spacing-md)}.update-password-button{background-color:var(--color-accent-blue);color:var(--color-text-white);margin-top:var(--spacing-md)}.profile-link-button{background-color:var(--color-secondary);color:var(--color-text-white)}.profile-link-button:hover,.edit-profile-button:hover,.update-password-button:hover{transform:translateY(-5px);box-shadow:0 12px 25px #0000004d}.edit-profile-button:hover{background-color:var(--color-primary-hover)}.update-password-button:hover{background-color:#5c8491}.profile-link-button:hover{background-color:#a3613c}@media (max-width: 1024px){.user-profile-container{max-width:95%;margin:var(--spacing-xl) auto;padding:0 var(--spacing-md)}.profile-header{font-size:3.2em}.profile-card,.profile-details-view{padding:var(--spacing-xl);margin:0}}@media (max-width: 768px){.user-profile-container{padding:0 var(--spacing-sm);margin:var(--spacing-lg) auto}.profile-header{font-size:2.8em;margin-bottom:var(--spacing-xl)}.profile-username{font-size:2.4em}.profile-card{padding:var(--spacing-lg)}.profile-bio{padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.profile-section h3{font-size:1.8em}.profile-tags-list{gap:var(--spacing-md)}.profile-links-section{flex-direction:column;gap:var(--spacing-md)}.profile-link-button,.edit-profile-button,.update-password-button{width:100%;padding:var(--spacing-md);font-size:1em}}@media (max-width: 480px){.profile-header{font-size:2.2em}.profile-username{font-size:2em}.profile-card{padding:var(--spacing-md)}.profile-link-button,.edit-profile-button,.update-password-button{font-size:.95em}}.profile-metrics-list{list-style:none;padding:0;margin:var(--spacing-md) auto var(--spacing-xl) auto;display:flex;flex-direction:column;gap:var(--spacing-sm);max-width:300px}.profile-metric-item{display:flex;justify-content:space-between;align-items:center;font-size:1.1em;color:var(--color-text-light-mode);padding:var(--spacing-sm) var(--spacing-md);background-color:var( --color-background-dark-primary );border-radius:var(--border-radius-sm);border:1px solid var(--color-border-dark);box-shadow:0 1px 3px #0000001a}.profile-metric-item strong{font-family:Playfair Display,serif;font-size:1.3em;color:var(--color-secondary);margin-right:var(--spacing-md)}.profile-metric-link.btn-link{color:var(--color-primary);text-decoration:none;font-weight:600;padding:0;background:none;border:none;cursor:pointer;transition:color .2s ease;font-size:.9em}.profile-metric-link.btn-link:hover{color:var(--color-primary-hover);text-decoration:underline}@media (max-width: 768px){.profile-metrics-list{max-width:100%;padding:0 var(--spacing-sm)}.profile-metric-item{font-size:1em;padding:var(--spacing-sm)}}.user-profile-container{max-width:1200px;margin:var(--spacing-xxl) auto;padding:0 var(--spacing-xxl);font-family:Nunito,sans-serif;color:var( --color-text-light-mode )}.profile-header{font-family:Playfair Display,serif;text-align:center;color:var(--color-primary);margin-bottom:var(--spacing-xl);font-size:3em;font-weight:700;padding-top:var(--spacing-lg)}.profile-form{display:flex;flex-direction:column;gap:var(--spacing-xxl);background-color:var( --color-background-dark-secondary );padding:var(--spacing-xxl);border-radius:var(--border-radius-lg);box-shadow:0 12px 40px var(--color-shadow-dark);margin-bottom:var(--spacing-xxl)}.form-group{margin-top:var(--spacing-xxl);margin-bottom:var(--spacing-xl);padding:var(--spacing-xl);border:1px dashed var(--color-border-dark);border-radius:var(--border-radius-lg);background-color:var( --color-background-dark-tertiary );box-shadow:inset 0 1px 3px #0000000d}.form-group h3{font-family:Playfair Display,serif;font-size:1.8em;color:var(--color-primary);border-bottom:2px solid var(--color-secondary);text-align:center;margin-top:0;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm)}.form-label{display:flex;flex-direction:column;margin-bottom:var(--spacing-xl);font-weight:700;color:var(--color-text-light-mode);font-size:1.2em}.form-input,.form-textarea{padding:var(--spacing-lg);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);font-size:1.1em;margin-top:var(--spacing-sm);background-color:var( --color-background-dark-primary );color:var(--color-text-light-mode);font-family:Nunito,sans-serif;transition:border-color .2s ease,box-shadow .2s ease}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 6px rgba(var(--color-primary-rgb),.4)}.form-textarea{min-height:150px;resize:vertical}.profile-picture-upload-group{text-align:center;margin-bottom:var(--spacing-xxl)}.profile-picture-preview-container{width:200px;height:200px;border-radius:50%;overflow:hidden;border:5px solid var(--color-primary);box-shadow:0 6px 20px #00000026;margin:0 auto var(--spacing-lg) auto}.profile-picture-preview{width:100%;height:100%;object-fit:cover}.profile-picture-placeholder.large-placeholder{width:100%;height:100%;border:none;border-radius:0;background-color:var(--color-border-dark);font-size:1.8em;color:var(--color-text-medium-light)}.file-upload-label{align-items:center;margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md)}.file-input{padding:var(--spacing-md);border:1px solid var(--color-border-dark);background-color:var(--color-background-dark-primary);cursor:pointer;width:100%;margin-top:var(--spacing-sm);border-radius:var(--border-radius-md)}.file-input::file-selector-button{background-color:var(--color-secondary);color:var(--color-text-white);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-sm);cursor:pointer;transition:background-color .2s ease,transform .1s ease;margin-right:var(--spacing-md);font-weight:600}.file-input::file-selector-button:hover{background-color:var(--color-secondary-hover);transform:translateY(-2px)}.clear-profile-picture-button{background-color:var(--color-accent-red);color:var(--color-text-white);padding:var(--spacing-md) var(--spacing-lg);border:none;border-radius:var(--border-radius-md);font-size:1.05em;cursor:pointer;transition:background-color .2s ease,transform .1s ease,box-shadow .2s ease;margin-top:var(--spacing-md);width:auto;align-self:center;font-weight:700;box-shadow:0 2px 5px #0000001a}.clear-profile-picture-button:hover{background-color:var(--color-accent-red-hover);transform:translateY(-3px);box-shadow:0 6px 15px #0003}.dietary-restrictions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.filter-checkbox-label{display:flex;align-items:center;gap:var(--spacing-md);cursor:pointer;font-size:1.15em;color:var(--color-text-light-mode)}.filter-checkbox-label input[type=checkbox]{width:1.4em;height:1.4em;accent-color:var(--color-primary);cursor:pointer}.form-actions{display:flex;gap:var(--spacing-lg);justify-content:center;margin-top:var(--spacing-xxl)}.save-button,.cancel-button{padding:var(--spacing-lg) var(--spacing-xxl);border:none;border-radius:var(--border-radius-md);font-size:1.15em;cursor:pointer;transition:background-color .2s ease,transform .1s ease,box-shadow .2s ease;font-weight:700;box-shadow:0 4px 10px #0000001a}.save-button{background-color:var(--color-primary);color:var(--color-text-white)}.save-button:hover:not(:disabled){background-color:var(--color-primary-hover);transform:translateY(-4px);box-shadow:0 10px 25px #0000004d}.save-button:disabled{background-color:var(--color-border-dark);cursor:not-allowed;opacity:.7}.cancel-button{background-color:var( --color-background-dark-tertiary );color:var(--color-text-light-mode);border:1px solid var(--color-border-dark)}.cancel-button:hover{background-color:var(--color-border-dark);transform:translateY(-4px);box-shadow:0 10px 25px #0000004d}@media (max-width: 1024px){.profile-form{padding:var(--spacing-xl)}}@media (max-width: 768px){.profile-header{font-size:2.8em}.profile-form{padding:var(--spacing-lg)}.form-group h3{font-size:1.5em}.form-label{font-size:1.1em}.form-input,.form-textarea{font-size:1em;padding:var(--spacing-md)}.dietary-restrictions-grid{grid-template-columns:1fr}.form-actions{flex-direction:column;gap:var(--spacing-md)}.save-button,.cancel-button{width:100%;padding:var(--spacing-md);font-size:1em}.profile-picture-upload-group h3{font-size:1.5em}}@media (max-width: 480px){.profile-header{font-size:2.2em}.profile-form{padding:var(--spacing-md)}.form-group h3{font-size:1.2em}.form-label{font-size:1em}.form-input,.form-textarea{font-size:.9em;padding:var(--spacing-sm)}.profile-picture-preview-container{width:160px;height:160px}.clear-profile-picture-button,.file-input::file-selector-button{font-size:.9em;padding:var(--spacing-sm) var(--spacing-md)}}.update-password-container{max-width:600px;margin:var(--spacing-xxl) auto;padding:var(--spacing-xxl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 15px 50px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;display:flex;flex-direction:column}.password-header{font-family:Playfair Display,serif;text-align:center;color:var(--color-primary);margin-bottom:var(--spacing-xl);font-size:2.5em;font-weight:700}.password-change-form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.success-message{background-color:rgba(var(--color-success-rgb),.15);color:var(--color-success);border:1px solid var(--color-success);padding:var(--spacing-md);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-lg);text-align:center;font-weight:600}.error-message{background-color:rgba(var(--color-error-rgb),.15);color:var(--color-error);border:1px solid var(--color-error);padding:var(--spacing-md);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-lg);text-align:center;font-weight:600}.form-actions.password-actions{display:flex;gap:var(--spacing-lg);justify-content:center;margin-top:var(--spacing-xl)}@media (max-width: 768px){.update-password-container{padding:var(--spacing-lg);max-width:95%}.password-header{font-size:2em}.form-actions.password-actions{flex-direction:column;align-items:stretch}.form-actions.password-actions .btn{width:100%}}@media (max-width: 480px){.update-password-container{padding:var(--spacing-md)}.password-header{font-size:1.8em}}.resources-container{max-width:1200px;margin:var(--spacing-xxl) auto;padding:0;background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;overflow:hidden}.resources-hero-header{position:relative;width:100%;padding:var(--spacing-xxl) var(--spacing-lg);text-align:center;color:var(--color-text-white);border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:300px;overflow:hidden}.resources-hero-background-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.resources-hero-overlay{background:linear-gradient(to bottom,var(--color-resource-hero-overlay-start),var(--color-resource-hero-overlay-end));position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.resources-hero-title{font-family:Playfair Display,serif;font-size:3.8em;font-weight:700;margin-bottom:var(--spacing-md);line-height:1.1;text-shadow:0px 4px 8px rgba(0,0,0,.6);position:relative;z-index:2}.resources-hero-tagline{font-size:1.6em;font-weight:400;color:var(--color-primary-light);margin-bottom:var(--spacing-lg);text-shadow:0px 2px 4px rgba(0,0,0,.4);position:relative;z-index:2}.resources-hero-intro{font-size:1.1em;max-width:700px;line-height:1.7;color:var(--color-text-light-mode);margin-bottom:0;z-index:2;position:relative}.resources-filters-section{padding:var(--spacing-lg) var(--spacing-xl);text-align:center;background-color:var( --color-background-dark-tertiary );border-bottom:1px solid var(--color-border-dark);box-shadow:inset 0 -2px 5px #0000001a;display:flex;justify-content:center;align-items:center}.filter-group{position:relative;display:inline-block}.filter-label{font-size:1.1em;font-weight:600;color:var(--color-text-light-mode);margin-right:var(--spacing-md)}.custom-select{width:250px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-sm);background-color:var(--color-background-dark-secondary);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;font-size:1em;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;background-image:none}.custom-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.3)}.select-arrow{position:absolute;right:10px;top:50%;transform:translateY(-50%) rotate(90deg);pointer-events:none;color:var(--color-text-medium-light);font-size:.8em;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid var(--color-text-medium-light);right:var(--spacing-md);transform:translateY(-50%)}.resources-grid-section{padding:var(--spacing-xxl)}.resources-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);justify-content:center;align-items:stretch}.resource-card-link{text-decoration:none!important;color:inherit;display:block;height:100%;width:100%}.no-resources-message{text-align:center;padding:var(--spacing-xxl);font-size:1.2em;color:var(--color-text-medium-light)}@media (max-width: 992px){.resources-hero-title{font-size:3.2em}.resources-hero-tagline{font-size:1.4em}.resources-grid-section{padding:var(--spacing-xl)}}@media (max-width: 768px){.resources-container{margin:var(--spacing-lg) auto;border-radius:0;box-shadow:none}.resources-hero-header{padding:var(--spacing-xl) var(--spacing-md);border-radius:0}.resources-hero-title{font-size:2.5em}.resources-hero-tagline{font-size:1.2em}.resources-hero-intro{font-size:1em}.resources-filters-section{padding:var(--spacing-md);flex-direction:column;gap:var(--spacing-sm)}.filter-label{margin-right:0}.custom-select{width:100%}.resources-grid{grid-template-columns:1fr;padding:var(--spacing-md)}.resources-grid-section{padding:var(--spacing-md)}}@media (max-width: 480px){.resources-hero-title{font-size:2em}.resources-hero-tagline{font-size:1em}.resources-hero-intro,.custom-select{font-size:.9em}}.journal-container{max-width:1200px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);text-align:center;line-height:1.6;font-family:Nunito,sans-serif}.journal-hero-section{background-image:url(/assets/seasonal-produce-8EH4ddgJ.jpg);background-size:cover;background-position:center;padding:var(--spacing-xxl) var(--spacing-xl);margin-bottom:var(--spacing-xxl);color:var(--color-text-dark-mode);border-radius:var(--border-radius-lg);display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:350px;position:relative;z-index:1}.journal-hero-section:before{content:"";position:absolute;inset:0;background-color:#0000004d;border-radius:var(--border-radius-lg);z-index:-1}.journal-hero-section .journal-header{color:var( --color-text-dark-mode );text-align:center;font-size:4.5em;font-weight:700;margin-bottom:var(--spacing-md);line-height:1.1;text-shadow:-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,1px 1px 0 #000,3px 3px 6px rgba(0,0,0,.7);color:#fff}.journal-hero-section .journal-intro{color:#fff;text-align:center;max-width:800px;font-size:1.4em;line-height:1.7;text-shadow:-.5px -.5px 0 #000,.5px -.5px 0 #000,-.5px .5px 0 #000,.5px .5px 0 #000,2px 2px 4px rgba(0,0,0,.6)}.journal-header{font-family:Playfair Display,serif;font-size:3.5em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-md)}.journal-intro{font-size:1.15em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-xxl)}.search-input-wrapper{position:relative;max-width:500px;margin:0 auto var(--spacing-lg) auto}.journal-posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-lg);padding:var(--spacing-md) 0;margin-bottom:var(--spacing-xxl)}.journal-loading-message,.journal-error-message{text-align:center;font-size:1.1em;color:var(--color-text-light-mode);margin-top:var(--spacing-lg)}.journal-error-message{color:var(--color-error);font-weight:700}.journal-load-more-button{display:block;margin:var(--spacing-xl) auto var(--spacing-xxl) auto;padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--color-secondary);color:var(--color-text-dark-mode);border:none;border-radius:var(--border-radius-md);font-size:1.1em;font-weight:600;cursor:pointer;transition:background-color .2s ease-in-out,transform .1s ease-in-out}.journal-load-more-button:hover{background-color:var(--color-secondary-light);transform:translateY(-2px)}.journal-card-wrapper{height:100%;display:flex;flex-direction:column}.journal-card-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.journal-card-link>div{display:flex;flex-direction:column;height:100%}@media (max-width: 1024px){.journal-posts-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width: 768px){.journal-hero-section{min-height:250px;padding:var(--spacing-md) var(--spacing-sm)}.journal-hero-section .journal-header{font-size:2.8em}.journal-hero-section .journal-intro{font-size:1.1em}.journal-posts-grid{grid-template-columns:1fr}.journal-container{padding:var(--spacing-md)}}@media (max-width: 480px){.journal-hero-section .journal-header{font-size:2.2em}.journal-hero-section .journal-intro{font-size:.95em}}.single-journal-page-container{max-width:1000px;margin:var(--spacing-lg) auto;padding:var(--spacing-lg);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;line-height:1.7;position:relative}.single-journal-hero-image{width:100%;min-height:400px;background-size:cover;background-position:center;display:flex;justify-content:center;align-items:center;position:relative;border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);overflow:hidden}.single-journal-hero-image .hero-overlay{position:absolute;inset:0;background-color:#0006;z-index:1}.single-journal-main-content{padding-top:60px;padding-left:var( --spacing-xl );padding-right:var( --spacing-xl );padding-bottom:var(--spacing-xl);position:relative}.single-journal-title{font-family:Playfair Display,serif;font-size:4.5em;font-weight:700;color:#fff;text-align:center;max-width:90%;z-index:2;text-shadow:-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,1px 1px 0 #000,3px 3px 8px rgba(0,0,0,.8);margin-top:0}.single-journal-title.no-hero-image{color:var(--color-text-light-mode);text-shadow:none;font-size:2.8em;margin-top:0}.single-journal-content-wrapper{padding:0;text-align:left}.single-journal-meta{font-size:.95em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-md);text-align:center}.single-journal-tags-categories{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.single-journal-tag-category{font-size:.85em;padding:.4em .8em;border-radius:var(--border-radius-pill);font-weight:600;text-transform:uppercase;white-space:nowrap}.single-journal-tag-category.category{background-color:var( --color-tag-category );color:var(--color-tag-text-category)}.single-journal-tag-category.tag{background-color:var( --color-tag-tag );color:var(--color-tag-text-tag)}.single-journal-content{font-size:1.1em;color:var(--color-text-light-mode);margin-bottom:var(--spacing-xxl)}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{font-family:Playfair Display,serif;color:var(--color-primary);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md);line-height:1.3}.markdown-body h1{font-size:2.8em}.markdown-body h2{font-size:2.2em}.markdown-body h3{font-size:1.8em}.markdown-body h4{font-size:1.5em}.markdown-body p{margin-bottom:var(--spacing-md);line-height:1.7}.markdown-body ul,.markdown-body ol{margin-bottom:var(--spacing-md);padding-left:var(--spacing-lg)}.markdown-body li{margin-bottom:var(--spacing-xs)}.markdown-body a{color:var(--color-primary);text-decoration:underline}.markdown-body strong{font-weight:700}.markdown-body em{font-style:italic}.markdown-body pre{background-color:var(--color-background-dark-tertiary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);padding:var(--spacing-md);overflow-x:auto;margin-bottom:var(--spacing-md)}.markdown-body code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:.9em;color:var(--color-primary-light)}.markdown-body pre code{display:block;padding:0;background-color:transparent;color:inherit}.markdown-body img{max-width:100%;height:auto;display:block;margin:var(--spacing-md) auto;border-radius:var(--border-radius-md)}.related-articles-section{border-top:1px solid var(--color-border-dark);padding-top:var(--spacing-xl);margin-top:var(--spacing-xxl);text-align:center}.related-articles-section h3{font-family:Playfair Display,serif;font-size:2em;color:var(--color-primary);margin-bottom:var(--spacing-lg)}.back-to-journal-button{display:inline-block;background-color:var(--color-secondary);color:var(--color-text-dark-mode);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);text-decoration:none;font-weight:600;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-xl);transition:background-color .2s ease-in-out,transform .1s ease-in-out}.back-to-journal-button.top-back-button{position:absolute;top:var(--spacing-md);left:var( --spacing-md );z-index:10;font-size:.8em;padding:var(--spacing-xs) var(--spacing-sm)}.back-to-journal-button:hover{background-color:var(--color-secondary-light);transform:translateY(-2px)}@media (max-width: 768px){.single-journal-page-container{padding:var(--spacing-md) var(--spacing-sm)}.single-journal-hero-image{min-height:250px}.single-journal-title{font-size:3em}.single-journal-content-wrapper{padding:var(--spacing-lg) var(--spacing-md)}.markdown-body h1{font-size:2.2em}.markdown-body h2{font-size:1.8em}.markdown-body h3{font-size:1.5em}}@media (max-width: 480px){.single-journal-title{font-size:2.2em}.single-journal-content{font-size:1em}.single-journal-tag-category{font-size:.75em;padding:.3em .6em}}.email-verification-container{display:flex;justify-content:center;align-items:center;min-height:70vh;padding:20px;background-color:var( --color-background-dark-primary );color:var(--color-text-light-mode)}.email-verification-message{background-color:var( --color-background-dark-secondary );padding:30px;border-radius:var(--border-radius-lg);box-shadow:0 4px 15px var(--color-shadow-dark);text-align:center;max-width:500px;width:100%}.email-verification-message p{font-size:1.1em;margin-bottom:20px;line-height:1.6}.email-verification-message.verifying{color:var(--color-text-medium-light);border:1px solid var(--color-border-dark)}.email-verification-message.success{background-color:#809b5233;color:var(--color-primary);border:1px solid var(--color-primary)}.email-verification-message.error{background-color:#b54f4f33;color:var(--color-accent-red);border:1px solid var(--color-accent-red)}.email-verification-button,.email-verification-link{display:inline-block;padding:10px 20px;background-color:var(--color-primary);color:var(--color-text-white);text-decoration:none;border-radius:var(--border-radius-md);font-weight:600;transition:background-color .3s ease,transform .1s ease;margin:5px}.email-verification-button:hover,.email-verification-link:hover{background-color:var(--color-primary-hover);text-decoration:none;transform:translateY(-1px)}.email-verification-link{background-color:transparent;color:var(--color-secondary);border:1px solid var(--color-secondary);padding:8px 15px}.email-verification-link:hover{background-color:var(--color-secondary-hover);color:var(--color-text-white);border-color:var(--color-secondary-hover)}.spinner{border:4px solid rgba(0,0,0,.1);border-top:4px solid var(--color-primary);border-radius:50%;width:30px;height:30px;animation:spin 1s linear infinite;margin:20px auto 0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.email-verification-message{padding:20px}.email-verification-message p{font-size:1em}.email-verification-button,.email-verification-link{font-size:.9em;padding:8px 15px}}.journal-management-container{max-width:1200px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;text-align:center}.journal-management-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl)}.journal-management-actions{margin-bottom:var(--spacing-xl)}.loading-message,.error-message,.no-posts-message{text-align:center;padding:var(--spacing-lg);font-size:1.1em;border-radius:var(--border-radius-md);margin-top:var(--spacing-md)}.loading-message{color:var(--color-text-light-mode);background-color:var(--color-background-dark-tertiary);border:1px solid var(--color-border-dark)}.error-message{color:var(--color-error);font-weight:700;background-color:#d9534f33;border:1px solid var(--color-error)}.no-posts-message{color:var(--color-text-medium-light);background-color:var(--color-background-dark-tertiary);border:1px solid var(--color-border-dark)}.posts-table-wrapper{overflow-x:auto;margin-bottom:var(--spacing-xl);border-radius:var(--border-radius-md);border:1px solid var(--color-border-dark);box-shadow:0 2px 10px #0000004d}.journal-posts-table{width:100%;border-collapse:collapse;margin:0 auto}.journal-posts-table th,.journal-posts-table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border-dark);text-align:left;vertical-align:middle}.journal-posts-table th{background-color:var(--color-background-dark-tertiary);color:var(--color-text-light-mode);font-weight:600;text-transform:uppercase;font-size:.9em;position:sticky;top:0;z-index:1}.journal-posts-table thead tr:first-child th:first-child{border-top-left-radius:var(--border-radius-md)}.journal-posts-table thead tr:first-child th:last-child{border-top-right-radius:var(--border-radius-md)}.journal-posts-table td{color:var(--color-text-medium-light)}.table-title-link{color:var(--color-primary);text-decoration:none;font-weight:500;transition:color .2s ease}.table-title-link:hover{text-decoration:underline;color:var(--color-primary-hover)}.status-published{color:var(--color-success);font-weight:700}.status-draft{color:var(--color-warning);font-weight:700}.actions-buttons{display:flex;gap:var(--spacing-sm);justify-content:flex-start}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-lg)}.pagination-button:disabled{background-color:var(--color-border-dark);color:var(--color-text-medium-light);cursor:not-allowed}@media (max-width: 768px){.journal-management-container{padding:var(--spacing-md)}.journal-management-header{font-size:2.2em}.journal-posts-table th,.journal-posts-table td{padding:var(--spacing-sm);font-size:.9em}.actions-buttons{flex-direction:column;gap:var(--spacing-xs)}}@media (max-width: 480px){.journal-management-header{font-size:1.8em}.journal-posts-table th,.journal-posts-table td{font-size:.8em}}.add-journal-post-container{max-width:900px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.add-journal-post-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.add-journal-post-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.add-journal-post-action-buttons{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg)}@media (max-width: 768px){.add-journal-post-action-buttons{flex-direction:column;align-items:stretch}.add-journal-post-action-buttons .btn{width:100%}}@media (max-width: 768px){.add-journal-post-container{padding:var(--spacing-md) var(--spacing-sm)}.add-journal-post-header{font-size:2.2em}.form-group label,.form-input,.form-textarea{font-size:.95em}.markdown-input{min-height:200px}.submit-button{padding:var(--spacing-sm) var(--spacing-lg);font-size:1em}}@media (max-width: 480px){.add-journal-post-header{font-size:1.8em}.checkbox-grid{grid-template-columns:1fr}}.edit-journal-post-container{max-width:900px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.edit-journal-post-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.edit-journal-post-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-input,.form-textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-sm);background-color:var(--color-background-dark-tertiary);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;font-size:1em;box-sizing:border-box}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.3)}.markdown-input{min-height:250px}.markdown-hint{font-size:.85em;color:var(--color-text-medium-light);margin-top:var(--spacing-xs);font-style:italic}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--spacing-sm);padding:var(--spacing-sm) 0;border:1px solid var(--color-border-dark);border-radius:var(--border-radius-sm);background-color:var(--color-background-dark-tertiary)}.checkbox-item{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;color:var(--color-text-light-mode)}.checkbox-item:hover{background-color:rgba(var(--color-primary-rgb),.1);border-radius:var(--border-radius-sm)}.loading-message,.error-message,.submit-error-message,.submit-success-message{text-align:center;padding:var(--spacing-sm);margin-bottom:var(--spacing-md);border-radius:var(--border-radius-sm);font-weight:500}.loading-message{color:var(--color-text-light-mode);background-color:rgba(var(--color-primary-rgb),.1)}.error-message,.submit-error-message{color:var(--color-error);background-color:rgba(var(--color-error-rgb),.15);border:1px solid var(--color-error)}.submit-success-message{color:var(--color-success);background-color:rgba(var(--color-success-rgb),.15);border:1px solid var(--color-success)}@media (max-width: 768px){.edit-journal-post-container{padding:var(--spacing-md) var(--spacing-sm)}.edit-journal-post-header{font-size:2.2em}.form-group label,.form-input,.form-textarea{font-size:.95em}.markdown-input{min-height:200px}.submit-button{width:100%;padding:var(--spacing-sm) var(--spacing-lg);font-size:1em}}@media (max-width: 480px){.edit-journal-post-header{font-size:1.8em}.checkbox-grid{grid-template-columns:1fr}}.policy-subsubsection-title{font-family:Playfair Display,serif;font-size:1.3em;font-weight:600;color:var( --color-text-light-mode );margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm)}@media (max-width: 768px){.policy-subsubsection-title{font-size:1.2em}}@media (max-width: 480px){.policy-subsubsection-title{font-size:1.1em}}.policy-container{max-width:900px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;line-height:1.7}.policy-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-md);text-align:center}.policy-updated{font-size:.9em;color:var(--color-text-medium-light);text-align:center;margin-bottom:var(--spacing-xl)}.policy-intro{font-size:1.1em;margin-bottom:var(--spacing-lg);color:var(--color-text-light-mode)}.policy-section{margin-bottom:var(--spacing-xxl)}.policy-section-title{font-family:Playfair Display,serif;font-size:2.2em;font-weight:600;color:var(--color-text-light-mode);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md);position:relative;padding-bottom:var(--spacing-xs)}.policy-section-title:after{content:"";display:block;width:50px;height:3px;background-color:var(--color-secondary);margin-top:var(--spacing-sm);border-radius:2px}.policy-subsection-title{font-family:Playfair Display,serif;font-size:1.6em;font-weight:600;color:var(--color-primary);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm)}.policy-container p,.policy-container ul{font-size:1em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-md)}.policy-container ul{list-style-type:disc;padding-left:var(--spacing-xl)}.policy-container ul ul{list-style-type:circle;margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs);padding-left:var(--spacing-lg)}.policy-container strong{color:var(--color-text-light-mode);font-weight:700}.policy-container a{color:var(--color-primary);text-decoration:underline}.policy-container a:hover{color:var(--color-primary-hover)}.policy-note{font-style:italic;font-size:.9em;color:var(--color-text-dark-mode);background-color:rgba(var(--color-primary-rgb),.05);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);margin-top:var(--spacing-md);border-left:3px solid var(--color-primary)}.policy-toc ol{list-style-position:inside;padding-left:0}.policy-toc a{color:#2c5f2d;text-decoration:none;font-weight:500}.policy-toc a:hover{text-decoration:underline}.policy-table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.95rem}.policy-table th,.policy-table td{padding:12px;text-align:left;border:1px solid #ddd}.policy-table th{background-color:#f4f4f4;font-weight:600;color:#2c5f2d}.policy-table tbody tr:nth-child(2n){background-color:#fafafa}.policy-negative-list{list-style:none;padding-left:0}.policy-negative-list li{padding:8px 0;color:#d32f2f;font-weight:500}.policy-appendix{background-color:#f9f9f9;border-left:4px solid #2c5f2d;padding-left:20px;margin-top:3rem}.policy-footer{margin-top:3rem;padding-top:2rem;border-top:2px solid #ddd;text-align:center;color:#666;font-size:.9rem}@media (max-width: 768px){.policy-table{font-size:.85rem}.policy-table th,.policy-table td{padding:8px}.policy-toc ol{font-size:.9rem}}@media (max-width: 768px){.policy-container{padding:var(--spacing-md)}.policy-header{font-size:2.2em}.policy-section-title{font-size:1.8em}.policy-subsection-title{font-size:1.4em}.policy-container p,.policy-container ul{font-size:.95em}}@media (max-width: 480px){.policy-header{font-size:1.8em}.policy-section-title{font-size:1.6em}.policy-subsection-title{font-size:1.2em}.policy-container ul{padding-left:var(--spacing-lg)}}.sitemap-list{list-style-type:none;padding-left:0;margin-left:0}.sitemap-list li{margin-bottom:var(--spacing-sm);font-size:1em;color:var(--color-text-medium-light)}.sitemap-list li a{color:var(--color-primary);text-decoration:none;transition:color .2s ease-in-out,text-decoration .2s ease-in-out}.sitemap-list li a:hover{color:var(--color-primary-hover);text-decoration:underline}.resources-management-container{max-width:1200px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.resources-management-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.resources-management-actions{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-lg)}.resources-management-actions .btn{padding:var(--spacing-md) var(--spacing-lg);font-size:1em}.resources-table-wrapper{overflow-x:auto;margin-bottom:var(--spacing-lg)}.resources-management-table{width:100%;border-collapse:collapse;margin-top:var(--spacing-lg);font-size:.95em}.resources-management-table th,.resources-management-table td{border:1px solid var(--color-border-dark);padding:var(--spacing-sm) var(--spacing-md);text-align:left;vertical-align:middle}.resources-management-table th{background-color:var(--color-background-dark-tertiary);color:var(--color-text-medium-light);font-weight:600;text-transform:uppercase;font-size:.9em}.resources-management-table tbody tr{background-color:var(--color-background-dark-primary)}.resources-management-table tbody tr:nth-child(2n){background-color:var(--color-background-dark-secondary)}.resources-management-table tbody tr:hover{background-color:rgba(var(--color-primary-rgb),.1)}.table-title-link,.table-url-link{color:var(--color-primary);text-decoration:none;font-weight:600}.table-title-link:hover,.table-url-link:hover{text-decoration:underline;color:var(--color-primary-hover)}.status-published{color:var(--color-success);font-weight:600}.status-draft{color:var(--color-warning);font-weight:600}.actions-buttons{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.action-button.edit{background-color:var(--color-secondary);color:var(--color-text-white);border-color:var(--color-secondary)}.action-button.delete{background-color:var(--color-accent-red);color:var(--color-text-white);border-color:var(--color-accent-red)}.action-button.edit:hover{background-color:var(--color-secondary-hover)}.action-button.delete:hover{background-color:var(--color-accent-red-hover)}@media (max-width: 1024px){.resources-management-container{padding:var(--spacing-lg) var(--spacing-md)}.resources-management-table th,.resources-management-table td{padding:var(--spacing-sm);font-size:.85em}}@media (max-width: 768px){.resources-management-header{font-size:2.2em}.resources-management-actions{justify-content:center}.resources-management-actions .btn{width:100%}.resources-management-table thead{display:none}.resources-management-table,.resources-management-table tbody,.resources-management-table tr,.resources-management-table td{display:block;width:100%}.resources-management-table tr{margin-bottom:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var(--color-background-dark-secondary);box-shadow:0 2px 5px #0000001a}.resources-management-table td{text-align:right;padding-left:50%;position:relative}.resources-management-table td:before{content:attr(data-label);position:absolute;left:var(--spacing-md);width:calc(50% - var(--spacing-md));padding-right:var(--spacing-md);white-space:nowrap;text-align:left;font-weight:600;color:var(--color-text-medium-light)}.actions-buttons{justify-content:flex-end}.pagination-controls{flex-direction:column;gap:var(--spacing-md)}}@media (max-width: 480px){.resources-management-header{font-size:1.8em}.resources-management-container{padding:var(--spacing-md)}.resources-management-table td{font-size:.85em;padding-left:40%}.resources-management-table td:before{width:calc(40% - var(--spacing-md))}}.add-resource-container{max-width:800px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.add-resource-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.add-resource-form{display:flex;flex-direction:column;gap:var(--spacing-md)}@media (max-width: 768px){.add-resource-container{padding:var(--spacing-md) var(--spacing-sm)}.add-resource-header{font-size:2.2em}.form-group label,.form-input,.form-textarea,.form-select{font-size:.95em}.form-actions{flex-direction:column;align-items:stretch}.form-actions .btn{width:100%}}@media (max-width: 480px){.add-resource-header{font-size:1.8em}}.edit-resource-container{max-width:800px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.edit-resource-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.edit-resource-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-group{margin-bottom:var(--spacing-sm)}.form-group label{display:block;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--color-text-light-mode)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-sm);background-color:var(--color-background-dark-tertiary);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;font-size:1em;box-sizing:border-box}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.3)}.form-textarea{resize:vertical;min-height:100px}.form-hint{font-size:.85em;color:var(--color-text-medium-light);margin-top:var(--spacing-xs);font-style:italic}.checkbox-group{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.form-checkbox{width:20px;height:20px;cursor:pointer;accent-color:var(--color-primary)}.checkbox-group label{margin-bottom:0}.submit-message{text-align:center;padding:var(--spacing-sm);margin-top:var(--spacing-md);border-radius:var(--border-radius-sm);font-weight:500;font-size:.95em;max-width:600px;margin-left:auto;margin-right:auto}.submit-message.success{color:var(--color-success);background-color:rgba(var(--color-success-rgb),.15);border:1px solid var(--color-success)}.submit-message.error{color:var(--color-error);background-color:rgba(var(--color-error-rgb),.15);border:1px solid var(--color-error)}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.form-actions .btn{flex-shrink:0}@media (max-width: 768px){.edit-resource-container{padding:var(--spacing-md) var(--spacing-sm)}.edit-resource-header{font-size:2.2em}.form-group label,.form-input,.form-textarea,.form-select{font-size:.95em}.form-actions{flex-direction:column;align-items:stretch}.form-actions .btn{width:100%}}@media (max-width: 480px){.edit-resource-header{font-size:1.8em}}.single-resource-container{max-width:1000px;margin:var(--spacing-xxl) auto;padding:0;background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);font-family:Nunito,sans-serif;position:relative;overflow:hidden}.back-to-resources-button.top-back-button{position:absolute;top:var(--spacing-md);left:var(--spacing-lg);z-index:20;font-size:.9em;padding:var(--spacing-sm) var(--spacing-md)}.resource-hero-section{position:relative;width:100%;border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);overflow:hidden;display:flex;flex-direction:column;align-items:center;padding-bottom:var( --spacing-xl )}.resource-hero-image{position:relative;width:100%;min-height:400px;background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);text-align:center}.resource-hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1}.resource-hero-no-image{width:100%;background-color:var( --color-background-dark-tertiary );padding:var(--spacing-xxl) var(--spacing-lg);border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);text-align:center}.resource-title{font-family:Playfair Display,serif;font-size:4em;font-weight:700;color:var(--color-text-white);text-align:center;max-width:90%;z-index:2;text-shadow:0px 4px 10px rgba(0,0,0,.5);margin:0;position:relative}.resource-title.no-hero-image{color:var(--color-primary-light);text-shadow:none;font-size:2.8em;padding:0;margin-bottom:var(--spacing-sm);text-align:center}.resource-subtitle-tagline{font-size:1.2em;color:var(--color-text-medium-light);text-align:center;margin-top:var(--spacing-sm);margin-bottom:var(--spacing-lg);max-width:80%;margin-left:auto;margin-right:auto;display:block}.resource-category-container{width:100%;padding:var(--spacing-md) var(--spacing-lg);text-align:center;border-bottom-left-radius:var(--border-radius-lg);border-bottom-right-radius:var(--border-radius-lg);margin-top:var(--spacing-sm)}.resource-detail-tag{font-size:.9em;padding:.4em .8em;border-radius:var(--border-radius-pill);font-weight:600;text-transform:uppercase;white-space:nowrap;box-shadow:0 1px 3px #0003;display:inline-block}.resource-detail-tag.chef-inspirations{background-color:var( --color-tag-cuisine-bg );color:var(--color-tag-cuisine-text)}.resource-detail-tag.essential-kitchen-tools{background-color:var(--color-tag-method-bg);color:var(--color-tag-method-text)}.resource-detail-tag.pantry-staples-artisanal-ingredients{background-color:var( --color-tag-main-ingredient-bg );color:var(--color-tag-main-ingredient-text)}.resource-detail-tag.cookbooks-culinary-wisdom{background-color:var(--color-tag-category-bg);color:var(--color-tag-category-text)}.resource-detail-tag.sustainable-sourcing-mindful-living{background-color:var(--color-tag-season-bg);color:var(--color-tag-season-text)}.resource-detail-tag.plant-forward-guides-inspirations{background-color:var(--color-tag-dietary-bg);color:var(--color-tag-dietary-text)}.single-resource-admin-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-background-dark-tertiary);border-bottom-left-radius:var(--border-radius-lg);border-bottom-right-radius:var(--border-radius-lg);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:0 2px 10px #0003}.single-resource-section{width:100%;max-width:800px;margin:var(--spacing-xxl) auto 0;padding:0 var(--spacing-lg);box-sizing:border-box}.single-resource-section-header{font-family:Playfair Display,serif;color:var(--color-primary);font-size:2.2em;margin-bottom:var(--spacing-md);text-align:center;position:relative;padding-bottom:var(--spacing-sm)}.single-resource-section-header:after{content:"";display:block;width:60px;height:2px;background-color:var(--color-secondary);margin:var(--spacing-sm) auto 0}.resource-content{font-size:1.1em;color:var(--color-text-medium-light);line-height:1.7}.resource-content.markdown-body h1,.resource-content.markdown-body h2,.resource-content.markdown-body h3,.resource-content.markdown-body h4,.resource-content.markdown-body h5,.resource-content.markdown-body h6{font-family:Playfair Display,serif;color:var(--color-primary);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md);line-height:1.3}.resource-content.markdown-body h1{font-size:2.8em}.resource-content.markdown-body h2{font-size:2.2em}.resource-content.markdown-body h3{font-size:1.8em}.resource-content.markdown-body h4{font-size:1.5em}.resource-content.markdown-body p{margin-bottom:var(--spacing-md);line-height:1.7}.resource-content.markdown-body ul,.resource-content.markdown-body ol{margin-bottom:var(--spacing-md);padding-left:var(--spacing-lg)}.resource-content.markdown-body li{margin-bottom:var(--spacing-xs)}.resource-content.markdown-body a{color:var(--color-primary);text-decoration:underline}.resource-content.markdown-body strong{font-weight:700}.resource-content.markdown-body em{font-style:italic}.resource-content.markdown-body pre{background-color:var(--color-background-dark-tertiary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);padding:var(--spacing-md);overflow-x:auto;margin-bottom:var(--spacing-md)}.resource-content.markdown-body code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:.9em;color:var(--color-primary-light)}.resource-content.markdown-body pre code{display:block;padding:0;background-color:transparent;color:inherit}.resource-content.markdown-body img{max-width:100%;height:auto;display:block;margin:var(--spacing-md) auto;border-radius:var(--border-radius-md)}.resource-cta-bottom{margin-top:var(--spacing-xxl);margin-bottom:var(--spacing-xxl);display:flex;flex-direction:column;align-items:center;padding:0 var(--spacing-lg);width:100%;max-width:500px;margin-left:auto;margin-right:auto}.back-to-resources-button{display:block;width:max-content;margin:var(--spacing-xl) auto}@media (max-width: 768px){.single-resource-container{margin:var(--spacing-lg) auto;padding:0}.resource-hero-image{min-height:300px}.resource-title{font-size:3em}.resource-title.no-hero-image{font-size:2.5em}.resource-subtitle-tagline{font-size:1.1em}.single-resource-section{padding:0 var(--spacing-md)}.single-resource-section-header{font-size:1.8em}.resource-content{font-size:1em}}@media (max-width: 480px){.resource-hero-image{min-height:250px}.resource-title{font-size:2.2em}.resource-title.no-hero-image{font-size:2em}.resource-subtitle-tagline{font-size:1em}.single-resource-section-header{font-size:1.6em}.single-resource-admin-actions{justify-content:center;flex-wrap:wrap}.resource-cta-hero,.resource-cta-bottom{padding:0 var(--spacing-md)}}.user-management-container{max-width:1400px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.user-management-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-xl);text-align:center}.user-management-actions{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-lg);gap:var(--spacing-md)}.user-management-actions .btn{padding:var(--spacing-md) var(--spacing-lg);font-size:1em}.users-table-wrapper{overflow-x:auto;margin-bottom:var(--spacing-lg)}.user-management-table{width:100%;border-collapse:collapse;margin-top:var(--spacing-lg);font-size:.95em;min-width:900px}.user-management-table th,.user-management-table td{border:1px solid var(--color-border-dark);padding:var(--spacing-sm) var(--spacing-md);text-align:left;vertical-align:middle;white-space:nowrap}.user-management-table th{background-color:var(--color-background-dark-tertiary);color:var(--color-text-medium-light);font-weight:600;text-transform:uppercase;font-size:.9em}.user-management-table tbody tr{background-color:var(--color-background-dark-primary)}.user-management-table tbody tr:nth-child(2n){background-color:var( --color-background-dark-secondary )}.user-management-table tbody tr:hover{background-color:rgba(var(--color-primary-rgb),.1)}.status-verified{color:var(--color-success);font-weight:600}.status-unverified{color:var(--color-warning);font-weight:600}.status-blocked{color:var(--color-accent-red);font-weight:600}.status-active{color:var(--color-primary);font-weight:600}.current-user-tag{background-color:var(--color-primary);color:var(--color-text-white);padding:2px 6px;border-radius:var(--border-radius-pill);font-size:.75em;font-weight:700;margin-left:var(--spacing-xs);vertical-align:middle}.user-blocked-row{background-color:rgba(var(--color-accent-red-rgb),.1)}.user-blocked-row:hover{background-color:rgba(var(--color-accent-red-rgb),.2)}.actions-buttons{display:flex;gap:var(--spacing-xs);flex-wrap:wrap;justify-content:center}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.pagination-controls span{color:var(--color-text-medium-light)}.pagination-button{padding:var(--spacing-xs) var(--spacing-sm);font-size:.8em}.pagination-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1200px){.user-management-table{min-width:800px}}@media (max-width: 992px){.user-management-table{min-width:700px}.user-management-header{font-size:2.5em}}@media (max-width: 768px){.user-management-container{padding:var(--spacing-md) var(--spacing-sm)}.user-management-header{font-size:2.2em}.user-management-actions{justify-content:center}.user-management-table{min-width:unset;width:100%;border:none}.user-management-table thead{display:none}.user-management-table,.user-management-table tbody,.user-management-table tr,.user-management-table td{display:block;width:100%}.user-management-table tr{margin-bottom:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var(--color-background-dark-secondary);box-shadow:0 2px 5px #0000001a}.user-management-table td{text-align:right;padding-left:50%;position:relative;border:none;border-bottom:1px dashed var(--color-border-dark)}.user-management-table td:last-child{border-bottom:none}.user-management-table td:before{content:attr(data-label);position:absolute;left:var(--spacing-md);width:calc(50% - var(--spacing-md));padding-right:var(--spacing-md);white-space:nowrap;text-align:left;font-weight:600;color:var(--color-text-medium-light)}.actions-buttons{justify-content:flex-end;padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}}@media (max-width: 480px){.user-management-header{font-size:1.8em}.user-management-container{padding:var(--spacing-md)}.user-management-table td{font-size:.85em;padding-left:40%}.user-management-table td:before{width:calc(40% - var(--spacing-md))}.user-management-actions .btn{font-size:.9em;padding:var(--spacing-sm) var(--spacing-md)}}.store-page-container{max-width:1000px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;text-align:center}.store-header{margin-bottom:var(--spacing-xxl)}.store-title{font-family:Playfair Display,serif;font-size:3.5em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-md)}.store-tagline{font-size:1.5em;color:var(--color-text-light-mode);margin-bottom:var(--spacing-lg)}.store-intro{font-size:1.1em;line-height:1.7;color:var(--color-text-medium-light);max-width:700px;margin:0 auto var(--spacing-xl) auto}.store-coming-soon{font-size:1.2em;font-weight:600;color:var(--color-secondary);margin-top:var(--spacing-xl)}.store-featured-placeholder{margin-top:var(--spacing-xxl);padding-top:var(--spacing-xl);border-top:1px dashed var(--color-border-dark)}.section-title{font-family:Playfair Display,serif;font-size:2.2em;font-weight:600;color:var(--color-primary-light);margin-bottom:var(--spacing-xl);text-align:center}.placeholder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-md)}.placeholder-item{background-color:var(--color-background-dark-tertiary);padding:var(--spacing-lg);border-radius:var(--border-radius-md);box-shadow:0 4px 10px #0000004d;text-align:center}.placeholder-item h3{font-family:Playfair Display,serif;color:var(--color-text-light-mode);margin-bottom:var(--spacing-sm);font-size:1.5em}.placeholder-item p{font-size:.95em;color:var(--color-text-medium-light);line-height:1.6}.store-contact-info{margin-top:var(--spacing-xxl);font-size:.9em;color:var(--color-text-medium-light)}.store-contact-info a{color:var(--color-primary);text-decoration:underline}.store-products-section{margin-top:var(--spacing-xxl);padding:0 var(--spacing-md)}.products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl);justify-content:center;align-items:stretch}.loading-message,.error-message{text-align:center;padding:var(--spacing-xl);font-size:1.2em;color:var(--color-text-medium-light)}.error-message{color:var(--color-error)}@media (max-width: 768px){.store-page-container{padding:var(--spacing-md);margin:var(--spacing-lg) auto}.store-title{font-size:2.5em}.store-tagline{font-size:1.2em}.store-intro{font-size:1em}.section-title{font-size:1.8em}.placeholder-grid,.products-grid{grid-template-columns:1fr}}@media (max-width: 480px){.store-title{font-size:2em}.store-tagline{font-size:1em}}.accordion-item{border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-md);overflow:hidden;background-color:var( --color-background-dark-tertiary )}.accordion-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--spacing-md) var(--spacing-lg);background-color:var( --color-background-dark-secondary );border:none;border-bottom:1px solid var(--color-border-dark);cursor:pointer;text-align:left;transition:background-color .2s ease}.accordion-header:hover{background-color:var( --color-background-dark-tertiary )}.accordion-header:focus{outline:none;box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.3)}.accordion-title{font-family:Playfair Display,serif;font-size:1.5em;color:var( --color-text-light-mode );margin:0;flex-grow:1}.accordion-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--color-text-medium-light)}.accordion-content-wrapper{overflow:hidden}.accordion-content{padding:var(--spacing-lg);color:var(--color-text-light-mode);line-height:1.7}.accordion-content p,.accordion-content ul,.accordion-content ol,.accordion-content li{color:var( --color-text-light-mode )}.accordion-content .markdown-body p,.accordion-content .markdown-body ul,.accordion-content .markdown-body ol,.accordion-content .markdown-body h1,.accordion-content .markdown-body h2,.accordion-content .markdown-body h3,.accordion-content .markdown-body img,.accordion-content .markdown-body pre,.accordion-content .markdown-body li{margin-left:0;margin-right:0;text-align:left;color:var( --color-text-light-mode )}.accordion-content .markdown-body h1,.accordion-content .markdown-body h2,.accordion-content .markdown-body h3{font-size:1.6em;color:var(--color-primary);margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm)}.single-product-container{max-width:1000px;margin:var(--spacing-xxl) auto;padding:0;background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;position:relative;overflow:hidden}.back-to-store-button.top-back-button{position:absolute;top:var(--spacing-md);left:var(--spacing-lg);z-index:20;font-size:.9em;padding:var(--spacing-sm) var(--spacing-md)}.product-hero-image-gallery-section{display:flex;flex-direction:column;background-color:var(--color-background-dark-primary);border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);overflow:hidden;box-shadow:0 4px 10px #0000004d;padding:var( --spacing-lg );align-items:center;margin-top:var( --spacing-xl )}.product-image-gallery{display:flex;flex-direction:column;align-items:center;gap:var( --spacing-lg );width:100%;padding:0;position:relative}.product-hero-image{width:100%;padding-bottom:100%;background-size:cover;background-position:center;background-repeat:no-repeat;display:block;border-radius:var(--border-radius-md);overflow:hidden;position:relative;z-index:2;box-shadow:0 4px 10px #0000004d;min-height:0;flex-shrink:0}.product-hero-no-image{width:100%;padding-bottom:100%;background-color:var(--color-background-dark-tertiary);display:flex;justify-content:center;align-items:center;color:var(--color-text-medium-light);font-style:italic;font-size:1.1em;border-radius:var(--border-radius-md)}.product-thumbnails{display:flex;justify-content:center;gap:var(--spacing-sm);margin-top:var(--spacing-md);flex-wrap:wrap;max-width:100%;position:relative;z-index:1}.product-thumbnails .thumbnail{width:80px;height:80px;object-fit:cover;border-radius:var(--border-radius-sm);cursor:pointer;border:2px solid transparent;transition:border-color .2s ease,transform .1s ease;flex-shrink:0}.product-thumbnails .thumbnail:hover{border-color:var(--color-primary);transform:translateY(-2px)}.product-thumbnails .thumbnail.active{border-color:var(--color-secondary);box-shadow:0 0 0 2px rgba(var(--color-secondary-rgb),.5)}.product-main-details-section{padding:var(--spacing-xxl) var(--spacing-xl);text-align:center;color:var(--color-text-light-mode);background-color:var(--color-background-dark-secondary);border-bottom-left-radius:var(--border-radius-lg);border-bottom-right-radius:var(--border-radius-lg);box-shadow:0 4px 10px #0000004d;margin-top:0}.product-title{font-family:Playfair Display,serif;font-size:3.5em;font-weight:700;color:var(--color-primary-light);margin-bottom:var(--spacing-xs);line-height:1.2}.product-subtitle-tagline{font-family:Nunito,sans-serif;font-size:1.2em;color:var(--color-text-medium-light);margin-top:var(--spacing-sm);margin-bottom:var(--spacing-lg);font-style:italic;line-height:1.4}.product-price{font-size:2.2em;font-weight:700;color:var(--color-secondary);margin-bottom:var(--spacing-xl);display:flex;align-items:baseline;justify-content:center;gap:var(--spacing-sm)}.product-price .product-compare-at-price{font-size:.7em;color:var(--color-text-medium);text-decoration:line-through;font-weight:400;margin-left:var(--spacing-sm)}.product-buy-button{margin-bottom:var(--spacing-xl);display:inline-block;min-width:200px}.product-category-container{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md);text-align:center;width:100%}.product-detail-tag{font-size:.9em;padding:.4em .8em;border-radius:var(--border-radius-pill);font-weight:600;text-transform:uppercase;white-space:nowrap;box-shadow:0 1px 3px #0003;display:inline-block;background-color:var(--color-tag-category-bg);color:var(--color-tag-category-text);letter-spacing:.05em}.feedback-message{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);font-size:1em;font-weight:600;text-align:center;opacity:0;transform:translateY(10px);animation:fadeInOut 5s forwards}.feedback-message.success{background-color:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.feedback-message.error{background-color:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-border)}@keyframes fadeInOut{0%{opacity:0;transform:translateY(10px)}10%{opacity:1;transform:translateY(0)}90%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}.error-message{color:var(--color-error);font-weight:700;text-align:center;margin-top:var(--spacing-md)}.quantity-selector{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);font-size:1.1em;color:var(--color-text-light-mode);margin-left:auto;margin-right:auto;width:max-content}.quantity-selector label{font-weight:600;margin-right:var(--spacing-xs);color:var(--color-text-medium-light)}.quantity-selector button{background-color:var(--color-background-dark-tertiary);color:var(--color-text-light-mode);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);width:36px;height:36px;display:flex;justify-content:center;align-items:center;font-size:1.5em;font-weight:700;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.quantity-selector button:hover:not(:disabled){background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-white)}.quantity-selector button:disabled{opacity:.5;cursor:not-allowed;background-color:var(--color-background-dark-tertiary);color:var(--color-text-medium-light)}.quantity-input{width:60px;padding:var(--spacing-xs) var(--spacing-sm);text-align:center;font-size:1.1em;border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var(--color-background-dark-primary);color:var(--color-text-light-mode);appearance:textfield;-moz-appearance:textfield}.quantity-input::-webkit-outer-spin-button,.quantity-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.inventory-status{margin-bottom:var(--spacing-lg);font-size:1em;font-weight:600;text-align:center}.inventory-status .in-stock{color:var(--color-success)}.inventory-status .out-of-stock{color:var(--color-error)}.inventory-status .low-stock-warning{color:var(--color-warning);font-weight:700}.product-options{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);align-items:center;margin-left:auto;margin-right:auto;width:max-content}.option-group{display:flex;flex-direction:column;align-items:flex-start;width:100%;max-width:250px;text-align:left}.option-group label{font-size:.95em;font-weight:600;color:var(--color-text-medium-light);margin-bottom:var(--spacing-xs)}.option-select{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-md);background-color:var(--color-background-dark-primary);color:var(--color-text-light-mode);font-size:1em;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url('data:image/svg+xml;utf8,<svg fill="%23a0a0a0" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>');background-repeat:no-repeat;background-position:right 8px center;background-size:20px;transition:border-color .2s ease,box-shadow .2s ease}.option-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.3)}.product-info-accordions{max-width:800px;margin:var(--spacing-xxl) auto;padding:0;box-shadow:0 4px 15px #0006;border-radius:var(--border-radius-lg);overflow:hidden}.product-content.markdown-body strong{font-weight:700}.product-content.markdown-body em{font-style:italic}@media (min-width: 900px){.single-product-container{padding:0}.product-hero-image-gallery-section{flex-direction:row;align-items:flex-start;padding:var(--spacing-xl);justify-content:center;position:relative}.product-image-gallery{display:flex;flex-direction:row;align-items:flex-start;gap:var(--spacing-lg);width:100%;padding:0;position:relative;z-index:1}.product-thumbnails{flex-direction:column;justify-content:flex-start;gap:var(--spacing-md);width:120px;height:500px;overflow-y:auto;overflow-x:hidden;padding-right:var(--spacing-sm);margin-top:0;align-items:center;z-index:10;position:relative}.product-hero-image{width:calc(100% - 120px - var(--spacing-lg));padding-bottom:75%;background-size:contain;margin:0;border-bottom-left-radius:var(--border-radius-md);border-top-right-radius:var(--border-radius-lg);border-top-left-radius:var(--border-radius-md);box-shadow:0 4px 10px #0000004d;z-index:5}.product-hero-no-image{width:calc(100% - 120px - var(--spacing-lg));height:500px;padding-bottom:0}.product-main-details-section{padding:var(--spacing-xxl) var(--spacing-xl);margin-top:var(--spacing-xxl);border-top-left-radius:0;border-top-right-radius:0;align-items:center;text-align:center}.product-main-details-section .product-options,.product-main-details-section .quantity-selector,.product-main-details-section .inventory-status,.product-main-details-section .feedback-message,.product-main-details-section .product-category-container{margin-left:auto;margin-right:auto}.product-buy-button{margin-left:auto;margin-right:auto;display:block}}.product-thumbnails::-webkit-scrollbar{width:8px}.product-thumbnails::-webkit-scrollbar-track{background:var(--color-background-dark-tertiary);border-radius:10px}.product-thumbnails::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:10px}.product-thumbnails::-webkit-scrollbar-thumb:hover{background:var(--color-primary-light)}@media (max-width: 768px){.single-product-container{margin:var(--spacing-lg) auto;border-radius:0;box-shadow:none;padding:var(--spacing-md)}.back-to-store-button.top-back-button{position:relative;margin-left:var(--spacing-md);margin-bottom:var(--spacing-md);display:inline-block}.product-hero-image-gallery-section{padding:var(--spacing-md);border-radius:0}.product-main-details-section{padding:var(--spacing-md)}.product-title{font-size:2.8em}.product-subtitle-tagline{font-size:1.1em}.product-price{font-size:1.8em}.product-buy-button{margin-bottom:var(--spacing-lg)}.single-product-section{padding:0 var(--spacing-md)}.single-product-section-header{font-size:1.8em}.product-content{font-size:1em}}@media (max-width: 480px){.product-hero-image{min-height:250px}.product-title{font-size:2.2em}.product-subtitle-tagline{font-size:1em}.product-price{font-size:1.5em}.single-product-section-header{font-size:1.6em}}.product-management-container{max-width:1200px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.management-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-lg);text-align:center}.management-actions{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.no-items-message,.loading-message,.error-message{text-align:center;padding:var(--spacing-xl);font-size:1.2em;color:var(--color-text-medium-light)}.management-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.management-item{display:flex;justify-content:space-between;align-items:center;background-color:var(--color-background-dark-tertiary);padding:var(--spacing-md);border-radius:var(--border-radius-md);box-shadow:0 2px 5px #0003}.item-details{display:flex;align-items:center;gap:var(--spacing-md);flex-grow:1}.item-thumbnail{width:80px;height:80px;object-fit:cover;border-radius:var(--border-radius-sm);border:1px solid var(--color-border-dark)}.item-info{text-align:left}.item-title{font-family:Playfair Display,serif;font-size:1.5em;font-weight:600;color:var(--color-text-light-mode);margin-bottom:var(--spacing-xs)}.item-category,.item-price,.item-status{font-size:.9em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-xs)}.item-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;justify-content:flex-end}.item-actions .btn{padding:var(--spacing-sm) var(--spacing-md);font-size:.9em;white-space:nowrap}@media (max-width: 768px){.product-management-container{padding:var(--spacing-md);margin:var(--spacing-lg) auto}.management-header{font-size:2.2em}.management-actions{justify-content:center}.management-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.item-details{width:100%}.item-info{flex-grow:1}.item-actions{width:100%;justify-content:center}}@media (max-width: 480px){.management-header{font-size:1.8em}.item-thumbnail{width:60px;height:60px}.item-title{font-size:1.2em}.item-category,.item-price,.item-status{font-size:.8em}}.product-form-container{max-width:800px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.product-form-header{font-family:Playfair Display,serif;font-size:3em;font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-lg);text-align:center}.product-common-form .form-group{margin-bottom:var(--spacing-lg)}.product-common-form .form-group label{display:block;font-size:1em;font-weight:600;color:var(--color-text-light-mode);margin-bottom:var(--spacing-sm)}.product-common-form .form-input,.product-common-form .form-textarea{width:100%;padding:var(--spacing-md);border:1px solid var(--color-border-dark);border-radius:var(--border-radius-sm);background-color:var(--color-background-dark-tertiary);color:var(--color-text-light-mode);font-family:Nunito,sans-serif;font-size:1em;transition:border-color .2s ease,box-shadow .2s ease}.product-common-form .form-input:focus,.product-common-form .form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.3)}.product-common-form .form-textarea{resize:vertical;min-height:80px}.product-common-form .form-hint{font-size:.85em;color:var(--color-text-medium-light);margin-top:var(--spacing-xs);opacity:.8}.product-common-form .form-group-inline{display:flex;gap:var(--spacing-md)}.product-common-form .form-group-half{flex:1}.product-common-form .checkbox-group{display:flex;align-items:center;margin-bottom:var(--spacing-md)}.product-common-form .form-checkbox{margin-right:var(--spacing-sm);width:18px;height:18px;min-width:18px}.product-common-form .submit-message{text-align:center;padding:var(--spacing-sm);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md);font-weight:600}.product-common-form .submit-message.success{background-color:rgba(var(--color-success-rgb),.2);color:var(--color-success)}.product-common-form .submit-message.error{background-color:rgba(var(--color-error-rgb),.2);color:var(--color-error)}.product-common-form .form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.product-common-form .form-actions .btn{padding:var(--spacing-md) var(--spacing-xl);font-size:1.1em}@media (max-width: 768px){.product-form-container{padding:var(--spacing-md);margin:var(--spacing-lg) auto}.product-form-header{font-size:2.2em}.product-common-form .form-actions{flex-direction:column;align-items:center}.product-common-form .form-actions .btn{width:100%;max-width:300px}.product-common-form .form-group-inline{flex-direction:column}}@media (max-width: 480px){.product-form-header{font-size:1.8em}.product-common-form .form-input,.product-common-form .form-textarea{padding:var(--spacing-sm);font-size:.9em}}.additional-image-input-group{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.additional-image-input-group .form-input{flex-grow:1;margin-bottom:0}.remove-image-btn{flex-shrink:0}.add-image-btn{margin-top:var(--spacing-sm);width:max-content}@media (max-width: 768px){.additional-image-input-group{flex-direction:column;align-items:stretch}.additional-image-input-group .form-input,.remove-image-btn,.add-image-btn{width:100%}}.add-product-container{max-width:800px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}@media (max-width: 768px){.add-product-container{padding:var(--spacing-md);margin:var(--spacing-lg) auto}}.edit-product-container{max-width:800px;margin:var(--spacing-xxl) auto;padding:var(--spacing-lg) var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.edit-product-header{color:var(--color-secondary)}@media (max-width: 768px){.edit-product-container{padding:var(--spacing-md);margin:var(--spacing-lg) auto}}.cart-page-container{max-width:1200px;margin:var(--spacing-xxl) auto;padding:var(--spacing-xl);background-color:var(--color-background-dark-secondary);border-radius:var(--border-radius-lg);box-shadow:0 8px 20px var(--color-shadow-dark);color:var(--color-text-light-mode);font-family:Nunito,sans-serif}.cart-page-header{font-family:Playfair Display,serif;font-size:3em;color:var(--color-primary-light);text-align:center;margin-bottom:var(--spacing-xl);position:relative;padding-bottom:var(--spacing-md)}.cart-page-header:after{content:"";display:block;width:80px;height:3px;background-color:var(--color-secondary);margin:var(--spacing-sm) auto 0;border-radius:2px}.loading-message,.error-message{text-align:center;padding:var(--spacing-xl);font-size:1.2em;color:var(--color-text-light-mode)}.error-message{color:var(--color-error);font-weight:700}.cart-empty-state{text-align:center;padding:var(--spacing-xxl) var(--spacing-md);background-color:var(--color-background-dark-tertiary);border-radius:var(--border-radius-md);margin-top:var(--spacing-xl)}.cart-empty-state p{font-size:1.1em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-lg)}.cart-content-wrapper{display:flex;gap:var(--spacing-xl);flex-wrap:wrap}.cart-items-section{flex:3;min-width:60%;background-color:var(--color-background-dark-tertiary);padding:var(--spacing-lg);border-radius:var(--border-radius-md);box-shadow:0 2px 10px #0003}.cart-summary-section{flex:1;min-width:300px;background-color:var(--color-background-dark-tertiary);padding:var(--spacing-lg);border-radius:var(--border-radius-md);box-shadow:0 2px 10px #0003;display:flex;flex-direction:column;align-self:flex-start;position:sticky;top:var(--spacing-xl)}.cart-item-card{display:flex;align-items:center;padding:var(--spacing-md) 0;border-bottom:1px solid var(--color-border-dark);margin-bottom:var(--spacing-md)}.cart-item-card:last-of-type{border-bottom:none;margin-bottom:0}.cart-item-image-col{width:100px;height:100px;flex-shrink:0;border-radius:var(--border-radius-sm);overflow:hidden;margin-right:var(--spacing-md);background-color:var(--color-background-dark-primary);display:flex;justify-content:center;align-items:center}.cart-item-image{width:100%;height:100%;object-fit:cover}.cart-item-placeholder-image{font-size:.9em;color:var(--color-text-medium-light);text-align:center}.cart-item-details-col{flex-grow:1;display:flex;flex-direction:column}.cart-item-title{font-weight:600;color:var(--color-text-light-mode);font-size:1.2em;margin-bottom:var(--spacing-xs);text-decoration:none;transition:color .2s ease}.cart-item-title:hover{color:var(--color-primary);text-decoration:underline}.cart-item-variant{font-size:.95em;color:var(--color-text-medium-light);margin-bottom:var(--spacing-sm)}.cart-item-price{font-size:1.1em;font-weight:700;color:var(--color-secondary-light);margin-bottom:var(--spacing-md)}.cart-item-quantity-controls{display:flex;align-items:center;gap:var(--spacing-sm)}.cart-item-quantity-controls .quantity-button{width:35px;height:35px;font-size:1.3em}.cart-item-quantity-controls .quantity-input{width:50px;padding:8px;font-size:1.1em}.cart-item-actions-col{margin-left:var(--spacing-md);align-self:flex-start}.remove-item-button{padding:var(--spacing-xs) var(--spacing-md);font-size:.85em}.clear-cart-page-button{margin-top:var(--spacing-lg);width:100%;padding:var(--spacing-md);font-size:1em}.summary-header{font-family:Playfair Display,serif;font-size:1.8em;color:var(--color-primary-light);margin-bottom:var(--spacing-lg);text-align:center}.summary-row{display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm);font-size:1.1em;color:var(--color-text-medium-light)}.summary-row.total{font-weight:700;font-size:1.4em;color:var(--color-primary);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-dark)}.checkout-button-page,.continue-shopping-button{width:100%;margin-top:var(--spacing-lg);padding:var(--spacing-md);font-size:1.2em}.continue-shopping-button{margin-top:var(--spacing-md)}@media (max-width: 1024px){.cart-content-wrapper{flex-direction:column}.cart-items-section,.cart-summary-section{min-width:unset;width:100%}.cart-summary-section{position:static;top:unset}}@media (max-width: 768px){.cart-page-container{padding:var(--spacing-lg);border-radius:0;box-shadow:none}.cart-page-header{font-size:2.5em}.cart-item-image-col{width:80px;height:80px}.cart-item-title{font-size:1.1em}.cart-item-price{font-size:1em}.cart-item-quantity-controls .quantity-button,.cart-item-quantity-controls .quantity-input{width:30px;height:30px;font-size:1em}.cart-item-quantity-controls .quantity-input{width:40px}.remove-item-button{font-size:.8em;padding:var(--spacing-xs)}}@media (max-width: 480px){.cart-page-header{font-size:2em}.cart-item-card{flex-wrap:wrap}.cart-item-image-col{margin-bottom:var(--spacing-sm)}.cart-item-details-col{width:100%;margin-left:0}.cart-item-actions-col{width:100%;margin-left:0;text-align:right}.remove-item-button{width:auto;margin-top:var(--spacing-sm)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;overflow-y:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{height:100%;margin:0;padding:0;font-family:Nunito,sans-serif;font-size:16px;line-height:1.6;font-weight:400;background-color:var(--color-background-dark-primary);color:var(--color-text-light-mode)}#root{display:flex;flex-direction:column;min-height:100vh;width:100%}:root{--color-background-dark-primary: #1a1a1a;--color-background-dark-secondary: #252525;--color-background-dark-tertiary: #333333;--color-border-dark: #444444;--color-shadow-dark: rgba(0, 0, 0, .4);--color-shadow-light: rgba(0, 0, 0, .15);--color-shadow-hover: rgba(0, 0, 0, .5);--color-text-light-mode: #f0f0f0;--color-text-medium-light: #cccccc;--color-text-dark-mode: #1a1a1a;--color-text-primary: #809b52;--color-text-secondary: #c7754c;--color-text-white: #ffffff;--color-primary: #809b52;--color-primary-hover: #6a8246;--color-secondary: #c7754c;--color-secondary-hover: #a75c36;--color-secondary-light: #d68d6c;--color-accent-blue: #70a0af;--color-accent-red: #b54f4f;--color-accent-red-hover: #a04040;--color-primary-rgb: 128, 155, 82;--color-secondary-rgb: 199, 117, 76;--color-accent-blue-rgb: 112, 160, 175;--color-accent-red-rgb: 181, 79, 79;--color-resource-hero-overlay-start: rgba(26, 26, 26, .4);--color-resource-hero-overlay-end: rgba(37, 37, 37, .5);--color-success: #5cb85c;--color-success-light: #70c470;--color-warning: #f0ad4e;--color-warning-light: #f3c27e;--color-error: #d9534f;--color-error-light: #e07f7c;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-xxl: 3rem;--border-radius-sm: .25rem;--border-radius-md: .5rem;--border-radius-lg: .75rem;--border-radius-pill: 9999px;--color-tag-category-bg: rgba(128, 155, 82, .2);--color-tag-category-text: var(--color-primary);--color-tag-cuisine-bg: rgba(212, 163, 115, .2);--color-tag-cuisine-text: #d4a373;--color-tag-season-bg: rgba(168, 218, 220, .2);--color-tag-season-text: #a8dadc;--color-tag-dietary-bg: rgba(229, 107, 111, .2);--color-tag-dietary-text: #e56b6f;--color-tag-method-bg: rgba(247, 196, 73, .2);--color-tag-method-text: #f7c449;--color-tag-main-ingredient-bg: rgba(125, 137, 215, .2);--color-tag-main-ingredient-text: #a6b0f0;--color-tag-difficulty-bg: rgba(144, 169, 178, .2);--color-tag-difficulty-text: #90a9b2;--color-tag-occasion-bg: rgba(193, 131, 159, .2);--color-tag-occasion-text: #c1839f;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--focus-ring-color: rgba(128, 155, 82, .4);--focus-ring-width: 3px}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,serif;color:var(--color-text-light-mode);margin-bottom:var(--spacing-md);line-height:1.2;font-weight:700}h1{font-size:clamp(2rem,5vw,3rem)}h2{font-size:clamp(1.75rem,4vw,2.2rem)}h3{font-size:clamp(1.5rem,3vw,1.8rem)}h4{font-size:clamp(1.25rem,2.5vw,1.5rem)}h5{font-size:clamp(1.1rem,2vw,1.25rem)}h6{font-size:clamp(1rem,1.5vw,1.1rem)}p{margin-bottom:var(--spacing-md);line-height:1.7}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--color-primary-hover);text-decoration:underline}a:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:2px;border-radius:var(--border-radius-sm)}@media (max-width: 768px){:root{--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.5rem;--spacing-xxl: 2rem}body{font-size:16px}}*:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (prefers-contrast: high){:root{--color-border-dark: #666666;--color-shadow-dark: rgba(0, 0, 0, .8)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.cookie-consent-banner{position:fixed;bottom:0;left:0;width:100%;background-color:var( --color-background-dark-secondary );color:var(--color-text-light-mode);padding:var(--spacing-md) var(--spacing-xl);box-shadow:0 -2px 10px var(--color-shadow-dark);z-index:2000;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg)}.cookie-consent-content{display:flex;flex-direction:column;align-items:center;max-width:900px;text-align:center;gap:var(--spacing-md)}.cookie-consent-message{margin:0;font-size:.95em;line-height:1.5;color:var(--color-text-medium-light)}.cookie-consent-message a{color:var(--color-primary);text-decoration:underline}.cookie-consent-preferences{display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:center;font-size:.9em}.cookie-consent-preferences label{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;white-space:nowrap;color:var(--color-text-white);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-background-dark-tertiary);border-radius:var(--border-radius-sm);border:1px solid var(--color-border-dark)}.cookie-consent-preferences input[type=checkbox]{accent-color:var(--color-primary);width:1.1em;height:1.1em;cursor:pointer}.cookie-consent-preferences input[type=checkbox]:disabled{cursor:not-allowed;opacity:.7}.cookie-consent-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.cookie-consent-actions button{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--border-radius-sm);cursor:pointer;font-size:.95em;font-weight:600;transition:background-color .2s ease,color .2s ease,transform .1s ease;white-space:nowrap}.cookie-consent-actions .btn-decline{background-color:transparent;color:var(--color-accent-red);border:1px solid var(--color-accent-red)}.cookie-consent-actions .btn-decline:hover{background-color:var(--color-accent-red);color:var(--color-text-white);transform:translateY(-1px)}.cookie-consent-actions .btn-save-preferences{background-color:var(--color-background-dark-tertiary);color:var(--color-text-light-mode);border:1px solid var(--color-border-dark)}.cookie-consent-actions .btn-save-preferences:hover{background-color:var(--color-primary);color:var(--color-text-white);border-color:var(--color-primary);transform:translateY(-1px)}.cookie-consent-actions .btn-accept-all{background-color:var(--color-primary);color:var(--color-text-white);border:1px solid var(--color-primary)}.cookie-consent-actions .btn-accept-all:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);transform:translateY(-1px)}@media (max-width: 768px){.cookie-consent-banner{padding:var(--spacing-sm);gap:var(--spacing-sm)}.cookie-consent-content{gap:var(--spacing-sm)}.cookie-consent-message{font-size:.9em}.cookie-consent-preferences{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.cookie-consent-actions{flex-direction:column;width:100%}.cookie-consent-actions button{width:100%;max-width:300px;margin:0 auto}}
