@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;800&display=swap);@import url(https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,700;1,400&family=Poppins:wght@600&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.modal-overlay{align-items:center;background:#0009;box-sizing:border-box;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:1060}.ingredient-modal-content{background:#fff;border-radius:8px;box-shadow:0 5px 15px #0000004d;display:flex;gap:20px;max-height:90vh;max-width:660px;overflow-y:auto;padding:25px;position:relative;width:100%}.ingredient-modal-close-btn{background:none;border:none;color:#888;cursor:pointer;font-size:1.8rem;line-height:1;padding:0;position:absolute;right:15px;top:12px;z-index:2}.ingredient-modal-close-btn:hover{color:#555}.ingredient-thumbnail-column{align-self:flex-start;border-radius:8px;flex-shrink:0;height:135px;object-fit:cover;width:135px}.ingredient-main-panel{display:flex;flex-direction:column;flex-grow:1;min-width:0;text-align:left}.ingredient-main-panel h3{color:#333;font-size:1.6rem;font-weight:600;margin-bottom:.25rem;margin-top:0}.ingredient-main-panel p.description{color:#555;font-size:.9rem;line-height:1.5;margin-bottom:1.25rem}.size-quantity-wrapper{align-items:flex-start;display:flex;gap:15px;margin-bottom:1.5rem;width:100%}.size-buttons-column{flex-grow:1;min-width:0}.quantity-control-column{flex-shrink:0;margin-top:5px;padding-top:0}.size-buttons-container{display:flex;flex-wrap:wrap;gap:8px}.size-button{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;line-height:1.4;padding:8px 12px;text-align:center;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.size-button .size-button-amount{display:inline;font-size:1rem;font-weight:500}.size-button .size-button-price{color:#6c757d;display:inline;font-size:.9rem}.size-button.active .size-button-amount{color:#fff}.size-button.active .size-button-price{color:#e0e0e0}.size-button:hover{background-color:#e9ecef;border-color:#adb5bd}.size-button.active{background-color:#007bff;border-color:#0056b3;box-shadow:0 0 0 .1rem #007bff40;color:#fff}.no-options-message{color:#6c757d;font-size:.9rem}.ingredient-quantity-control{align-items:center;display:flex}.ingredient-quantity-control .quantity-input{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:.9rem;height:32px;margin:0 6px;padding:6px 4px;text-align:center;width:40px}.ingredient-quantity-control .quantity-input::-webkit-inner-spin-button,.ingredient-quantity-control .quantity-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ingredient-quantity-control .quantity-arrow{align-items:center;background:none;border:1px solid #ccc;border-radius:50%;color:#555;cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:background-color .2s ease;width:32px}.ingredient-quantity-control .quantity-arrow:hover:not(:disabled){background-color:#f0f0f0}.ingredient-quantity-control .quantity-arrow:disabled{cursor:not-allowed;opacity:.5}.ingredient-quantity-control .quantity-arrow svg{display:block;height:10px;width:10px}.ingredient-modal-actions{display:flex;flex-direction:row;gap:10px;justify-content:flex-end;margin-top:auto;padding-top:1rem;width:100%}.ingredient-btn-primary,.ingredient-btn-secondary{border:none;border-radius:5px;cursor:pointer;font-size:.9rem;font-weight:500;padding:9px 16px;transition:background-color .2s ease,transform .1s ease;width:auto}.ingredient-btn-primary{background-color:#007bff;color:#fff;order:1}.ingredient-btn-primary:hover{background-color:#0056b3}.ingredient-btn-primary:active{transform:translateY(1px)}.ingredient-btn-secondary{background-color:#6c757d;color:#fff}.ingredient-btn-secondary:hover{background-color:#545b62}.ingredient-btn-secondary:active{transform:translateY(1px)}.checkout-item-name-clickable{cursor:pointer}.checkout-modal-overlay{align-items:center;background:#0009;box-sizing:border-box;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:1050}.checkout-modal{background:#fff;border-radius:8px;box-shadow:0 5px 15px #0000004d;display:flex;flex-direction:column;max-height:925px;min-height:925px;overflow:hidden;padding:20px 25px;position:relative;transition:width .4s ease-in-out,height .4s ease-in-out}.checkout-modal h2{color:#333;flex-shrink:0;font-size:1.6rem;margin-bottom:20px;margin-top:0;text-align:center}.checkout-modal-close-btn{background:none;border:none;color:#888;cursor:pointer;font-size:1.8rem;line-height:1;padding:0;position:absolute;right:15px;top:12px;z-index:10}.checkout-modal-close-btn:hover{color:#555}.checkout-cart-items-container{box-sizing:border-box;flex-grow:1;margin-bottom:15px;min-height:100px;overflow-y:auto;padding-right:10px}.checkout-cart-item{grid-gap:10px;align-items:center;border-bottom:1px solid #eee;display:grid;gap:10px;grid-template-columns:50px 1fr 35px 100px 20px 45px;padding:12px 0}.checkout-cart-item:last-child{border-bottom:none}.checkout-item-image{border-radius:4px;height:50px;object-fit:cover;width:50px}.checkout-item-info{display:flex;flex-direction:column;justify-content:center;min-width:0}.checkout-item-name{font-size:.9rem;font-weight:700;white-space:normal;word-break:break-word}.checkout-item-amount{color:#555;font-size:.85rem;font-style:italic;white-space:normal;word-break:break-word}.checkout-item-line-total,.checkout-item-unit-price{color:#555;font-size:.9rem;text-align:right}.checkout-item-line-total{color:#333;font-weight:700}.checkout-item-quantity{align-items:center;display:flex;justify-content:center}.quantity-input{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield;border:1px solid #ccc;border-radius:4px;font-size:.9rem;margin:0 4px;padding:5px 3px;text-align:center;width:35px}.quantity-input::-webkit-inner-spin-button,.quantity-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quantity-arrow{align-items:center;background:none;border:1px solid #ccc;border-radius:50%;color:#555;cursor:pointer;display:flex;height:22px;justify-content:center;padding:0;transition:background-color .2s;width:22px}.quantity-arrow:hover:not(:disabled){background-color:#f0f0f0}.quantity-arrow:disabled{cursor:not-allowed;opacity:.5}.quantity-arrow svg{display:block;height:10px;width:10px}.checkout-item-remove{align-items:center;background:none;border:none;color:#c00;cursor:pointer;display:flex;justify-content:center;padding:0}.checkout-item-remove:hover{color:red}.checkout-item-remove svg{display:block}.empty-cart-message{color:#777;margin:20px 0;text-align:center}.checkout-price-summary{border-top:1px solid #ddd;flex-shrink:0;margin-top:10px;padding-top:10px}.summary-row{display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:6px}.summary-row span:first-child{color:#555}.summary-row span:last-child{color:#333;font-weight:700}.tax-row .tax-amount-container{align-items:center;display:flex}.shipping-note.summary-shipping-note{color:#007bff;font-size:.8rem;margin-top:5px;text-align:left}.summary-divider{border:0;border-top:1px dashed #ccc;margin:8px 0}.total-row span{font-size:1.05rem;font-weight:700}.checkout-step2-layout,.checkout-step3-layout{display:flex;flex-grow:1;gap:10px;min-height:350px;overflow:hidden}.checkout-form-pane{box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;gap:5px;min-width:0;overflow-y:auto;padding-right:10px}.checkout-cart-summary-pane{border-left:1px solid #ddd;box-sizing:border-box;display:flex;flex:0 0 475px;flex-direction:column;padding-left:15px}.checkout-cart-summary-pane h4{border-bottom:1px solid #eee;color:#555;flex-shrink:0;font-size:1.1rem;margin-bottom:10px;margin-top:0;padding-bottom:5px}.checkout-cart-summary-pane .checkout-cart-items-container{flex-grow:1;margin-bottom:10px}.checkout-cart-summary-pane .summary-totals{border-top:1px solid #ddd;flex-shrink:0;margin-top:auto;padding-top:10px}.address-selection-section{border-bottom:1px dashed #ccc;margin-bottom:15px;padding-bottom:10px}.address-selection-section h4{color:#555;font-size:1rem;margin-bottom:8px;margin-top:0}.address-list{border:1px solid #eee;border-radius:4px;margin-bottom:8px;max-height:185px;overflow-y:auto}.address-list-item{border-bottom:1px solid #eee;cursor:pointer;font-size:.85rem;padding:8px 10px;transition:background-color .2s}.address-list-item:last-child{border-bottom:none}.address-list-item:hover{background-color:#f8f8f8}.address-list-item.selected{background-color:#e7f3ff;border-left:3px solid #007bff;font-weight:500;padding-left:7px}.address-list-item strong{color:#333}.form-group{margin-bottom:10px}.form-group label{color:#444;font-weight:500;margin-bottom:4px}.form-group input[type=email],.form-group input[type=tel],.form-group input[type=text],.form-group select{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:.95rem;height:38px;padding:8px 10px;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input:focus,.form-group select:focus{border-color:#007bff;outline:none}.form-group input[aria-invalid=true],.form-group select[aria-invalid=true]{border-color:#dc3545}.form-group input:disabled,.form-group select:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}.form-group-inline{display:flex;gap:10px}.form-subgroup{flex:1 1}.form-subgroup.city{flex-basis:40%}.form-subgroup.state{flex-basis:35%}.form-subgroup.zip{flex-basis:25%}.form-note{color:#666}.error-message,.form-note{font-size:.8rem;margin-top:4px}.checkout-step3-layout{gap:20px}.checkout-shipping-summary-pane{border-right:1px solid #ddd;box-sizing:border-box;flex:0 0 200px;font-size:.9rem;line-height:1.4;overflow-y:auto;padding-right:20px}.checkout-shipping-summary-pane h4{color:#555;font-size:1.1rem;margin-bottom:10px;margin-top:0}.checkout-shipping-summary-pane p{color:#444;margin:0 0 10px}.checkout-payment-pane{box-sizing:border-box;flex:1 1 auto;min-width:0;overflow-y:auto}.checkout-modal.step-3 .checkout-cart-summary-pane{border-left:1px solid #ddd;box-sizing:border-box;flex:0 0 465px;padding-left:15px}.error-banner{align-items:center;background-color:#ffebee;border:1px solid #ef9a9a;border-radius:4px;color:#c62828;display:flex;font-size:.9rem;margin-bottom:18px;padding:12px 18px;text-align:left}.error-banner:before{content:"⚠️";font-size:1.1rem;margin-right:8px}.card-element-error-banner{background-color:#fff3e0;border-color:#ffcc80;color:#e65100}.payment-accordion{border:1px solid #ddd;border-radius:4px;margin-bottom:15px;overflow:hidden}.accordion-item{border-bottom:1px solid #ddd}.accordion-item:last-child{border-bottom:none}.accordion-header{align-items:center;background-color:#f8f9fa;color:#333;cursor:pointer;display:flex;font-weight:500;padding:12px 15px;transition:background-color .2s}.accordion-header>span:first-child{align-items:center;display:flex;flex-grow:1}.accordion-header:hover{background-color:#e9ecef}.accordion-header svg{fill:currentColor;height:24px;margin-right:8px;vertical-align:middle;width:24px}.accordion-arrow{font-size:.8em;margin-left:auto;transition:transform .3s ease}.accordion-item.open .accordion-arrow{transform:rotate(180deg)}.accordion-content{background-color:#fff;max-height:0;overflow:hidden;padding:0;transition:max-height .35s ease-in-out,padding-top .35s ease-in-out,padding-bottom .35s ease-in-out}.accordion-item.open .accordion-content{max-height:560px;padding:15px}.payment-view-toggle-buttons{border:1px solid #007bff;border-radius:5px;display:flex;gap:0;margin-bottom:18px;overflow:hidden}.payment-view-toggle-btn{background-color:#fff;border:none;color:#007bff;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:500;outline:none;padding:9px 12px;text-align:center;transition:background-color .25s ease-out,color .25s ease-out}.payment-view-toggle-btn:not(:last-child){border-right:1px solid #007bff}.payment-view-toggle-btn:hover:not(:disabled):not(.active){background-color:#e7f3ff;color:#0056b3}.payment-view-toggle-btn.active{background-color:#007bff;color:#fff}.payment-view-toggle-btn:disabled{background-color:#f8f9fa;color:#adb5bd;cursor:not-allowed}.payment-content-wrapper{box-sizing:border-box;margin-bottom:0!important;max-height:0;opacity:0;overflow:hidden;padding-bottom:0!important;padding-top:0!important;transition:opacity .35s ease-in-out,max-height .35s ease-in-out,visibility 0s linear .35s,margin-bottom .35s ease-in-out,padding-top .35s ease-in-out,padding-bottom .35s ease-in-out;visibility:hidden}.payment-content-wrapper.visible{margin-bottom:18px!important;max-height:480px;opacity:1;padding-bottom:1px!important;padding-top:1px!important;transition-delay:0s;visibility:visible}.new-card-section .billing-address-form{border-top:1px dashed #ccc;margin-top:15px;padding-top:15px}.saved-cards-list{border:1px solid #eee;border-radius:4px;margin-bottom:10px;max-height:95px;overflow-y:auto}.saved-card-item{align-items:center;border-bottom:1px solid #eee;cursor:pointer;display:flex;font-size:.9rem;gap:10px;padding:8px 12px}.saved-card-item:last-child{border-bottom:none}.saved-card-item:hover{background-color:#f8f8f8}.saved-card-item.selected{background-color:#e7f3ff;border-left:3px solid #007bff;font-weight:500;padding-left:9px}.card-brand-icon-container{align-items:center;display:flex;height:24px;justify-content:center;width:38px}.card-brand-icon-container svg{display:block;max-height:100%;max-width:100%}.card-brand-text-fallback{color:#555;font-size:.7em;font-weight:700;line-height:24px;text-align:center}.stripe-card-element-placeholder{border:1px solid #ccc;border-radius:4px;margin-bottom:10px;padding:10px}.checkbox-group{gap:8px;margin-bottom:10px}.checkbox-group input[type=checkbox]{margin:0;width:auto}.billing-address-form h5{font-size:.95rem;margin-bottom:10px;margin-top:0}.paypal-button{background-color:#0070ba;border:none;border-radius:4px;color:#fff;cursor:pointer;display:block;font-weight:700;margin-top:10px;padding:10px;text-align:center;transition:background-color .2s;width:100%}.paypal-button:hover{background-color:#005ea6}.payment-unavailable{background-color:#f8f8f8;border-radius:4px;color:#666;font-size:.9rem;padding:10px;text-align:center}.place-order-btn{align-items:center;display:inline-flex;justify-content:center;position:relative}.spinner{animation:rotator 1.4s linear infinite;height:18px;margin-right:8px;width:18px}@keyframes rotator{0%{transform:rotate(0deg)}to{transform:rotate(270deg)}}.path{stroke-dasharray:187;stroke-dashoffset:0;stroke:#fff;animation:dash 1.4s ease-in-out infinite;transform-origin:center}@keyframes dash{0%{stroke-dashoffset:187}50%{stroke-dashoffset:46.75;transform:rotate(135deg)}to{stroke-dashoffset:187;transform:rotate(450deg)}}.success-modal h2{color:#28a745;font-size:1.8rem;margin-bottom:15px}.success-subtext{color:#555;font-size:1rem;line-height:1.5;margin-bottom:25px;text-align:center}.success-actions{justify-content:center;margin-top:10px}.checkout-actions{display:flex;flex-shrink:0;gap:10px;justify-content:flex-end;margin-top:20px}.checkout-btn-primary,.checkout-btn-secondary{border:none;border-radius:5px;cursor:pointer;font-size:.95rem;font-weight:500;padding:9px 18px;transition:background-color .2s ease,box-shadow .2s ease}.checkout-btn-primary{background-color:#007bff;color:#fff}.checkout-btn-primary:hover:not(:disabled){background-color:#0056b3;box-shadow:0 2px 4px #0000001a}.checkout-btn-primary:disabled{background-color:#a0cfff;cursor:not-allowed}.checkout-btn-secondary{background-color:#6c757d;color:#fff}.checkout-btn-secondary:hover:not(:disabled){background-color:#545b62;box-shadow:0 2px 4px #0000001a}.checkout-btn-secondary:disabled{background-color:#adb5bd;cursor:not-allowed}@media (max-width:1200px){.checkout-modal.step-3{max-width:950px;width:95vw!important}.checkout-step3-layout{gap:15px}.checkout-shipping-summary-pane{flex:0 0 220px;padding-right:15px}.checkout-modal.step-3 .checkout-cart-summary-pane{flex:0 0 460px;padding-left:15px}}@media (max-width:900px){.checkout-modal.step-2,.checkout-modal.step-3{max-height:calc(90vh - 120px);max-width:600px;overflow-y:auto;width:95vw!important}.checkout-modal{min-height:auto}.checkout-step2-layout,.checkout-step3-layout{flex-direction:column;max-height:none;min-height:auto;overflow-y:auto}.checkout-cart-summary-pane,.checkout-form-pane,.checkout-payment-pane,.checkout-shipping-summary-pane{border-left:none;border-right:none;flex-basis:auto!important;flex-grow:0;flex-shrink:0;max-height:none;min-width:0;overflow-y:visible;padding-left:0;padding-right:0;width:100%}.checkout-cart-summary-pane{border-top:1px solid #ddd;margin-top:15px;padding-top:15px}.checkout-shipping-summary-pane{border-bottom:1px solid #ddd;margin-bottom:15px;padding-bottom:15px}.checkout-payment-pane{margin-top:0}}@media (max-width:600px){.checkout-modal{max-height:85vh;padding:15px}.checkout-modal h2{font-size:1.4rem;margin-bottom:15px}.checkout-cart-item{column-gap:8px;grid-template-areas:"img title actions" "img price actions";grid-template-columns:40px 1fr auto;padding:8px 0;row-gap:2px}.checkout-item-image{align-self:center;grid-area:img;height:40px;width:40px}.checkout-item-info{grid-area:title}.checkout-item-name{font-size:.85rem}.checkout-item-amount{font-size:.8rem}.checkout-item-unit-price{font-size:.8rem;grid-area:price;text-align:left}.checkout-item-quantity{flex-direction:row;grid-area:actions;justify-self:end;width:auto}.checkout-item-remove{align-self:end;grid-area:actions;justify-self:end;margin-left:0;padding:2px}.checkout-item-line-total{display:none}.form-group-inline{flex-direction:column;gap:10px}.form-subgroup.city,.form-subgroup.state,.form-subgroup.zip{flex-basis:auto}.payment-view-toggle-buttons{border:none;border-radius:0;flex-direction:column;gap:8px}.payment-view-toggle-btn{border:1px solid #ccc;border-radius:4px}.payment-view-toggle-btn:not(:last-child){border-right:none}.payment-view-toggle-btn.active{background-color:#007bff;border-color:#007bff;color:#fff}.payment-view-toggle-btn:disabled{background-color:#f8f9fa;border-color:#dee2e6;color:#adb5bd}.checkout-actions{flex-direction:column;margin-top:15px}.checkout-btn-primary,.checkout-btn-secondary{font-size:.9rem;padding:10px 15px;width:100%}}.checkout-modal>:not(.checkout-cart-items-container):not(.checkout-step2-layout):not(.checkout-step3-layout){flex-shrink:0}.login-modal-overlay{align-items:center;background:#0009;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;z-index:1050}.login-modal,.login-modal-overlay{box-sizing:border-box;display:flex;width:100%}.login-modal{background:#fff;border-radius:8px;box-shadow:0 5px 15px #0000004d;flex-direction:column;max-width:400px;padding:25px 30px;position:relative}.login-modal h2{color:#333;font-size:1.6rem;font-weight:600;margin-bottom:25px;margin-top:0;text-align:center}.login-modal-close-btn{background:none;border:none;color:#888;cursor:pointer;font-size:1.8rem;line-height:1;padding:0;position:absolute;right:15px;top:12px}.login-modal-close-btn:hover{color:#555}.login-modal .form-group{margin-bottom:18px}.login-modal .form-group:last-of-type{margin-bottom:25px}.login-modal .form-group label{color:#444;display:block;font-size:.9rem;font-weight:500;margin-bottom:6px}.login-modal .form-group input[type=email],.login-modal .form-group input[type=password]{border:1px solid #ccc;border-radius:5px;box-sizing:border-box;font-size:1rem;height:42px;padding:8px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.login-modal .form-group input[type=email]:focus,.login-modal .form-group input[type=password]:focus{border-color:#007bff;outline:none}.login-error-message{align-items:center;background-color:#ffebee;border:1px solid #ef9a9a;border-radius:4px;color:#c62828;display:flex;font-size:.9rem;margin-bottom:18px;padding:10px 15px;text-align:left}.login-error-message:before{content:"⚠️";font-size:1.1rem;margin-right:8px}.login-modal .form-link{margin-bottom:20px;margin-top:-10px;text-align:right}.login-modal .link-style-button{background:none;border:none;color:#007bff;cursor:pointer;font-size:.85rem;padding:5px 0;text-decoration:none}.login-modal .link-style-button:hover{color:#0056b3;text-decoration:underline}.login-modal .checkbox-group{align-items:center;display:flex;gap:8px;margin-bottom:25px}.login-modal .checkbox-group input[type=checkbox]{accent-color:#007bff;height:16px;margin:0;width:16px}.login-modal .checkbox-group input[type=checkbox]:focus{outline:2px solid #007bff;outline-offset:2px}.login-modal .checkbox-group label{color:#444;cursor:pointer;font-size:.9rem;font-weight:400;margin-bottom:0;-webkit-user-select:none;user-select:none}.login-actions{display:flex;gap:12px}.login-btn-primary,.login-btn-secondary{border:none;border-radius:5px;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:500;line-height:1.2;padding:11px 15px;text-align:center;transition:background-color .2s ease,box-shadow .2s ease}.login-btn-primary{background-color:#007bff;color:#fff}.login-btn-primary:hover:not(:disabled){background-color:#0056b3;box-shadow:0 2px 4px #0000001a}.login-btn-primary:disabled{background-color:#a0cfff;cursor:not-allowed}.login-btn-secondary{background-color:#6c757d;color:#fff}.login-btn-secondary:hover:not(:disabled){background-color:#545b62;box-shadow:0 2px 4px #0000001a}.login-btn-secondary:disabled{background-color:#adb5bd;cursor:not-allowed}@media (max-width:400px){.login-modal{padding:20px}.login-modal h2{font-size:1.4rem}.login-actions{flex-direction:column}}.forgot-password-modal-overlay{align-items:center;background:#0009;box-sizing:border-box;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:1050}.forgot-password-modal{background:#fff;border-radius:8px;box-shadow:0 5px 15px #0000004d;box-sizing:border-box;display:flex;flex-direction:column;max-width:450px;padding:25px 30px;position:relative;text-align:left;width:100%}.forgot-password-modal h2{color:#333;font-size:1.6rem;font-weight:600;margin-bottom:15px;margin-top:0;text-align:center}.forgot-password-modal-close-btn{background:none;border:none;color:#888;cursor:pointer;font-size:1.8rem;line-height:1;padding:0;position:absolute;right:15px;top:12px}.forgot-password-modal-close-btn:hover{color:#555}.forgot-password-instruction{color:#555;font-size:.9rem;line-height:1.5;margin-bottom:20px;text-align:center}.forgot-password-modal .form-group{margin-bottom:25px}.forgot-password-modal .form-group label{color:#444;display:block;font-size:.9rem;font-weight:500;margin-bottom:6px}.forgot-password-modal .form-group input[type=email]{border:1px solid #ccc;border-radius:5px;box-sizing:border-box;font-size:1rem;height:42px;padding:8px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.forgot-password-modal .form-group input[type=email]:focus{border-color:#007bff;outline:none}.forgot-password-error-message,.forgot-password-success-message{align-items:center;border-radius:4px;display:flex;font-size:.9rem;line-height:1.4;margin-bottom:20px;padding:12px 18px;text-align:left}.forgot-password-error-message{background-color:#ffebee;border:1px solid #ef9a9a;color:#c62828}.forgot-password-error-message:before{content:"⚠️";font-size:1.2rem;margin-right:10px}.forgot-password-success-message{background-color:#e8f5e9;border:1px solid #a5d6a7;color:#2e7d32}.forgot-password-success-message:before{color:#2e7d32;content:"✔";font-size:1.2rem;margin-right:10px}.forgot-password-actions{display:flex;margin-top:5px}.forgot-password-btn-primary{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:500;line-height:1.2;padding:11px 15px;text-align:center;transition:background-color .2s ease,box-shadow .2s ease}.forgot-password-btn-primary:hover:not(:disabled){background-color:#0056b3;box-shadow:0 2px 4px #0000001a}.forgot-password-btn-primary:disabled{background-color:#a0cfff;cursor:not-allowed;opacity:.7}@media (max-width:480px){.forgot-password-modal{padding:20px}.forgot-password-modal h2{font-size:1.4rem}.forgot-password-instruction{font-size:.85rem;margin-bottom:15px}.forgot-password-modal .form-group input[type=email]{font-size:.95rem;height:40px}.forgot-password-btn-primary{font-size:.95rem;padding:10px 12px}}.register-modal-overlay{align-items:center;background:#0009;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;z-index:1050}.register-modal,.register-modal-overlay{box-sizing:border-box;display:flex;width:100%}.register-modal{background:#fff;border-radius:8px;box-shadow:0 5px 15px #0000004d;flex-direction:column;max-width:420px;padding:25px 30px;position:relative}.register-modal h2{color:#333;font-size:1.6rem;font-weight:600;margin-bottom:25px;margin-top:0;text-align:center}.register-modal-close-btn{background:none;border:none;color:#888;cursor:pointer;font-size:1.8rem;line-height:1;padding:0;position:absolute;right:15px;top:12px}.register-modal-close-btn:hover{color:#555}.register-modal .form-group{margin-bottom:18px}.register-modal .form-group:last-of-type{margin-bottom:25px}.register-modal .form-group label{color:#444;display:block;font-size:.9rem;font-weight:500;margin-bottom:6px}.register-modal .form-group input[type=email],.register-modal .form-group input[type=password]{border:1px solid #ccc;border-radius:5px;box-sizing:border-box;font-size:1rem;height:42px;padding:8px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.register-modal .form-group input[type=email]:focus,.register-modal .form-group input[type=password]:focus{border-color:#007bff;outline:none}.register-error-message{align-items:center;background-color:#ffebee;border:1px solid #ef9a9a;border-radius:4px;color:#c62828;display:flex;font-size:.9rem;margin-bottom:18px;padding:10px 15px;text-align:left}.register-error-message:before{content:"⚠️";font-size:1.1rem;margin-right:8px}.register-actions{display:flex;margin-top:25px}.register-btn-primary{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:500;line-height:1.2;padding:11px 15px;text-align:center;transition:background-color .2s ease,box-shadow .2s ease}.register-btn-primary:hover:not(:disabled){background-color:#0056b3;box-shadow:0 2px 4px #0000001a}.register-btn-primary:disabled{background-color:#a0cfff;cursor:not-allowed}@media (max-width:400px){.register-modal{padding:20px}.register-modal h2{font-size:1.4rem}}header{align-items:center;background:#fff;box-shadow:0 2px 4px #0000001a;display:flex;overflow:visible;padding:.5rem 1rem;position:sticky;top:0;z-index:100}header a img{height:40px}.search-container{flex:1 1 auto;margin:0 1rem;min-width:200px;position:relative}.inline-autocomplete .ghost-text,.search-container,.search-container input{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;letter-spacing:normal}.search-container input[type=text]{border:1px solid #ccc;border-radius:.25rem;box-sizing:border-box;line-height:1.5;padding:.5rem 6rem .5rem .75rem;width:100%}.inline-autocomplete{position:relative;width:100%}.inline-autocomplete .ghost-text{color:#fff0;left:1px;padding:.5rem 6rem .5rem .75rem;pointer-events:none;position:absolute;top:2px;white-space:pre;width:calc(100% - 2px)}.inline-autocomplete .suffix{color:#999}.inline-autocomplete input{background:#0000;line-height:1.5;position:relative;z-index:0}.search-container .clear-button,.search-container .search-button{z-index:2}.search-container .clear-button{background:#0000;border:none;font-size:1.2rem;right:5rem}.search-container .clear-button,.search-container .search-button{color:#999;cursor:pointer;position:absolute;top:50%;transform:translateY(-50%)}.search-container .search-button{background:#fff;border:1px solid #999;border-radius:.25rem;padding:.25rem .75rem;right:.5rem}.search-container .search-button:hover{background:#999;color:#fff}.autocomplete-menu{background:#fff;border:1px solid #ddd;border-radius:.25rem;box-shadow:0 2px 8px #0000001a;left:0;list-style:none;margin:.25rem 0 0;max-height:240px;overflow-y:auto;padding:0;position:absolute;top:100%;width:100%;z-index:200}.autocomplete-menu li{cursor:pointer;padding:.5rem}.autocomplete-menu li.highlighted,.autocomplete-menu li:hover{background:#f0f0f0}.header-actions{align-items:center;display:flex;margin-left:auto}.header-actions button,header>button.return-button{background:#007bff;border:none;border-radius:.25rem;color:#fff;cursor:pointer;font-size:.9rem;margin-left:.5rem;padding:.5rem .75rem;transition:background .2s}.header-actions button:hover,header>button.return-button:hover{background:#0069d9}.site-footer{background:#f8f8f8;border-top:1px solid #ddd;bottom:0;font-size:.9em;left:0;padding:.5rem 1rem;position:fixed;text-align:center;width:100%;z-index:100}.site-footer nav a{color:#333;margin:0 1rem;text-decoration:none}.site-footer nav a:hover{text-decoration:underline}g.highlighted path{fill:var(--color-primary)}.leaderboard-block{margin-bottom:2rem}.leaderboard-title{display:inline-block;font-size:1.17em;line-height:1.4;margin-bottom:0;padding-bottom:.2em;position:relative;text-shadow:1px 1px 0 #fff,-1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff;z-index:1}.leaderboard-title:after{background-color:#4caf50;bottom:.325em;content:"";height:3px;left:0;position:absolute;width:100%;z-index:-1}.leaderboard-list-horizontal{display:flex;flex-direction:row;gap:1rem;overflow-x:auto;padding-bottom:1rem;padding-top:5px}.recipe-card-link{color:inherit;text-decoration:none}.recipe-card{background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;flex-shrink:0;padding:1rem;text-align:left;transition:all .3s ease;width:250px}.recipe-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-5px)}.recipe-card h4{color:#333;font-size:1.1rem;margin:0 0 .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-country{color:#666;font-size:.9rem;font-style:italic;margin:0 0 .5rem}.recipe-description{-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;color:#555;display:-webkit-box;font-size:.9rem;margin:0;min-height:54px;overflow:hidden;text-overflow:ellipsis}:root{--color-card-bg:#fff;--card-width:10ch;--color-card-border:var(--color-accent);--color-card-hover-bg:#66bb6a1a;--color-button-border:#d32f2f}.home-container{background:#fff;background:var(--color-bg);color:#212121;color:var(--color-text);font-family:Poppins,sans-serif;font-family:var(--font-base);margin:0 auto;max-width:1200px;padding:.5rem 1rem 1rem}h1{font-size:2.5rem;margin:0 0 .25rem}.continent-buttons{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:1.5rem}.continent-buttons a{text-decoration:none}.continent-buttons button{align-items:center;background-clip:initial;background:#f57c00;border:2px solid #d32f2f;border:2px solid var(--color-button-border);border-radius:9999px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;height:3.5rem;justify-content:center;letter-spacing:.5px;line-height:1.2;overflow:hidden;padding:0 1.5rem;position:relative;text-align:center;text-transform:uppercase;transform-origin:center center;transition:transform .2s ease,box-shadow .2s ease,border .2s ease;white-space:normal;width:100%}.continent-buttons button:hover{transform:scale(1.02)}.continent-buttons button.highlighted,.continent-buttons button:hover{border:4px solid #ff1744;border:4px solid var(--color-button-hover-border);box-shadow:0 4px 12px #0003,0 0 15px #ff174480;color:#fff}.continent-buttons button.highlighted{transform:scale(1.1)}.continent-buttons button:active{border:4px solid #ff1744;border:4px solid var(--color-button-hover-border);box-shadow:0 2px 8px #00000026,0 0 10px #ff174466;color:#fff;transform:scale(.98)}.ingredient-section{border:none!important;margin-top:0;padding-top:0}.ingredient-section h2{font-size:1.75rem;margin:1rem 0 .5rem}.category-block{background:#0000;border:none!important;margin-bottom:1.5rem;padding:0}.category-block h3{-webkit-text-stroke:.5px #fff;color:#212121;color:var(--color-text);display:inline-block;font-size:1.25rem;margin-bottom:.25rem;padding-bottom:.1em;position:relative;text-decoration:underline;text-decoration-color:#66bb6a;text-decoration-color:var(--color-accent);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-thickness:.15em;text-shadow:-.5px -.5px 0 #fff,.5px -.5px 0 #fff,-.5px .5px 0 #fff,.5px .5px 0 #fff;text-underline-offset:.1em}.ingredient-list{grid-gap:1rem 1.5rem;align-items:start;border:none!important;display:grid;gap:1rem 1.5rem;grid-template-columns:repeat(auto-fill,minmax(10ch,1fr));grid-template-columns:repeat(auto-fill,minmax(var(--card-width),1fr));justify-content:start;margin-top:0}.ingredient-card{align-items:center;background:#fff;background:var(--color-card-bg);border:1px solid #66bb6a;border:1px solid var(--color-card-border);border-radius:8px;box-shadow:0 1px 4px #0000000d;cursor:pointer;display:flex;height:3rem;justify-content:flex-start;line-height:1.1;overflow-wrap:normal;padding:0 .5rem;text-align:left;transition:transform .1s,box-shadow .1s,background .2s ease;white-space:normal;width:10ch;width:var(--card-width);word-break:normal}.ingredient-card:hover{background:#66bb6a1a;background:var(--color-card-hover-bg);box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.category-block hr,.home-container hr,.ingredient-list hr,.ingredient-section hr{display:none!important}.leaderboard-section{margin:-4rem 0 1rem;position:relative;z-index:1}.leaderboard-section .leaderboard-block:not(:last-child){margin-bottom:1rem}.world-map-container{display:flex;justify-content:center;margin:1rem 0 1.5rem}.world-map{height:auto;max-width:800px;width:100%}g path{fill:#e0e0e0;stroke:#bbb;stroke-width:1;cursor:pointer;transition:fill .3s ease}g.highlighted path{fill:#f57c00}.address-modal-overlay{align-items:center;background:#000000a6;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;z-index:1055}.address-modal,.address-modal-overlay{box-sizing:border-box;display:flex;width:100%}.address-modal{background:#fff;border-radius:8px;box-shadow:0 8px 25px #00000026;flex-direction:column;max-height:calc(100vh - 40px);max-width:520px;overflow-y:auto;padding:25px 30px;position:relative}.address-modal-close-btn{background:none;border:none;color:#777;cursor:pointer;font-size:1.9rem;line-height:1;padding:0;position:absolute;right:18px;top:15px;z-index:10}.address-modal-close-btn:hover{color:#333}.address-modal-title{color:#333;flex-shrink:0;font-size:1.5rem;font-weight:600;margin-bottom:25px;margin-top:0;text-align:center}.address-modal-content-wrapper{display:flex;flex-direction:column;gap:20px}.address-form{display:flex;flex-direction:column;gap:15px}.address-modal-content-wrapper .form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:0}.address-modal-content-wrapper .form-group label{color:#333;font-size:.9rem;font-weight:500;margin-bottom:0}.address-modal-content-wrapper input[type=tel],.address-modal-content-wrapper input[type=text],.address-modal-content-wrapper select{background-color:#fff;border:1px solid #d1d1d1;border-radius:6px;box-sizing:border-box;font-size:.95rem;height:44px;padding:10px 14px;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.address-modal-content-wrapper input[type=tel]:focus,.address-modal-content-wrapper input[type=text]:focus,.address-modal-content-wrapper select:focus{border-color:#007bff;box-shadow:0 0 0 .15rem #007bff33;outline:none}.address-modal-content-wrapper input.error,.address-modal-content-wrapper input[aria-invalid=true],.address-modal-content-wrapper select.error,.address-modal-content-wrapper select[aria-invalid=true]{border-color:#e74c3c!important;box-shadow:0 0 0 .15rem #e74c3c33}.address-modal-content-wrapper input:disabled,.address-modal-content-wrapper select:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}.address-modal-content-wrapper .form-group-inline{align-items:flex-start;display:flex;gap:18px}.address-modal-content-wrapper .form-subgroup{flex:1 1}.address-modal-content-wrapper .form-subgroup.state{flex-basis:58%}.address-modal-content-wrapper .form-subgroup.zip{flex-basis:38%}.address-modal-content-wrapper .use-billing-address-section{margin-bottom:5px;margin-top:-5px}.address-modal-content-wrapper .use-billing-address-prompt,.address-modal-content-wrapper .use-shipping-address-prompt{color:#555;font-size:.9rem;margin-bottom:15px;margin-left:10px;margin-top:0}.address-modal-content-wrapper .btn-link-style.use-billing-address-btn{background:none;border:1px solid #007bff;border-radius:6px;color:#007bff;cursor:pointer;display:inline-block;font-size:.9rem;font-weight:500;padding:9px 15px;text-align:center;transition:background-color .2s,color .2s}.address-modal-content-wrapper .btn-link-style.use-billing-address-btn:hover{background-color:#e7f3ff;color:#0056b3}.address-modal-content-wrapper .address-chooser-active{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;padding:10px}.address-modal-content-wrapper .billing-options-list{background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;margin-top:8px;max-height:170px;overflow-y:auto}.address-modal-content-wrapper .billing-option-item{border-bottom:1px solid #f0f0f0;cursor:pointer;font-size:.9rem;line-height:1.5;padding:12px 15px;transition:background-color .15s ease-in-out,color .15s ease-in-out}.address-modal-content-wrapper .billing-option-item:last-child{border-bottom:none}.address-modal-content-wrapper .billing-option-item:focus,.address-modal-content-wrapper .billing-option-item:hover{background-color:#f0f8ff;color:#0056b3;outline:none}.address-modal-content-wrapper .billing-option-item strong{color:#2c3e50;font-weight:500}.address-modal-content-wrapper .billing-option-item:focus strong,.address-modal-content-wrapper .billing-option-item:hover strong{color:#0056b3}.address-modal-content-wrapper .btn-link-style.cancel-address-choice{background:none;border:none;color:#6c757d;cursor:pointer;display:block;font-size:.85rem;font-weight:500;margin-top:10px;padding:8px 0;text-align:right}.address-modal-content-wrapper .btn-link-style.cancel-address-choice:hover{color:#545b62}.address-modal-content-wrapper .checkbox-group{align-items:center;display:flex;gap:10px;margin:10px 0}.address-modal-content-wrapper .checkbox-group input[type=checkbox]{accent-color:#007bff;cursor:pointer;flex-shrink:0;height:18px;margin:0;width:18px}.address-modal-content-wrapper .checkbox-group input[type=checkbox]:focus-visible{box-shadow:0 0 0 3px #007bff40;outline:2px solid #007bff;outline-offset:3px}.address-modal-content-wrapper .checkbox-group label{color:#333;cursor:pointer;font-size:.9rem;font-weight:400;line-height:1.3;margin-bottom:0;-webkit-user-select:none;user-select:none}.address-modal-content-wrapper .checkbox-group input[type=checkbox]:disabled+label{color:#a0a0a0;cursor:not-allowed}.address-modal-content-wrapper .form-error-message{align-items:center;background-color:#fff0f0;border:1px solid #e74c3c;border-left:4px solid #c0392b;border-radius:4px;color:#c0392b;display:flex;font-size:.9rem;line-height:1.4;padding:12px 18px}.address-modal-content-wrapper .form-error-message:before{content:"⚠️";font-size:1.2rem;margin-right:10px}.address-modal-content-wrapper .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:5px;padding-top:20px}.address-modal-content-wrapper .modal-actions .btn-primary,.address-modal-content-wrapper .modal-actions .btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;line-height:1.3;min-width:110px;padding:12px 22px;text-align:center;transition:background-color .2s ease,box-shadow .2s ease,opacity .2s ease,transform .1s ease}.address-modal-content-wrapper .modal-actions .btn-primary:active:not(:disabled),.address-modal-content-wrapper .modal-actions .btn-secondary:active:not(:disabled){transform:translateY(1px)}.address-modal-content-wrapper .modal-actions .btn-primary{background-color:#007bff;color:#fff}.address-modal-content-wrapper .modal-actions .btn-primary:hover:not(:disabled){background-color:#0069d9;box-shadow:0 4px 8px #0069d933}.address-modal-content-wrapper .modal-actions .btn-primary:disabled{background-color:#007bff;cursor:not-allowed;opacity:.55}.address-modal-content-wrapper .modal-actions .btn-secondary{background-color:#6c757d;color:#fff}.address-modal-content-wrapper .modal-actions .btn-secondary:hover:not(:disabled){background-color:#5a6268;box-shadow:0 4px 8px #0000001a}.address-modal-content-wrapper .modal-actions .btn-secondary:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.55}@media (max-width:520px){.address-modal{max-height:calc(100vh - 20px);padding:20px}.address-modal-title{font-size:1.3rem;margin-bottom:20px}.address-modal-content-wrapper{gap:16px}.address-modal-content-wrapper .form-group-inline{flex-direction:column;gap:0}.address-modal-content-wrapper .form-subgroup{flex-basis:auto;width:100%}.address-modal-content-wrapper .form-subgroup.state{margin-bottom:16px}.address-modal-content-wrapper .modal-actions{flex-direction:column-reverse;gap:12px}.address-modal-content-wrapper .modal-actions .btn-primary,.address-modal-content-wrapper .modal-actions .btn-secondary{width:100%}}.phone-modal-overlay{align-items:center;background:#000000a6;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;z-index:1060}.phone-modal,.phone-modal-overlay{box-sizing:border-box;display:flex;width:100%}.phone-modal{background:#fff;border-radius:8px;box-shadow:0 8px 25px #00000026;flex-direction:column;max-height:calc(100vh - 40px);max-width:480px;overflow-y:auto;padding:25px 30px;position:relative}.phone-modal-close-btn{background:none;border:none;color:#777;cursor:pointer;font-size:1.9rem;line-height:1;padding:0;position:absolute;right:18px;top:15px;z-index:10}.phone-modal-close-btn:hover{color:#333}.phone-modal-title{color:#333;flex-shrink:0;font-size:1.5rem;font-weight:600;margin-bottom:25px;margin-top:0;text-align:center}.phone-form,.phone-modal-content-wrapper{display:flex;flex-direction:column}.phone-form{gap:20px}.phone-modal-content-wrapper .form-group{display:flex;flex-direction:column;gap:8px}.phone-modal-content-wrapper .form-group label{color:#333;font-size:.9rem;font-weight:500;margin-bottom:0}.phone-modal-content-wrapper input[type=tel]{background-color:#fff;border:1px solid #d1d1d1;border-radius:6px;box-sizing:border-box;font-size:.95rem;height:44px;padding:10px 14px;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.phone-modal-content-wrapper input[type=tel]:focus{border-color:#007bff;box-shadow:0 0 0 .15rem #007bff33;outline:none}.phone-modal-content-wrapper input[type=tel].error,.phone-modal-content-wrapper input[type=tel][aria-invalid=true]{border-color:#e74c3c!important;box-shadow:0 0 0 .15rem #e74c3c33}.phone-modal-content-wrapper input[type=tel]:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}.phone-modal-content-wrapper .form-error-message{align-items:center;background-color:#fff0f0;border:1px solid #e74c3c;border-left:4px solid #c0392b;border-radius:4px;color:#c0392b;display:flex;font-size:.9rem;line-height:1.4;padding:12px 18px}.phone-modal-content-wrapper .form-error-message:before{content:"⚠️";font-size:1.2rem;margin-right:10px}.phone-modal-content-wrapper .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:0;padding-top:10px}.phone-modal-content-wrapper .modal-actions .btn-primary,.phone-modal-content-wrapper .modal-actions .btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;line-height:1.3;min-width:110px;padding:12px 22px;text-align:center;transition:background-color .2s ease,box-shadow .2s ease,opacity .2s ease,transform .1s ease}.phone-modal-content-wrapper .modal-actions .btn-primary:active:not(:disabled),.phone-modal-content-wrapper .modal-actions .btn-secondary:active:not(:disabled){transform:translateY(1px)}.phone-modal-content-wrapper .modal-actions .btn-primary{background-color:#007bff;color:#fff}.phone-modal-content-wrapper .modal-actions .btn-primary:hover:not(:disabled){background-color:#0069d9;box-shadow:0 4px 8px #0069d933}.phone-modal-content-wrapper .modal-actions .btn-primary:disabled{background-color:#007bff;cursor:not-allowed;opacity:.55}.phone-modal-content-wrapper .modal-actions .btn-secondary{background-color:#6c757d;color:#fff}.phone-modal-content-wrapper .modal-actions .btn-secondary:hover:not(:disabled){background-color:#5a6268;box-shadow:0 4px 8px #0000001a}.phone-modal-content-wrapper .modal-actions .btn-secondary:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.55}@media (max-width:520px){.phone-modal{max-height:calc(100vh - 20px);max-width:calc(100% - 40px);padding:20px}.phone-modal-title{font-size:1.3rem;margin-bottom:20px}.phone-form{gap:16px}.phone-modal-content-wrapper .modal-actions{border-top:1px solid #e9ecef;flex-direction:column-reverse;gap:12px;padding-top:16px}.phone-modal-content-wrapper .modal-actions .btn-primary,.phone-modal-content-wrapper .modal-actions .btn-secondary{width:100%}}.email-modal-overlay{align-items:center;background:#000000a6;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;z-index:1065}.email-modal,.email-modal-overlay{box-sizing:border-box;display:flex;width:100%}.email-modal{background:#fff;border-radius:8px;box-shadow:0 8px 25px #00000026;flex-direction:column;max-height:calc(100vh - 40px);max-width:480px;overflow-y:auto;padding:25px 30px;position:relative}.email-modal-close-btn{background:none;border:none;color:#777;cursor:pointer;font-size:1.9rem;line-height:1;padding:0;position:absolute;right:18px;top:15px;z-index:10}.email-modal-close-btn:hover{color:#333}.email-modal-title{color:#333;flex-shrink:0;font-size:1.5rem;font-weight:600;margin-bottom:25px;margin-top:0;text-align:center}.email-form,.email-modal-content-wrapper{display:flex;flex-direction:column}.email-form{gap:20px}.email-modal-content-wrapper .form-group{display:flex;flex-direction:column;gap:8px}.email-modal-content-wrapper .form-group label{color:#333;font-size:.9rem;font-weight:500;margin-bottom:0}.email-modal-content-wrapper input[type=email],.email-modal-content-wrapper input[type=password]{background-color:#fff;border:1px solid #d1d1d1;border-radius:6px;box-sizing:border-box;font-size:.95rem;height:44px;padding:10px 14px;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.email-modal-content-wrapper input[type=email]:focus,.email-modal-content-wrapper input[type=password]:focus{border-color:#007bff;box-shadow:0 0 0 .15rem #007bff33;outline:none}.email-modal-content-wrapper input[type=email].error,.email-modal-content-wrapper input[type=email][aria-invalid=true],.email-modal-content-wrapper input[type=password].error,.email-modal-content-wrapper input[type=password][aria-invalid=true]{border-color:#e74c3c!important;box-shadow:0 0 0 .15rem #e74c3c33}.email-modal-content-wrapper input[type=email]:disabled,.email-modal-content-wrapper input[type=password]:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}.email-modal-content-wrapper .form-error-message{align-items:center;background-color:#fff0f0;border:1px solid #e74c3c;border-left:4px solid #c0392b;border-radius:4px;color:#c0392b;display:flex;font-size:.9rem;line-height:1.4;padding:12px 18px}.email-modal-content-wrapper .form-error-message:before{content:"⚠️";font-size:1.2rem;margin-right:10px}.email-modal-content-wrapper .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:0;padding-top:10px}.email-modal-content-wrapper .modal-actions .btn-primary,.email-modal-content-wrapper .modal-actions .btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;line-height:1.3;min-width:110px;padding:12px 22px;text-align:center;transition:background-color .2s ease,box-shadow .2s ease,opacity .2s ease,transform .1s ease}.email-modal-content-wrapper .modal-actions .btn-primary:active:not(:disabled),.email-modal-content-wrapper .modal-actions .btn-secondary:active:not(:disabled){transform:translateY(1px)}.email-modal-content-wrapper .modal-actions .btn-primary{background-color:#007bff;color:#fff}.email-modal-content-wrapper .modal-actions .btn-primary:hover:not(:disabled){background-color:#0069d9;box-shadow:0 4px 8px #0069d933}.email-modal-content-wrapper .modal-actions .btn-primary:disabled{background-color:#007bff;cursor:not-allowed;opacity:.55}.email-modal-content-wrapper .modal-actions .btn-secondary{background-color:#6c757d;color:#fff}.email-modal-content-wrapper .modal-actions .btn-secondary:hover:not(:disabled){background-color:#5a6268;box-shadow:0 4px 8px #0000001a}.email-modal-content-wrapper .modal-actions .btn-secondary:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.55}@media (max-width:520px){.email-modal{max-height:calc(100vh - 20px);max-width:calc(100% - 40px);padding:20px}.email-modal-title{font-size:1.3rem;margin-bottom:20px}.email-form{gap:16px}.email-modal-content-wrapper .modal-actions{flex-direction:column-reverse;gap:12px;padding-top:16px}.email-modal-content-wrapper .modal-actions .btn-primary,.email-modal-content-wrapper .modal-actions .btn-secondary{width:100%}}.password-modal-overlay{align-items:center;background:#000000a6;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;z-index:1070}.password-modal,.password-modal-overlay{box-sizing:border-box;display:flex;width:100%}.password-modal{background:#fff;border-radius:8px;box-shadow:0 8px 25px #00000026;flex-direction:column;max-height:calc(100vh - 40px);max-width:480px;overflow-y:auto;padding:25px 30px;position:relative}.password-modal-close-btn{background:none;border:none;color:#777;cursor:pointer;font-size:1.9rem;line-height:1;padding:0;position:absolute;right:18px;top:15px;z-index:10}.password-modal-close-btn:hover{color:#333}.password-modal-title{color:#333;flex-shrink:0;font-size:1.5rem;font-weight:600;margin-bottom:25px;margin-top:0;text-align:center}.password-form,.password-modal-content-wrapper{display:flex;flex-direction:column}.password-form{gap:20px}.password-modal-content-wrapper .form-group{display:flex;flex-direction:column;gap:8px}.password-modal-content-wrapper .form-group label{color:#333;font-size:.9rem;font-weight:500;margin-bottom:0}.password-modal-content-wrapper input[type=password]{background-color:#fff;border:1px solid #d1d1d1;border-radius:6px;box-sizing:border-box;font-size:.95rem;height:44px;padding:10px 14px;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.password-modal-content-wrapper input[type=password]:focus{border-color:#007bff;box-shadow:0 0 0 .15rem #007bff33;outline:none}.password-modal-content-wrapper input[type=password].error,.password-modal-content-wrapper input[type=password][aria-invalid=true]{border-color:#e74c3c!important;box-shadow:0 0 0 .15rem #e74c3c33}.password-modal-content-wrapper input[type=password]:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}.password-modal-content-wrapper .form-error-message{align-items:center;background-color:#fff0f0;border:1px solid #e74c3c;border-left:4px solid #c0392b;border-radius:4px;color:#c0392b;display:flex;font-size:.9rem;line-height:1.4;padding:12px 18px}.password-modal-content-wrapper .form-error-message:before{content:"⚠️";font-size:1.2rem;margin-right:10px}.password-modal-content-wrapper .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:0;padding-top:10px}.password-modal-content-wrapper .modal-actions .btn-primary,.password-modal-content-wrapper .modal-actions .btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;line-height:1.3;min-width:110px;padding:12px 22px;text-align:center;transition:background-color .2s ease,box-shadow .2s ease,opacity .2s ease,transform .1s ease}.password-modal-content-wrapper .modal-actions .btn-primary:active:not(:disabled),.password-modal-content-wrapper .modal-actions .btn-secondary:active:not(:disabled){transform:translateY(1px)}.password-modal-content-wrapper .modal-actions .btn-primary{background-color:#007bff;color:#fff}.password-modal-content-wrapper .modal-actions .btn-primary:hover:not(:disabled){background-color:#0069d9;box-shadow:0 4px 8px #0069d933}.password-modal-content-wrapper .modal-actions .btn-primary:disabled{background-color:#007bff;cursor:not-allowed;opacity:.55}.password-modal-content-wrapper .modal-actions .btn-secondary{background-color:#6c757d;color:#fff}.password-modal-content-wrapper .modal-actions .btn-secondary:hover:not(:disabled){background-color:#5a6268;box-shadow:0 4px 8px #0000001a}.password-modal-content-wrapper .modal-actions .btn-secondary:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.55}@media (max-width:520px){.password-modal{max-height:calc(100vh - 20px);max-width:calc(100% - 40px);padding:20px}.password-modal-title{font-size:1.3rem;margin-bottom:20px}.password-form{gap:16px}.password-modal-content-wrapper .modal-actions{flex-direction:column-reverse;gap:12px;padding-top:16px}.password-modal-content-wrapper .modal-actions .btn-primary,.password-modal-content-wrapper .modal-actions .btn-secondary{width:100%}}.stripe-card-modal-overlay{align-items:center;background:#000000a6;box-sizing:border-box;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:1050}.stripe-card-modal{background:#fff;border-radius:8px;box-shadow:0 8px 25px #00000026;box-sizing:border-box;display:flex;flex-direction:column;max-height:calc(100vh - 40px);max-width:520px;overflow-y:auto;padding:25px 30px;position:relative;width:100%}.stripe-card-modal-close-btn{background:none;border:none;color:#777;cursor:pointer;font-size:1.9rem;line-height:1;padding:0;position:absolute;right:18px;top:15px;z-index:10}.stripe-card-modal-close-btn:hover{color:#333}.stripe-card-modal-title{color:#333;flex-shrink:0;font-size:1.5rem;font-weight:600;margin-bottom:25px;margin-top:0;text-align:center}.stripe-card-modal-content-wrapper{display:flex;flex-direction:column;gap:20px}.stripe-card-modal-content-wrapper .form-group{display:flex;flex-direction:column;gap:8px}.stripe-card-modal-content-wrapper .form-group label{color:#333;font-size:.9rem;font-weight:500;margin-bottom:0}.stripe-card-modal-content-wrapper input[type=tel],.stripe-card-modal-content-wrapper input[type=text],.stripe-card-modal-content-wrapper select{background-color:#fff;border:1px solid #d1d1d1;border-radius:6px;box-sizing:border-box;font-size:.95rem;height:44px;padding:10px 14px;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.stripe-card-modal-content-wrapper input[type=tel]:focus,.stripe-card-modal-content-wrapper input[type=text]:focus,.stripe-card-modal-content-wrapper select:focus{border-color:#007bff;box-shadow:0 0 0 .15rem #007bff33;outline:none}.stripe-card-modal-content-wrapper input.error,.stripe-card-modal-content-wrapper select.error{border-color:#e74c3c!important;box-shadow:0 0 0 .15rem #e74c3c33}.stripe-card-element-frame{align-items:center;background-color:#fff;border:1px solid #d1d1d1;border-radius:6px;display:flex;height:44px;padding:0}.stripe-card-element-frame.focused,.stripe-card-element-frame:has(.StripeElement--focus){border-color:#007bff;box-shadow:0 0 0 .15rem #007bff33}#stripe-card-element-id{padding:10px 12px;width:100%}.exp-input{width:120px}.exp-input.error{border-color:#e74c3c!important;box-shadow:0 0 0 .15rem #e74c3c33!important}.use-shipping-address-section{margin-bottom:5px;margin-top:-5px}.use-shipping-address-prompt{color:#555;font-size:.9rem;margin-bottom:15px;margin-left:10px;margin-top:0}.btn-link-style.use-shipping-address-btn{background:none;border:1px solid #007bff;border-radius:6px;color:#007bff;cursor:pointer;display:inline-block;font-size:.9rem;font-weight:500;padding:9px 15px;text-align:center;transition:background-color .2s,color .2s}.btn-link-style.use-shipping-address-btn:hover{background-color:#e7f3ff;color:#0056b3}.address-chooser-active{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;padding:10px}.shipping-address-list{background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;margin-top:8px;max-height:170px;overflow-y:auto}.shipping-address-item{border-bottom:1px solid #f0f0f0;cursor:pointer;font-size:.9rem;line-height:1.5;padding:12px 15px;transition:background-color .15s ease-in-out,color .15s ease-in-out}.shipping-address-item:last-child{border-bottom:none}.shipping-address-item:focus,.shipping-address-item:hover{background-color:#f0f8ff;color:#0056b3;outline:none}.shipping-address-item strong{color:#2c3e50;font-weight:500}.shipping-address-item:focus strong,.shipping-address-item:hover strong{color:#0056b3}.btn-link-style.cancel-address-choice{background:none;border:none;color:#6c757d;cursor:pointer;display:block;font-size:.85rem;font-weight:500;margin-left:10px;margin-top:10px;padding:8px 0;text-align:right}.btn-link-style.cancel-address-choice:hover{color:#545b62}.billing-address-fieldset{border:1px solid #e0e0e0;border-radius:6px;display:flex;flex-direction:column;gap:18px;margin:10px 0 5px;padding:20px}.billing-address-fieldset legend{color:#333;font-size:1.05rem;font-weight:600;margin-left:-5px;padding:0 10px}.billing-address-fieldset .form-group-inline{align-items:flex-start;display:flex;gap:18px}.billing-address-fieldset .form-subgroup{display:flex;flex:1 1;flex-direction:column;gap:8px}.billing-address-fieldset .form-subgroup.state{flex-basis:58%}.billing-address-fieldset .form-subgroup.zip{flex-basis:38%}.checkbox-group{align-items:center;gap:10px;margin:10px 0}.checkbox-group input[type=checkbox]{accent-color:#007bff;cursor:pointer;flex-shrink:0;height:18px;width:18px}.checkbox-group input[type=checkbox]:focus-visible{box-shadow:0 0 0 3px #007bff40;outline:2px solid #007bff;outline-offset:3px}.checkbox-group label{color:#333;cursor:pointer;font-size:.9rem;font-weight:400;line-height:1.3;margin-bottom:0;-webkit-user-select:none;user-select:none}.form-error-message{align-items:center;background-color:#fff0f0;border:1px solid #e74c3c;border-left:4px solid #c0392b;border-radius:4px;color:#c0392b;display:flex;font-size:.9rem;line-height:1.4;margin-bottom:10px;padding:12px 18px}.form-error-message:before{content:"⚠️";font-size:1.2rem;margin-right:10px}.input-error-feedback{color:#e74c3c;font-size:.85rem;margin-top:6px}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.modal-actions .btn-primary,.modal-actions .btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;line-height:1.3;min-width:110px;padding:12px 22px;text-align:center;transition:background-color .2s ease,box-shadow .2s ease,opacity .2s ease,transform .1s ease}.modal-actions .btn-primary:active:not(:disabled),.modal-actions .btn-secondary:active:not(:disabled){transform:translateY(1px)}.modal-actions .btn-primary{background-color:#007bff;color:#fff}.modal-actions .btn-primary:hover:not(:disabled){background-color:#0069d9;box-shadow:0 4px 8px #0069d933}.modal-actions .btn-primary:disabled{background-color:#007bff;cursor:not-allowed;opacity:.55}.modal-actions .btn-secondary{background-color:#6c757d;color:#fff}.modal-actions .btn-secondary:hover:not(:disabled){background-color:#5a6268;box-shadow:0 4px 8px #0000001a}.modal-actions .btn-secondary:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.55}@media (max-width:520px){.stripe-card-modal{max-height:calc(100vh - 20px);padding:20px}.stripe-card-modal-title{font-size:1.3rem;margin-bottom:20px}.stripe-card-modal-content-wrapper{gap:16px}.billing-address-fieldset{gap:16px;padding:15px}.billing-address-fieldset .form-group-inline{flex-direction:column;gap:0}.billing-address-fieldset .form-subgroup{flex-basis:auto;width:100%}.billing-address-fieldset .form-subgroup.state{margin-bottom:16px}.modal-actions{flex-direction:column-reverse;gap:12px}.modal-actions .btn-primary,.modal-actions .btn-secondary{width:100%}}.delete-account-modal-overlay{align-items:center;background:#000000a6;box-sizing:border-box;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:1075}.delete-account-modal{background:#fff;border-radius:8px;box-shadow:0 8px 25px #00000026;box-sizing:border-box;display:flex;flex-direction:column;max-height:calc(100vh - 40px);max-width:500px;overflow-y:auto;padding:25px 30px;position:relative;width:100%}.delete-account-modal-close-btn{background:none;border:none;color:#777;cursor:pointer;font-size:1.9rem;line-height:1;padding:0;position:absolute;right:18px;top:15px;z-index:10}.delete-account-modal-close-btn:hover{color:#333}.delete-account-modal-title{color:#c0392b;flex-shrink:0;font-size:1.5rem;font-weight:600;margin-bottom:20px;margin-top:0;text-align:center}.delete-account-form,.delete-account-modal-content-wrapper{display:flex;flex-direction:column}.delete-account-form{gap:20px}.delete-warning-message{background-color:#fdf2f2;border:1px solid #f8d7da;border-left:4px solid #c0392b;border-radius:4px;color:#721c24;font-size:.9rem;line-height:1.5;margin-bottom:5px;padding:15px;text-align:left}.delete-account-modal-content-wrapper .form-group{display:flex;flex-direction:column;gap:8px}.delete-account-modal-content-wrapper .form-group label{color:#333;font-size:.9rem;font-weight:500;margin-bottom:0}.delete-account-modal-content-wrapper input[type=password]{background-color:#fff;border:1px solid #d1d1d1;border-radius:6px;box-sizing:border-box;font-size:.95rem;height:44px;padding:10px 14px;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.delete-account-modal-content-wrapper input[type=password]:focus{border-color:#007bff;box-shadow:0 0 0 .15rem #007bff33;outline:none}.delete-account-modal-content-wrapper input[type=password].error,.delete-account-modal-content-wrapper input[type=password][aria-invalid=true]{border-color:#e74c3c!important;box-shadow:0 0 0 .15rem #e74c3c33}.delete-account-modal-content-wrapper input[type=password]:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}.delete-account-modal-content-wrapper .form-error-message{align-items:center;background-color:#fff0f0;border:1px solid #e74c3c;border-left:4px solid #c0392b;border-radius:4px;color:#c0392b;display:flex;font-size:.9rem;line-height:1.4;padding:12px 18px}.delete-account-modal-content-wrapper .form-error-message:before{content:"⚠️";font-size:1.2rem;margin-right:10px}.delete-account-modal-content-wrapper .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:5px;padding-top:10px}.delete-account-modal-content-wrapper .modal-actions .btn-secondary{background-color:#fff;border:1px solid #6c757d;border-radius:6px;color:#6c757d;cursor:pointer;font-size:.95rem;font-weight:500;line-height:1.3;min-width:110px;padding:12px 22px;text-align:center;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .1s ease}.delete-account-modal-content-wrapper .modal-actions .btn-secondary:hover:not(:disabled){background-color:#f8f9fa;border-color:#545b62;color:#545b62}.delete-account-modal-content-wrapper .modal-actions .btn-secondary:disabled{background-color:#fff;border-color:#d1d1d1;color:#a0a0a0;cursor:not-allowed;opacity:.65}.delete-account-modal-content-wrapper .modal-actions .btn-primary.btn-danger{background-color:#c0392b;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;line-height:1.3;min-width:110px;padding:12px 22px;text-align:center;transition:background-color .2s ease,box-shadow .2s ease,transform .1s ease}.delete-account-modal-content-wrapper .modal-actions .btn-primary.btn-danger:hover:not(:disabled){background-color:#a93226;box-shadow:0 4px 8px #c0392b4d}.delete-account-modal-content-wrapper .modal-actions .btn-primary.btn-danger:active:not(:disabled){transform:translateY(1px)}.delete-account-modal-content-wrapper .modal-actions .btn-primary.btn-danger:disabled{background-color:#c0392b;cursor:not-allowed;opacity:.55}@media (max-width:520px){.delete-account-modal{max-height:calc(100vh - 20px);max-width:calc(100% - 40px);padding:20px}.delete-account-modal-title{font-size:1.3rem;margin-bottom:15px}.delete-account-form{gap:16px}.delete-warning-message{font-size:.85rem;padding:10px 12px}.delete-account-modal-content-wrapper .modal-actions{flex-direction:column-reverse;gap:12px;padding-top:16px}.delete-account-modal-content-wrapper .modal-actions .btn-primary.btn-danger,.delete-account-modal-content-wrapper .modal-actions .btn-secondary{width:100%}}.order-history-modal-content{background-color:#fff;border-radius:8px;box-shadow:0 5px 20px #00000040;color:#333;color:var(--text-color-dark,#333);font-family:Roboto,sans-serif;font-family:var(--font-family-main,"Roboto",sans-serif);max-height:85vh;max-width:650px;overflow-y:auto;padding:1.5rem 2rem;width:90vw}.order-history-modal-content h2{color:#a72608;color:var(--primary-color,#a72608);font-size:1.75rem;margin-bottom:1.5rem;margin-top:0;text-align:center}.order-history-modal-content h2,.order-history-modal-content h3{font-family:Montserrat,sans-serif;font-family:var(--font-family-headings,"Montserrat",sans-serif)}.order-history-modal-content h3{border-bottom:2px solid #dedede;border-bottom:2px solid var(--background-dark,#dedede);color:#4a5759;color:var(--secondary-color,#4a5759);font-size:1.25rem;margin-bottom:1rem;margin-top:2rem;padding-bottom:.5rem}.order-summary,.shipping-details{background-color:#f7f7f7;background-color:var(--background-light,#f7f7f7);border:1px solid #dedede;border:1px solid var(--background-dark,#dedede);border-radius:5px;line-height:1.6;margin-bottom:1rem;padding:1rem}.order-summary p,.shipping-details p{margin:.25rem 0}.order-summary .status{background-color:#4a5759;background-color:var(--secondary-color,#4a5759);border-radius:12px;color:#fff;color:var(--text-color-light,#fff);font-weight:700;padding:3px 8px}.order-summary .status.completed,.order-summary .status.delivered{background-color:#28a745}.order-summary .status.shipped{background-color:#17a2b8}.order-summary .status.cancelled,.order-summary .status.failed{background-color:#dc3545}.order-summary .status.refunded{background-color:#ffc107;color:#333;color:var(--text-color-dark,#333)}.order-items-list{display:flex;flex-direction:column;gap:1rem}.order-item-detail{align-items:center;border:1px solid #dedede;border:1px solid var(--background-dark,#dedede);border-radius:5px;display:flex;gap:15px;padding:10px}.order-item-detail.unavailable{background-color:#fafafa;opacity:.7}.order-item-detail .item-image{border-radius:5px;flex-shrink:0;height:60px;object-fit:cover;width:60px}.order-item-detail .item-info{flex-grow:1}.order-item-detail .item-info p{line-height:1.4;margin:0}.order-item-detail .item-name{color:#333;color:var(--text-color-dark,#333);font-weight:700}.close-modal-btn{background-color:#a72608;background-color:var(--primary-color,#a72608);border:none;border-radius:5px;color:#fff;color:var(--text-color-light,#fff);cursor:pointer;display:block;font-family:Montserrat,sans-serif;font-family:var(--font-family-headings,"Montserrat",sans-serif);font-size:1rem;font-weight:700;margin:2rem auto 0;max-width:200px;padding:12px 20px;transition:background-color .2s ease-in-out,transform .1s ease;width:100%}.close-modal-btn:hover{background-color:#8e2006}.close-modal-btn:active{transform:scale(.98)}.profile-page-container{background-color:#f9f9f9;border-radius:8px;box-shadow:0 4px 12px #00000014;margin:2rem auto;max-width:800px;padding:2rem}.profile-page-container h1{color:#333;font-weight:600;margin-bottom:2.5rem;text-align:center}.profile-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000f;margin-bottom:2rem;padding:1.5rem 2rem}.profile-section h2{border-bottom:1px solid #eee;color:#333;font-size:1.4rem;font-weight:500;margin-bottom:1.5rem;margin-top:0;padding-bottom:.75rem}.profile-loading{color:#555;font-size:1.2rem;padding:3rem;text-align:center}.profile-info-grid{display:flex;flex-direction:column;gap:1rem}.profile-info-item{background-color:#fcfcfc;border:1px solid #e7e7e7;border-radius:6px;padding:1rem}.profile-info-item .info-label{color:#666;font-size:.85rem;font-weight:500;margin-bottom:.25rem;text-transform:uppercase}.profile-info-item .info-value{color:#333;font-size:1rem;margin-bottom:.75rem;word-break:break-all}.profile-item{align-items:flex-start;background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;display:flex;flex-direction:column;justify-content:space-between;margin-bottom:1rem;padding:1rem 1.25rem;transition:box-shadow .2s ease-in-out}.profile-item:hover{box-shadow:0 2px 5px #00000014}.profile-item-content{flex-grow:1;margin-bottom:.75rem;width:100%}.profile-item .item-title{color:#333;font-size:1.1rem;margin-bottom:.5rem}.profile-item .item-title strong{font-weight:600}.profile-item .item-subtitle{color:#555;font-size:.9em}.profile-item p{align-items:center;color:#444;display:flex;font-size:.95rem;line-height:1.5;margin:.25rem 0}.profile-item p .card-dots{font-family:monospace;letter-spacing:.1em;margin-left:4px}.profile-item .item-tag{background-color:#e7f3ff;border-radius:4px;color:#0056b3;display:inline-block;font-size:.75rem;font-weight:500;margin-left:.75rem;padding:.2em .6em;vertical-align:middle}.profile-item .primary-tag{background-color:#d4edda;color:#155724}.profile-item-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;margin-top:.75rem;width:100%}.profile-item-actions button.action-btn{align-items:center;background-color:initial;border:1px solid #ddd;border-radius:5px;color:#555;cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:500;gap:.4rem;padding:.3rem .75rem;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.profile-item-actions button.action-btn:hover{background-color:#f8f9fa;border-color:#ccc;box-shadow:0 1px 3px #0000000d;color:#333}.profile-item-actions button.action-btn:active{background-color:#e9ecef;border-color:#bbb;box-shadow:none}.profile-item-actions button.action-btn.primary-action{border-color:#b8daff;color:#007bff}.profile-item-actions button.action-btn.primary-action:hover{background-color:#e7f3ff;border-color:#007bff;color:#0056b3}.profile-item-actions button.action-btn.primary-action:active{background-color:#cce0ff;border-color:#0056b3}.profile-item-actions button.action-btn.danger-action{border-color:#f5c6cb;color:#dc3545}.profile-item-actions button.action-btn.danger-action:hover{background-color:#f8d7da;border-color:#dc3545;color:#a71d2a}.profile-item-actions button.action-btn.danger-action:active{background-color:#f1b0b7;border-color:#a71d2a}.profile-card-brand-icon{display:inline-block;height:24px;margin-right:8px;vertical-align:middle;width:38px}.profile-card-brand-icon svg{display:block;height:100%;width:100%}.add-new-button{display:inline-block;margin-top:1rem}.add-new-button:disabled{background-color:#ccc;border-color:#ccc;cursor:not-allowed}.add-new-button:disabled:hover{background-color:#ccc;box-shadow:none}.profile-section a.btn-primary,.profile-section a.btn-secondary{display:inline-block;text-align:center;text-decoration:none}.danger-zone{border-left:4px solid #c0392b}.danger-zone h2{border-bottom-color:#f8d7da;color:#c0392b}@media (min-width:600px){.profile-item{align-items:flex-end;flex-direction:row}.profile-item-content{flex-grow:1;margin-bottom:0}.profile-item-actions{flex-shrink:0;margin-left:auto;margin-top:0;padding-left:1rem;width:auto}}.btn-primary{background-color:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:.6rem 1.2rem;text-decoration:none;transition:background-color .2s ease,box-shadow .2s ease}.btn-primary:hover:not(:disabled){background-color:#0069d9;box-shadow:0 2px 4px #0069d933}.btn-primary:disabled{background-color:#007bff;cursor:not-allowed;opacity:.65}.btn-secondary{background-color:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:.6rem 1.2rem;text-decoration:none;transition:background-color .2s ease,box-shadow .2s ease}.btn-secondary:hover:not(:disabled){background-color:#5a6268;box-shadow:0 2px 4px #0000001a}.btn-secondary:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.65}.account-info-accent{border-left:4px solid #28a745}.account-info-accent h2{border-bottom-color:#d4edda;color:#155724}.btn-danger{background-color:#c0392b;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:.6rem 1.2rem;text-decoration:none;transition:background-color .2s ease,box-shadow .2s ease}.btn-danger:hover:not(:disabled){background-color:#a93226;box-shadow:0 2px 4px #c0392b4d}.btn-danger:disabled{background-color:#c0392b;cursor:not-allowed;opacity:.65}.btn-outline-primary{background-color:initial;border:1px solid #007bff;border-radius:6px;color:#007bff;cursor:pointer;display:inline-block;font-size:.9rem;font-weight:500;line-height:1.3;padding:.5rem 1rem;text-align:center;text-decoration:none;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}.btn-outline-primary:hover:not(:disabled){background-color:#007bff;box-shadow:0 2px 4px #0069d933;color:#fff}.btn-outline-primary:disabled{border-color:#007bff;color:#007bff;cursor:not-allowed;opacity:.5}.profile-info-item .btn-outline-primary{box-sizing:border-box;margin-top:.75rem;width:200px}.order-history-list{display:flex;flex-direction:column;gap:.5rem;width:100%}.order-history-item-button{background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;color:#333;cursor:pointer;display:grid;font-family:inherit;font-size:.95rem;grid-template-columns:1fr 1fr 1fr;padding:.75rem 1.5rem;text-align:left;transition:background-color .2s ease,box-shadow .2s ease;width:100%}.order-history-item-button:hover{background-color:#f8f9fa;box-shadow:0 2px 5px #00000014}.order-history-item-button span{display:block}.order-history-item-button span:nth-child(2){text-align:center}.order-history-item-button span:nth-child(3){font-weight:600;text-align:right}:root{--color-bg:#fff;--color-primary:#777674;--color-button-border:#d37e2f;--color-button-hover-border:#ff1744}.country-selection-container{color:#212121;color:var(--color-text);font-family:Poppins,sans-serif;font-family:var(--font-base);margin:0 auto;max-width:1200px;padding:1rem}.country-selection-container h2{font-size:2rem;margin-bottom:1.5rem;text-align:center}.country-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));justify-content:center}.country-list a{text-decoration:none}.country-button{align-items:center;background-color:#f0f0f0;border:2px solid #d37e2f;border:2px solid var(--color-button-border);border-radius:9999px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;height:4rem;justify-content:center;letter-spacing:.5px;line-height:1.2;overflow:hidden;padding:0 1.5rem;position:relative;text-align:center;text-transform:uppercase;transition:transform .2s ease,box-shadow .2s ease,border .2s ease;white-space:normal;width:100%;z-index:1}.country-flag{height:100%;left:0;top:0;transform:rotate(30deg) scale(1.4);width:100%}.country-button:before{background-color:#fffc;border-radius:9999px;bottom:0;content:"";left:0;position:absolute;right:0;top:0;transition:background-color .3s ease;z-index:1}.country-button:hover:before{background-color:#fff0}.country-button:hover{box-shadow:0 4px 12px #0003,0 0 15px #ff174480;transform:scale(1.1)}.country-button span{position:relative;text-shadow:-1px -1px 0 #777674,1px -1px 0 #777674,-1px 1px 0 #777674,1px 1px 0 #777674;text-shadow:-1px -1px 0 var(--color-primary),1px -1px 0 var(--color-primary),-1px 1px 0 var(--color-primary),1px 1px 0 var(--color-primary);z-index:2}.country-flag{background-position:50%;background-size:cover;height:230%;left:-25%;position:absolute;top:-65%;transform:rotate(30deg);width:150%;z-index:0}:root{--font-base:"Poppins",sans-serif;--color-primary:#f57c00;--color-accent:#66bb6a;--color-text:#212121}.dishlist-container{align-items:flex-start;display:flex;font-family:Poppins,sans-serif;font-family:var(--font-base);gap:2rem;margin:1rem auto;max-width:1200px;padding:1rem}.filter-column{flex:0 0 200px}.filter-column h3{border-bottom:2px solid #66bb6a;border-bottom:2px solid var(--color-accent);color:#212121;color:var(--color-text);font-size:1.25rem;margin-bottom:1rem;padding-bottom:.5rem}.filter-button{background-color:#fff;border:1px solid #f57c00;border:1px solid var(--color-primary);border-radius:8px;color:#f57c00;color:var(--color-primary);cursor:pointer;display:block;font-size:1rem;font-weight:600;margin-bottom:.75rem;padding:.75rem;text-align:left;transition:all .2s ease;width:100%}.filter-button:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.filter-button.selected,.filter-button:hover{background-color:#f57c00;background-color:var(--color-primary);color:#fff}.filter-button.selected{font-weight:700}.dish-main-content{flex:1 1}.dish-main-content h2{color:#212121;color:var(--color-text);font-size:2.5rem;margin-bottom:1rem;margin-top:0}.sort-controls{align-items:center;display:flex;gap:.5rem;margin:1rem 0;width:fit-content}.sort-controls label{font-size:1rem;font-weight:600}.sort-controls select{border:1px solid #ccc;border-radius:4px;font-family:Poppins,sans-serif;font-family:var(--font-base);font-size:1rem;padding:.5rem}.dish-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr;list-style:none;margin:0;padding:0}.dish-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 5px #0000000d;height:95px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.dish-card:hover{box-shadow:0 8px 15px #0000001a;transform:translateY(-5px)}.dish-card a{color:#212121;color:var(--color-text);display:flex;flex-direction:column;height:100%;justify-content:flex-start;padding:.75rem 1.25rem;text-decoration:none}.dish-card .dish-title{font-size:1.2rem;font-weight:600;margin:0}.dish-card .dish-description{color:#666;font-size:.9em;font-style:italic;margin-top:.25rem}.pagination-controls{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:2rem}.pagination-button{background-color:#fff;border:1px solid #f57c00;border:1px solid var(--color-primary);border-radius:4px;color:#f57c00;color:var(--color-primary);cursor:pointer;font-size:1rem;font-weight:600;padding:.5rem 1rem;transition:background-color .2s,color .2s}.pagination-button:hover:not(:disabled){background-color:#f57c00;background-color:var(--color-primary);color:#fff}.pagination-button:disabled{border-color:#ccc;color:#ccc;cursor:not-allowed}.pagination-info{color:#212121;color:var(--color-text);font-size:1rem;font-weight:600}.recipe-modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.recipe-modal-container{background:#fff;border-radius:8px;box-shadow:0 5px 15px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:95%;width:750px}.recipe-modal-header{align-items:center;border-bottom:1px solid #dee2e6;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 30px}.recipe-modal-header h3{color:#000;font-size:1.75rem;margin:0}.recipe-modal-close-btn{background:none;border:none;color:#6c757d;cursor:pointer;font-size:2.5rem;line-height:1;padding:0}.recipe-modal-close-btn:hover{color:#343a40}.recipe-modal-form{display:flex;flex-direction:column;height:100%;overflow:hidden}.recipe-modal-content{flex-grow:1;overflow-y:auto;padding:25px 30px}.form-actions{background-color:#f8f9fa;border-top:1px solid #dee2e6;flex-shrink:0;gap:12px;justify-content:flex-end;padding:20px 30px}.recipe-modal-container label{color:#495057;display:block;font-size:1.2rem;font-weight:600;margin-bottom:8px}input[type=number],input[type=text],select,textarea{border:1px solid #ced4da;border-radius:4px;box-sizing:border-box;font-size:1rem;height:40px;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}input[type=number]:focus,input[type=text]:focus,select:focus,textarea:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40;outline:none}textarea{height:auto;min-height:80px;resize:vertical}.error-message{color:#dc3545;display:block;font-size:.875em;font-weight:400;margin-top:5px}.form-section{border-top:1px solid #e9ecef;margin-top:25px;padding-top:15px}.sub-form-row{align-items:center;display:flex;gap:10px;margin-bottom:10px}.sub-form-row input{flex:1 1}.sub-form-row input[name=quantity],.sub-form-row input[name=units]{flex:0 0 60px}.sub-form-column{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:5px;margin-bottom:15px;padding:15px}.add-btn,.cancel-btn,.remove-btn,.save-btn{border:1px solid #0000;border-radius:4px;cursor:pointer;font-weight:600;padding:8px 15px;transition:background-color .2s ease,transform .1s ease}.add-btn:active,.cancel-btn:active,.remove-btn:active,.save-btn:active{transform:translateY(1px)}.add-btn{background-color:#007bff;color:#fff}.add-btn:hover{background-color:#0056b3}.remove-btn{background-color:#fd7e14;color:#fff;flex-shrink:0}.remove-btn:hover{background-color:#e86100}.save-btn{background-color:#28a745;color:#fff;padding:10px 20px}.save-btn:hover{background-color:#218838}.cancel-btn{background-color:initial;border-color:#6c757d;color:#6c757d}.cancel-btn:hover{background-color:#6c757d;color:#fff}.checkbox-group{background-color:#f8f9fa;border-radius:4px;display:flex;flex-wrap:wrap;gap:15px;padding:15px}.recipe-modal-container .checkbox-label{align-items:center;display:flex;font-weight:400;gap:8px}.recipe-modal-container .checkbox-label input{height:1.2em;width:auto;width:1.2em}.field-note{color:#6c757d;font-size:.9em;margin-bottom:10px;margin-top:5px}.image-preview-container{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;padding:10px}.image-preview-item{border-radius:4px;box-shadow:0 2px 4px #0000001a;height:100px;position:relative;width:100px}.image-preview-item img{border-radius:4px;height:100%;object-fit:cover;width:100%}.image-preview-item .remove-btn{align-items:center;background-color:#dc3545;border-radius:50%;display:flex;font-size:16px;height:24px;justify-content:center;line-height:1;padding:0;position:absolute;right:-8px;top:-8px;width:24px}.image-preview-item .remove-btn:hover{background-color:#c82333}.recipe-modal-container select#continents,.recipe-modal-container select#difficulty{padding-bottom:0;padding-top:0}.file-input{display:none}label.add-btn{color:#fff;display:inline-block;font-size:1rem;line-height:1;margin-bottom:0}.recipe-detail-container{background-color:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;font-family:Lora,serif;margin:.5rem auto;max-width:800px;padding:2rem;position:relative}.recipe-detail-container h1{color:#333;font-family:Poppins,sans-serif;font-size:2.5rem;margin-bottom:.5rem;text-align:center}.title-with-actions{margin-top:3.5rem}.recipe-detail-container h1 span{color:#666;display:block;font-size:1.2rem;margin-top:.5rem}.recipe-video{height:450px;margin-bottom:2rem;width:100%}.recipe-images{display:flex;gap:1rem;margin-bottom:2rem;overflow-x:auto}.recipe-images img{border-radius:8px;box-shadow:0 2px 4px #0000000d;height:auto;max-width:100%}.recipe-detail-container .recipe-description{color:#555;display:block;font-size:1.1rem;line-height:1.6;margin-bottom:2rem;max-height:none;overflow:visible}.recipe-section{margin-bottom:2rem}.recipe-section h3{font-family:Poppins,sans-serif}.recipe-ingredients-list,.recipe-instructions-list{list-style:none;padding:0}.recipe-ingredients-list li{grid-gap:12px;align-items:center;border-bottom:1px solid #f0f0f0;display:grid;gap:12px;grid-template-columns:40px 50px 1fr auto;padding:12px 10px;transition:background-color .2s ease}.ingredient-line{text-decoration:none}.ingredient-line:hover{text-decoration:underline}.recipe-instructions-list li{margin-bottom:1.5rem}.instruction-step .step-title{color:#333;margin-bottom:.5rem}.recipe-meta-info{background-color:#f9f9f9;border-radius:8px;display:flex;justify-content:space-around;margin-bottom:2rem;padding:1rem}.meta-item{text-align:center}.meta-item strong{color:#333;display:block;font-size:1rem}.meta-item span{color:#666;font-size:.9rem}.action-buttons{display:flex;gap:1rem;margin-top:0;position:absolute;right:2rem;top:1rem}.action-buttons button{border:none;border-radius:5px;cursor:pointer;font-size:1rem;padding:.8rem 1.5rem;transition:background-color .3s ease}.btn-favorite{background-color:#ffc107;color:#fff}.btn-favorite:hover{background-color:#e0a800}.btn-delete,.btn-edit,.btn-fork{background-color:#007bff;color:#fff}.btn-edit:hover,.btn-fork:hover{background-color:#0056b3}.btn-delete{background-color:#dc3545}.btn-delete:hover{background-color:#c82333}.recipe-section h3{border-bottom:2px solid #eee;color:#444;font-size:1.8rem;margin-bottom:1rem;padding-bottom:.5rem}.recipe-ingredients-list{list-style:none;padding:0}.recipe-ingredients-list li:last-child{border-bottom:none}.recipe-ingredients-list li:hover{background-color:#f9f9f9}.ingredient-quantity{color:#333;font-weight:700;text-align:right}.ingredient-units{color:#666}.ingredient-description{line-height:1.4}.ingredient-name{color:#222;font-weight:500}.ingredient-details-text{color:#777;font-size:.9rem;font-style:italic}.ingredient-line{color:#007bff;cursor:pointer;display:contents}.ingredient-line:hover .ingredient-name{text-decoration:underline}.ingredient-action{justify-self:end}.cart-icon-button{align-items:center;background:none;border:none;border-radius:50%;cursor:pointer;display:flex;justify-content:center;padding:5px;transition:background-color .2s ease,transform .1s ease}.cart-icon-button:hover{background-color:#e8f4ff}.cart-icon-button:active{transform:scale(.9)}.cart-icon-button svg{stroke:#555;height:20px;transition:stroke .2s ease;width:20px}.cart-icon-button:hover svg{stroke:#007bff}.ingredient-description-clickable{cursor:pointer}.ingredient-description-clickable:hover .ingredient-name{text-decoration:underline}.recipe-instructions-list{line-height:1.7;list-style-type:decimal;padding-left:25px}.instruction-step{margin-bottom:1.5rem;padding-left:10px}.instruction-step .step-title{font-weight:700;margin-bottom:5px}.adv-search{font-family:sans-serif;margin:0 auto;max-width:800px;padding:1rem}.matches.sticky{align-items:baseline;background:#fff;border-bottom:1px solid #ddd;display:flex;justify-content:flex-end;padding:.5rem 0;position:sticky;top:60px;z-index:10}.matches.sticky strong{font-weight:700;margin-right:.5rem}.match-number{font-size:1.25em;font-weight:700}.category-block{border-bottom:1px solid #ddd;margin-bottom:1rem}.category-block.no-border{border-bottom:none}.category-header{cursor:pointer;font-size:1.1rem;margin:.5rem 0;-webkit-user-select:none;user-select:none}.category-items{display:flex;flex-direction:column;padding-left:1rem}.category-item{align-items:center;display:flex;margin:.25rem 0;padding-right:1.5rem;position:relative}.category-item .item-name{flex:1 1}.category-item button{background:#f8f8f8;border:1px solid #ccc;border-radius:4px;cursor:pointer;line-height:1.2;margin-left:.5rem;padding:.25rem .5rem;white-space:nowrap}.category-item button.active{background:#007bff;border-color:#0056b3;color:#fff}.clear-x{color:#c00;cursor:pointer;font-size:1rem;line-height:1.2;position:absolute;right:0;-webkit-user-select:none;user-select:none}.add-ingredient-form{display:flex;gap:.5rem;margin:1rem 0}.add-ingredient-form button{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem}.add-ingredient-form button:hover{background:#0056b3}.add-ingredient-form .inline-autocomplete,.add-ingredient-form .inline-autocomplete .ghost-text,.add-ingredient-form .inline-autocomplete input{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;font-weight:400;letter-spacing:normal}.add-ingredient-form .inline-autocomplete{flex:1 1;position:relative}.add-ingredient-form .inline-autocomplete .ghost-text{color:#0000;left:1px;padding:.5rem 1.5rem .5rem .75rem;pointer-events:none;position:absolute;top:2px;white-space:pre;width:calc(100% - 2px)}.add-ingredient-form .inline-autocomplete .suffix{color:#999}.add-ingredient-form .inline-autocomplete input{background:#0000;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;line-height:1.5;padding:.5rem 1.5rem .5rem .75rem;width:100%}.add-ingredient-form .inline-autocomplete .clear-input{color:#666;cursor:pointer;font-size:1.2rem;position:absolute;right:.5rem;top:50%;transform:translateY(-50%);-webkit-user-select:none;user-select:none;z-index:2}.add-ingredient-form .autocomplete-menu{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 8px #0000001a;left:0;list-style:none;margin:0;max-height:200px;overflow-y:auto;padding:0;position:absolute;top:calc(100% + .25rem);width:100%;z-index:1000}.add-ingredient-form .autocomplete-menu li{cursor:pointer;padding:.5rem}.add-ingredient-form .autocomplete-menu li.highlighted,.add-ingredient-form .autocomplete-menu li:hover{background:#f0f0f0}.notepad{background:#fafafa;border:1px solid #ccc;margin-bottom:1rem;padding:.5rem}.note-line{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;font-family:monospace;font-size:1.2rem;justify-content:space-between;line-height:2em;min-height:2em;overflow:hidden}.note-text{flex:1 1}.note-buttons{display:flex;gap:.75rem}.note-buttons button{background:#f8f8f8;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:.9rem;line-height:1.2;padding:.25rem .5rem;white-space:nowrap}.note-buttons button.active{background:#007bff;border-color:#0056b3;color:#fff}.note-buttons .remove-btn{border-color:#c00;color:#c00}.food-types{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.food-types button{background:#f8f8f8;border:1px solid #ccc;border-radius:4px;cursor:pointer;line-height:1.2;padding:.5rem 1rem}.food-types button.active{background:#007bff;border-color:#0056b3;color:#fff}.prep-time{display:flex;flex-direction:column;gap:.25rem;margin:1rem 0}.prep-time label{font-weight:700}.prep-time input{width:100%}.difficulties{display:flex;gap:.5rem;margin:1rem 0}.difficulties button{background:#f8f8f8;border:1px solid #ccc;border-radius:4px;cursor:pointer;line-height:1.2;padding:.5rem 1rem}.difficulties button.active{background:#007bff;border-color:#0056b3;color:#fff}.actions.right{display:flex;gap:.5rem;justify-content:flex-end;margin:1rem 0}.actions.right button{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;line-height:1.2;padding:.5rem 1rem}.actions.right button:hover{background:#0056b3}.reset-password-page-container{align-items:center;background-color:var(--color-background-alt);display:flex;justify-content:center;min-height:calc(100vh - var(--header-height) - var(--footer-height));padding:20px}.reset-password-card{background-color:var(--color-background);border-radius:8px;box-shadow:var(--shadow-small);max-width:400px;padding:30px;text-align:center;width:100%}.reset-password-card h2{color:var(--color-text-dark);font-size:1.8em;margin-bottom:25px}.form-group{margin-bottom:20px;text-align:left}.form-group label{color:var(--color-text-dark);display:block;margin-bottom:8px}.form-group input[type=password]{border:1px solid var(--color-border);border-radius:5px;font-size:1em;padding:10px;width:calc(100% - 20px)}.reset-error-message{background-color:var(--color-error-bg);border:1px solid var(--color-error);border-radius:5px;color:var(--color-error)}.reset-error-message,.reset-success-message{font-size:.95em;margin-bottom:20px;padding:10px;text-align:left}.reset-success-message{background-color:var(--color-success-bg);border:1px solid var(--color-success);border-radius:5px;color:var(--color-success)}.reset-password-btn-primary{background-color:var(--color-primary);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1.1em;font-weight:700;padding:12px 20px;transition:background-color .3s ease;width:100%}.reset-password-btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark)}.reset-password-btn-primary:disabled{background-color:var(--color-disabled);cursor:not-allowed}@media (max-width:600px){.reset-password-card{padding:20px}}.ingredient-management-container{margin-top:2rem}.ingredient-form{background-color:#f9f9f9;border:1px solid #eee;border-radius:8px;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.amount-row,.form-row{align-items:flex-end;display:flex;gap:1.5rem}.form-group{display:flex;flex:1 1;flex-direction:column}.form-group label{font-size:.9rem;font-weight:700;margin-bottom:.5rem}.form-group input,.form-group select{border:1px solid #ccc;border-radius:4px;font-size:1rem;padding:.75rem}.amounts-section{border:1px dashed #ccc;border-radius:4px;margin-top:1rem;padding:1rem}.amounts-section h4{margin-bottom:1rem;margin-top:0}.amount-row .remove-amount-btn{background-color:#fcc;border:none;border-radius:4px;color:#d9534f;cursor:pointer;font-size:1.5rem;font-weight:700;height:48px;padding:0 1rem}.amount-row .remove-amount-btn:hover{background-color:#d9534f;color:#fff}.add-amount-btn{background-color:#fff;border:1px solid #28a745;border-radius:4px;color:#28a745;cursor:pointer;font-weight:700;margin-top:1rem;padding:.5rem 1rem}.add-amount-btn:hover{background-color:#f0fdf4}.form-actions{display:flex;gap:1rem;margin-top:1rem}.form-actions button{border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:700;padding:.75rem 1.5rem}.form-actions .save-button{background-color:#28a745;border-color:#28a745;color:#fff}.form-actions .save-button:hover{background-color:#218838}.ingredient-list-container{margin-top:2rem;overflow-x:auto}.form-column{display:flex;flex:1 1;flex-direction:column;gap:1rem}.image-preview{border:1px solid #ddd;border-radius:4px;margin-top:1rem;max-height:200px;max-width:200px;padding:5px}.list-image-thumbnail{border-radius:4px;max-height:60px;max-width:60px}.no-image-placeholder{align-items:center;background-color:#f0f0f0;border-radius:4px;color:#aaa;display:flex;font-size:.75rem;height:60px;justify-content:center;text-align:center;width:60px}.order-list-container{margin-top:2rem;overflow-x:auto}.order-list-container h3{font-size:1.5rem;margin-bottom:1rem}.status-badge{border-radius:12px;color:#fff;font-size:.8rem;font-weight:700;padding:4px 8px;text-transform:capitalize}.status-pending{background-color:#f0ad4e}.status-processing{background-color:#5bc0de}.status-shipped{background-color:#337ab7}.status-delivered{background-color:#5cb85c}.status-cancelled{background-color:#d9534f}.status-select{border:1px solid #ccc;border-radius:4px;padding:5px}.user-list-container{overflow-x:auto}.user-list-container table{border-collapse:collapse;margin-top:1rem;width:100%}.user-list-container td,.user-list-container th{border:1px solid #ddd;padding:12px;text-align:left}.user-list-container th{background-color:#f7f7f7;font-weight:700}.user-list-container tr:nth-child(2n){background-color:#f2f2f2}.user-list-container tr:hover{background-color:#ddd}.error-message{background-color:#ffd2d2;border:1px solid #d8000c;border-radius:5px;color:#d8000c;padding:10px}.action-button{background-color:#f0f0f0;border:1px solid #ccc;border-radius:4px;cursor:pointer;padding:5px 10px}.action-button:hover{background-color:#e0e0e0}.delete-button{background-color:#fcc;border-color:#f99}.delete-button:hover{background-color:#f99}.self-text{color:#888;font-style:italic}.recipe-management{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:20px}.recipe-management h2{margin-bottom:20px;margin-top:0;text-align:left}.add-recipe-btn{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:700;margin-bottom:20px;padding:10px 15px}.add-recipe-btn:hover{background-color:#0056b3}.recipe-management table{border-collapse:collapse;width:100%}.recipe-management td,.recipe-management th{border:1px solid #ddd;padding:12px;text-align:left}.recipe-management th{background-color:#f8f9fa;font-weight:600}.actions-cell{display:flex;gap:10px}.delete-btn,.edit-btn{border:none;border-radius:4px;color:#fff;cursor:pointer;padding:6px 12px}.edit-btn{background-color:#ffc107}.edit-btn:hover{background-color:#e0a800}.delete-btn{background-color:#dc3545}.delete-btn:hover{background-color:#c82333}.search-bar{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.field-filters label{margin-right:10px}.sortable{cursor:pointer}.pagination{align-items:center;display:flex;gap:10px;margin-top:15px}.admin-dashboard-container{margin:2rem auto;max-width:1200px;padding:2rem}.admin-dashboard-header{border-bottom:2px solid #eee;margin-bottom:2rem;padding-bottom:1rem}.admin-dashboard-header h1{color:#333;font-size:2.5rem}.section-divider{border:none;border-top:1px solid #eee;margin:3rem 0}
/*# sourceMappingURL=main.e6570bfc.css.map*/