.cart-overlay{position:fixed;inset:0;background-color:#0009;z-index:9998;display:flex;justify-content:flex-end;opacity:0;animation:fadeInOverlay .3s forwards}@keyframes fadeInOverlay{to{opacity:1}}.cart-panel{position:fixed;right:0;top:0;height:100vh;width:360px;background:#1a1a1a;z-index:9999;display:flex;flex-direction:column;box-shadow:-4px 0 16px #00000080;transform:translate(100%);animation:slideInRight .3s forwards}@keyframes slideInRight{to{transform:translate(0)}}@media(max-width:768px){.cart-overlay{justify-content:center;align-items:flex-end}.cart-panel{max-width:100%;height:85vh;border-radius:16px 16px 0 0;transform:translateY(100%);animation:slideInUp .3s forwards}@keyframes slideInUp{to{transform:translateY(0)}}}.cart-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #333;background-color:#161616}.cart-header h3{margin:0;color:var(--accent-color)}.close-cart-btn{background:none;border:none;color:#fff;font-size:2rem;line-height:1;cursor:pointer;padding:0}.cart-items{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.empty-cart-message{text-align:center;color:#888;margin-top:2rem;font-style:italic}.cart-item{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:1.5rem;border-bottom:1px solid #333}.cart-item:last-child{border-bottom:none}.cart-item-details{flex:1;display:flex;flex-direction:column;gap:.25rem}.cart-item-header{display:flex;justify-content:space-between;padding-right:1rem}.cart-item-name{font-weight:700;color:#fff}.cart-item-price{color:var(--accent-color);font-weight:700}.cart-item-info{font-size:.85rem;color:#aaa;display:flex;flex-direction:column}.cart-item-extras{color:var(--secondary-color)}.cart-item-removed{color:#ff6b6b;text-decoration:line-through;opacity:.8}.cart-item-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.quantity-controls{display:flex;align-items:center;gap:.5rem;background-color:#2a2a2a;padding:4px;border-radius:8px;border:1px solid #444}.qty-btn{width:28px;height:28px;border:none;border-radius:6px;background-color:var(--accent-color);color:#000;font-size:1.1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.qty-btn:hover{background-color:#ffb74d;transform:scale(1.05)}.qty-btn:active{transform:scale(.95)}.cart-item-qty{min-width:24px;text-align:center;font-weight:700;font-size:1rem;color:#fff}.remove-item-btn{background:none;border:none;color:#666;font-size:1.5rem;cursor:pointer;line-height:1;padding:0}.remove-item-btn:hover{color:#ff3b30}.cart-footer{padding:1.5rem;background-color:#161616;border-top:1px solid #333}.cart-total{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:1.25rem;font-weight:700}.total-amount{color:var(--accent-color);font-size:1.5rem}.checkout-btn{width:100%;background-color:var(--accent-color);color:#000;border:none;padding:1rem;font-size:1.1rem;font-weight:700;border-radius:50px;cursor:pointer;transition:background-color .2s}.checkout-btn:disabled{background-color:#444;color:#888;cursor:not-allowed}.checkout-btn:not(:disabled):hover{background-color:#ffb74d}:root{--bg-color: #1a1a1a;--text-color: #ffffff;--accent-color: #ff9f1c;--secondary-color: #2ec4b6;--header-bg: #0f0f0f;--footer-bg: #0f0f0f;--font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif}body{margin:0;padding:0;font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-color);min-height:100vh;display:flex;flex-direction:column}#root{display:flex;flex-direction:column;min-height:100vh}.app-container{display:flex;flex-direction:column;min-height:100vh;width:100%;background-color:var(--bg-color)}@media(min-width:1024px){.app-container{max-width:none;box-shadow:none;margin:0}}.page-content{width:100%;margin:0;padding:0;flex:1;display:flex;flex-direction:column}.header-full{width:100vw;margin-left:calc(50% - 50vw);background-color:var(--header-bg);border-bottom:1px solid #333}.header-inner{width:100%;padding:1rem 48px;box-sizing:border-box}.site-header-content{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.site-header-content h1{margin:0;font-size:2rem;color:var(--accent-color);display:flex;align-items:center;gap:.5rem;justify-content:center}.site-header-content p{margin:.5rem 0 0;font-size:2rem;opacity:.8}@media(max-width:768px){.header-inner{padding:1rem 16px}}.footer-full{width:100vw;margin-left:calc(50% - 50vw);background-color:var(--footer-bg);margin-top:50px;padding:24px 0}.footer-contact{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2rem;padding:0 1rem 1rem;margin-bottom:1rem}.footer-link{color:var(--accent-color);text-decoration:none;font-size:.9rem;transition:opacity .2s}.footer-link:hover{opacity:.8}.footer-text{color:#aaa;font-size:.9rem}.footer-center{display:flex;justify-content:center;align-items:center;width:100%;padding:16px 0;text-align:center;color:#888;font-size:.875rem}@media(max-width:768px){.footer-contact{flex-direction:column;align-items:center;gap:.75rem}}.toast-notification{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background-color:var(--secondary-color);color:#000;padding:1rem 2rem;border-radius:50px;box-shadow:0 4px 12px #0000004d;z-index:2000;font-weight:700;animation:fadeIn .3s ease;text-align:center;min-width:200px}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.floating-cart-container{position:fixed;bottom:24px;right:24px;z-index:9999}.floating-cart-btn{background-color:var(--accent-color);color:#000;border:none;width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 16px #0006;transition:transform .2s,box-shadow .2s;position:relative}.floating-cart-btn:hover{transform:scale(1.1);box-shadow:0 8px 24px #00000080}.floating-cart-badge{position:absolute;top:-6px;right:-6px;background-color:#ff3b30;color:#fff;font-size:.9rem;font-weight:700;min-width:1.6rem;height:1.6rem;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-color);box-shadow:0 2px 4px #0003}.hero-section{padding:4rem 1.5rem;text-align:center;background:linear-gradient(#000000bf,#000000bf),url(/hero-bg.png);background-size:cover;background-position:center;min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:0 0 1.5rem 1.5rem;margin-bottom:2rem;width:100vw;margin-left:calc(50% - 50vw);box-sizing:border-box;position:relative;gap:1.5rem}.hero-header{position:relative;width:100%;z-index:2;margin-bottom:0}.site-header-content{display:flex;flex-direction:column;align-items:center;gap:.5rem}.site-header-content h1{font-size:2.5rem;line-height:1.1;margin:0;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}.hero-logo{width:5rem;height:5rem;object-fit:contain;vertical-align:middle}.tagline{font-size:1.1rem;font-weight:500;color:var(--accent-color);margin:0;opacity:.9;letter-spacing:.5px}.hero-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:1.5rem;width:100%;max-width:600px}.hero-content p{font-size:1.25rem;font-weight:600;color:#eee;margin:0;line-height:1.4;text-shadow:1px 1px 3px rgba(0,0,0,.8)}.hero-section button{background-color:var(--accent-color);color:#000;border:none;padding:.875rem 2rem;font-size:1.1rem;font-weight:700;border-radius:50px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #0000004d;margin-top:.5rem;display:inline-flex;align-items:center;justify-content:center}.hero-section button:hover{background-color:#ffb74d;transform:translateY(-2px);box-shadow:0 6px 16px #0006}.hero-section button:active{transform:translateY(0)}@media(min-width:1024px){.hero-section{min-height:500px;padding:5rem 2rem;gap:2rem}.site-header-content h1{font-size:4.5rem;margin-bottom:.5rem}.hero-logo{width:8rem;height:8rem}.tagline,.hero-content p{font-size:1.5rem}.hero-section button{font-size:1.25rem;padding:1rem 2.5rem}}.menu-full{width:100%;display:flex;flex-direction:column}.menu-inner{width:100%;padding:0 48px;box-sizing:border-box}@media(max-width:768px){.menu-inner{padding:0 16px}}.category-tabs{display:flex;gap:.75rem;margin-bottom:2rem;overflow-x:auto;padding:.5rem 0;justify-content:flex-start;scrollbar-width:thin;scrollbar-color:var(--accent-color) transparent;-ms-overflow-style:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}.category-tabs::-webkit-scrollbar{height:6px}.category-tabs::-webkit-scrollbar-track{background:transparent}.category-tabs::-webkit-scrollbar-thumb{background-color:var(--accent-color);border-radius:3px}@media(min-width:1024px){.category-tabs{justify-content:center;gap:1rem;flex-wrap:wrap;overflow-x:visible}}.category-tabs::-webkit-scrollbar{display:none}.empty-category{text-align:center;padding:3rem;color:#888;background-color:#222;border-radius:8px;font-style:italic}.tab-btn{background-color:transparent;border:1px solid #444;color:var(--text-color);padding:.6rem 1.25rem;border-radius:50px;cursor:pointer;font-size:.9rem;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.tab-btn:hover{border-color:var(--accent-color)}.tab-btn.active{background-color:var(--accent-color);color:#1a1a1a;border-color:var(--accent-color);font-weight:700}.menu-grid{padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;justify-content:center}@media(min-width:1024px){.menu-grid{grid-template-columns:repeat(4,1fr);gap:2.5rem}}.product-card{background-color:#2a2a2a;border-radius:12px;padding:1rem;border:1px solid #333;transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;align-items:flex-start;gap:1rem;cursor:pointer;min-height:100px}.product-card:hover{transform:translateY(-5px);box-shadow:0 5px 15px #0000004d;border-color:var(--accent-color)}.card-image{width:100%;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background-color:#222;display:flex;align-items:center;justify-content:center}.card-image .product-image{width:100%;height:100%;object-fit:cover}.no-image{color:#666;font-size:.8rem;text-align:center}.card-content{flex:1;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;width:100%;text-align:left}.product-card h3{margin:0 0 .5rem;font-size:1.1rem;color:var(--text-color);line-height:1.3}.price-container{display:flex;align-items:center;gap:.75rem;align-self:flex-start;margin-top:auto}.product-card .price{font-size:1.2rem;font-weight:700;color:#f97316;margin:0}.old-price{font-size:1rem;color:#888;text-decoration:line-through;font-weight:500}.new-price{font-size:1.2rem;font-weight:700;color:#f97316}@media(max-width:480px){.menu-inner{padding:0 10px}.menu-grid{grid-template-columns:repeat(2,1fr);gap:8px}.product-card{padding:6px;flex-direction:row;align-items:center;gap:6px;min-height:auto;border-radius:8px}.card-image{width:56px;height:56px;aspect-ratio:1/1;margin-bottom:0;flex-shrink:0;border-radius:6px}.card-content{justify-content:center;gap:2px}.product-card h3{font-size:.75rem;margin:0;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.price-container{margin-top:0;gap:4px}.product-card .price,.new-price{font-size:.8rem;color:#f97316}.old-price{font-size:.65rem}}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:1rem}.modal-content{background-color:#1e1e1e;border-radius:16px;width:100%;max-width:500px;max-height:90vh;border:1px solid #333;animation:slideUp .3s ease;display:flex;flex-direction:column;overflow:hidden}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-hero-image{width:100%;height:200px;flex-shrink:0;background-color:#000;position:relative}.modal-hero-image img{width:100%;height:100%;object-fit:cover}.modal-header{padding:1rem 1.5rem;border-bottom:1px solid #333;display:flex;justify-content:space-between;align-items:center;flex-shrink:0;background-color:#1e1e1e}.modal-header h3{margin:0;font-size:1.35rem;color:var(--accent-color)}.close-btn{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;line-height:1;padding:0;margin-left:10px}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}@media(max-width:480px){.modal-backdrop{padding:.5rem;align-items:flex-start;padding-top:2vh}.modal-content{margin:0;max-height:92vh;border-radius:12px;max-width:100%}.modal-content .modal-hero-image{height:150px}.modal-content .modal-header{padding:.6rem .85rem}.modal-content .modal-header h3{font-size:.85rem}.modal-content .close-btn{font-size:1.5rem}.modal-content .modal-body{padding:.6rem}.modal-content .product-description-section{margin-bottom:1rem;padding-bottom:.75rem}.modal-content .main-ingredients{font-size:.8rem;line-height:1.4}.modal-content .ingredients-section{padding:.6rem;margin-bottom:.85rem}.modal-content .ingredients-section h4{font-size:.8rem;margin:0 0 .6rem;padding-bottom:.4rem}.modal-content .ingredient-item{padding:.4rem;font-size:.75rem;gap:.6rem}.modal-content .ingredient-item input[type=checkbox],.modal-content .ingredient-item input[type=radio]{width:1rem;height:1rem}.modal-content .ingredient-info .price{font-size:.75rem}.modal-content .price-summary{margin-top:.85rem;padding-top:.6rem}.modal-content .price-summary span{font-size:.85rem}.modal-content .price-tag{font-size:1rem}.modal-content .modal-actions{padding:.6rem .85rem}.modal-content .add-to-cart-btn{padding:.6rem 1.25rem;font-size:.85rem}}.description{color:#ccc;line-height:1.6;margin-bottom:1.5rem}.product-description-section{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #333}.main-ingredients{font-size:1rem;color:#eee;line-height:1.6;font-style:italic;opacity:.9;margin:0}.quantity-section{margin-bottom:1.5rem;background-color:#202020;padding:1rem;border-radius:8px;border:1px solid #333}.quantity-section.compact{padding:.75rem 1rem}.quantity-selector{display:flex;align-items:center;justify-content:center;gap:1rem}.quantity-selector.compact{justify-content:flex-start;gap:.5rem}.quantity-selector .qty-label{color:#fff;font-size:1rem;font-weight:500;flex:1}.quantity-selector .qty-btn{width:44px;height:44px;border:none;border-radius:10px;background-color:var(--accent-color);color:#000;font-size:1.4rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.quantity-selector .qty-btn.compact{width:32px;height:32px;border-radius:6px;font-size:1rem}.quantity-selector .qty-btn:hover:not(:disabled){background-color:#ffb74d;transform:scale(1.05)}.quantity-selector .qty-btn:active:not(:disabled){transform:scale(.95)}.quantity-selector .qty-btn:disabled{background-color:#555;color:#888;cursor:not-allowed}.quantity-selector .qty-value{min-width:60px;text-align:center;font-size:1.5rem;font-weight:700;color:#fff}.quantity-selector .qty-value.compact{min-width:32px;font-size:1rem;font-weight:500}@media(max-width:480px){.modal-content .quantity-section{padding:.6rem;margin-bottom:.85rem}.modal-content .quantity-selector{gap:.75rem}.modal-content .quantity-selector .qty-btn{width:36px;height:36px;font-size:1.2rem}.modal-content .quantity-selector .qty-btn.compact{width:28px;height:28px;font-size:.9rem}.modal-content .quantity-selector .qty-value{font-size:1.2rem;min-width:48px}.modal-content .quantity-selector .qty-value.compact{font-size:.9rem;min-width:24px}.modal-content .qty-label{font-size:.9rem}}.ingredients-section{margin-bottom:1.5rem;background-color:#202020;padding:1rem;border-radius:8px;border:1px solid #333}.ingredients-section h4{margin:0 0 1rem;color:#fff;font-size:1.1rem;font-weight:600;border-bottom:1px solid #444;padding-bottom:.75rem;letter-spacing:.5px}.ingredients-list{display:flex;flex-direction:column;gap:.5rem}.ingredient-item{display:flex;align-items:center;gap:1rem;cursor:pointer;font-size:1rem;-webkit-user-select:none;user-select:none;padding:.75rem;border-radius:6px;background-color:#2a2a2a;transition:background-color .2s ease}.ingredient-item:hover{background-color:#333}.ingredient-item input[type=checkbox],.ingredient-item input[type=radio]{width:1.25rem;height:1.25rem;accent-color:var(--accent-color);cursor:pointer;flex-shrink:0}.ingredient-info{flex:1;display:flex;justify-content:space-between;align-items:center;width:100%}.ingredient-info .name{color:#e0e0e0;font-weight:400}.ingredient-info .price{color:var(--accent-color);font-weight:600;font-size:.95rem}.removable .action-hint{font-size:.8rem;color:#ff5252;font-weight:500;opacity:0;transition:opacity .2s;text-transform:uppercase}.removable:hover .action-hint,.removable input:checked~.ingredient-info .action-hint{opacity:1}.removable input:checked~.ingredient-info .name{text-decoration:line-through;color:#888;opacity:.7}.price-summary{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:1rem;border-top:1px solid #333}.price-summary span{font-size:1.2rem}.price-tag{font-size:1.8rem;font-weight:700;color:var(--accent-color);text-align:right;margin:0}.modal-actions{padding:1.5rem;background-color:#161616;display:flex;justify-content:flex-end;flex-shrink:0}.add-to-cart-btn{background-color:var(--accent-color);color:#000;border:none;padding:1rem 2rem;font-size:1.1rem;font-weight:700;border-radius:50px;cursor:pointer;width:100%;transition:background-color .2s}.add-to-cart-btn:hover{background-color:#ffb74d}.pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:2rem;padding:1rem 0}.pagination-btn{background-color:#2a2a2a;border:1px solid #444;color:var(--text-color);width:40px;height:40px;border-radius:8px;cursor:pointer;font-size:1rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.pagination-btn:hover:not(:disabled){border-color:var(--accent-color);color:var(--accent-color)}.pagination-btn.active{background-color:var(--accent-color);color:#1a1a1a;border-color:var(--accent-color);font-weight:700}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}@media(max-width:768px){.pagination-btn{width:36px;height:36px;font-size:.9rem}}.mobile-menu-toggle{display:none}.category-tabs.desktop-only{display:flex}@media(max-width:768px){.category-tabs.desktop-only{display:none}.mobile-menu-toggle{display:flex;align-items:center;gap:.75rem;background-color:#2a2a2a;border:1px solid #444;color:var(--text-color);padding:.75rem 1rem;border-radius:8px;cursor:pointer;margin-bottom:1.5rem;width:100%;text-align:left}.hamburger-icon{display:flex;flex-direction:column;gap:4px;width:20px}.hamburger-icon span{display:block;height:2px;background-color:var(--accent-color);border-radius:2px}.current-category{font-size:1rem;font-weight:500}}.mobile-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;z-index:9998;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.mobile-menu-overlay.open{opacity:1;visibility:visible}.mobile-menu-panel{position:fixed;top:0;left:0;width:280px;max-width:80vw;height:100%;background-color:#1a1a1a;z-index:9999;transform:translate(-100%);transition:transform .3s ease;display:flex;flex-direction:column}.mobile-menu-overlay.open .mobile-menu-panel{transform:translate(0)}.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #333}.mobile-menu-header h3{margin:0;color:var(--accent-color);font-size:1.25rem}.mobile-menu-close{background:none;border:none;color:#888;font-size:1.75rem;cursor:pointer;padding:0;line-height:1}.mobile-menu-close:hover{color:var(--text-color)}.mobile-menu-nav{flex:1;overflow-y:auto;padding:.5rem 0}.mobile-menu-item{display:block;width:100%;padding:1rem 1.25rem;background:none;border:none;color:var(--text-color);font-size:1rem;text-align:left;cursor:pointer;transition:background-color .2s ease}.mobile-menu-item:hover{background-color:#252525}.mobile-menu-item.active{background-color:#2a2a2a;color:var(--accent-color);font-weight:600;border-left:3px solid var(--accent-color)}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#1a1a1a;color:#ffffffde}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
