.category-card{display:flex;flex-direction:column;align-items:center;background-color:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;padding:12px;cursor:pointer;width:30%;max-width:200px;min-width:120px;margin:8px;box-sizing:border-box;transition:transform .25s ease,box-shadow .25s ease,filter .25s ease}.category-card:hover{transform:translateY(-6px) scale(1.05);box-shadow:0 12px 20px #00000040;filter:brightness(1.03)}.category-image{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:12px;margin-bottom:8px;transition:transform .25s ease}.category-card:hover .category-image{transform:scale(1.03)}.category-title{color:#000;font-weight:700;text-align:center;font-size:clamp(1.4rem,2.5vw,1.8rem);font-family:Playfair Display,serif;transition:color .25s ease}.category-card:hover .category-title{color:#1ba0a7}.categories-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:16px;justify-items:center;padding:16px}@media (min-width: 480px){.categories-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px){.categories-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.categories-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1280px){.categories-grid{grid-template-columns:repeat(5,1fr)}}.categories-container{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;padding:16px}@media (max-width: 480px){.category-card{width:80%;max-width:none}}.header{position:fixed;top:0;left:0;width:100%;height:var(--header-height);background-color:#1ba0a7;display:flex;justify-content:center;align-items:center;box-shadow:0 2px 5px #0000001a;z-index:1000}.header-logo{height:100px;object-fit:contain}.page-header .back-btn{position:absolute;left:12px;top:50%;transform:translateY(-50%);background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center}.page-header .back-btn svg{width:auto;height:auto;color:#179399}.page-header{width:100%;display:flex;align-items:center;justify-content:center;background-color:#fff;box-sizing:border-box;padding:0 12px;z-index:900;position:relative}.page-header.plain{height:100px;border-bottom:1px solid rgba(0,0,0,.08)}.item-card{display:flex;flex-direction:column;background-color:#fff;border-radius:16px;padding:16px;margin:8px auto;width:100%;max-width:800px;box-sizing:border-box;box-shadow:0 4px 6px #0000001a;transition:transform .25s ease,box-shadow .25s ease}.item-title{font-weight:700;font-size:1.6rem;font-family:Playfair Display,serif;color:#000}.item-description{font-size:1.1rem;color:#404040;margin:8px 0 12px;font-family:Inter,sans-serif}.item-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-left:7px}.item-price{font-weight:700;font-size:1.3rem;font-family:Arial,sans-serif;color:#179399}.qty-display{width:30px;height:30px;line-height:30px;text-align:center;font-family:Inter,sans-serif;font-weight:700;font-size:.9rem;color:#343434;border:1px solid #ccc;border-radius:8px;background-color:#fff;flex-shrink:0}.item-option-group{margin-top:12px;margin-bottom:12px}.option-name{font-weight:500;margin-bottom:4px;font-family:Inter,sans-serif}.option-choices-vertical{display:flex;flex-direction:column;gap:6px}.option-radio-label{display:flex;align-items:center;gap:8px;font-family:Inter,sans-serif;font-size:1rem;cursor:pointer}.option-radio-label input[type=radio]{accent-color:#1BA0A7;width:18px;height:18px}.option-validation{color:red;font-size:.875rem;margin-top:2px}.option-variations{margin:0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:8px}.variation-item{display:flex;align-items:center;justify-content:space-between;background:#f8f8f8;border-radius:8px;padding:8px}.variation-text{flex:1;font-family:Inter,sans-serif;font-size:1rem;color:#333;margin:0 8px}.variation-qty-controls{display:flex;align-items:center;gap:6px}.variation-delete{background-color:transparent;border:none;color:#e63946;cursor:pointer;padding:4px;border-radius:6px;transition:background-color .2s ease}.variation-delete:hover{background-color:#e639461a}.cart-summary-toggle{background:transparent;border:none;color:#179399;font-weight:500;font-size:15px;cursor:pointer;display:flex;align-items:center;gap:4px;margin-top:8px}.cart-summary-toggle:hover{color:#0f7a80}.cart-summary-toggle:focus{outline:none;background-color:transparent}.option-variations-container{overflow:hidden;max-height:0;transition:max-height .35s ease,padding .35s ease;padding:0}.option-variations-container.expanded{max-height:2000px;padding:8px 0}@media (min-width: 768px){.item-card{min-height:180px}.item-bottom{justify-content:space-between;align-items:center}.item-description{margin:12px 0 16px}.variation-qty-controls{gap:8px}.qty-display,.square-btn{width:30px;height:30px;line-height:30px}.qty-display{font-size:1rem}}.items-page{width:100%;display:flex;flex-direction:column;gap:16px;padding:16px 16px 50px;box-sizing:border-box;align-items:center}.items-page>*{width:100%;max-width:600px}.basket-footer-fixed{position:fixed;bottom:60px;left:0;width:100%;display:flex;justify-content:center;align-items:center;background-color:#179399;padding:50px 0;z-index:1000}.go-basket-btn{background-color:#179399;border:2px solid white;color:#000;font-weight:700;font-size:16px;padding:8px 16px;border-radius:6px;cursor:pointer;white-space:nowrap;transition:transform .2s ease,background .2s ease}.go-basket-btn:hover{transform:scale(1.05);background-color:#f0f0f0}.floating-basket-btn{position:fixed;bottom:100px;right:16px;background-color:#1ba0a7;color:#fff;border:none;border-radius:999px;padding:12px 20px;display:flex;align-items:center;gap:8px;font-weight:600;font-size:1rem;cursor:pointer;box-shadow:0 4px 10px #00000040;z-index:50;transition:background-color .2s ease,transform .1s ease}.floating-basket-btn:hover{background-color:#179399;transform:scale(1.05)}.basket-text{font-size:1rem}.basket-count{font-size:.95rem;font-weight:700}.pulse-once{animation:basket-pulse .6s ease 1}.pulse-twice{animation:basket-pulse .6s ease 2}@keyframes basket-pulse{0%{transform:scale(1);box-shadow:0 0 #1ba0a799}50%{transform:scale(1.1);box-shadow:0 0 0 12px #1ba0a700}to{transform:scale(1);box-shadow:0 0 #1ba0a700}}.loading-container{padding:40px 16px;display:flex;justify-content:center;align-items:center;flex:1;background-color:#f9fafb}.loading-card{background-color:#fff;border-radius:16px;padding:32px 24px;max-width:660px;width:100%;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;box-shadow:0 2px 8px #0000000d}.loading-icon{width:64px;height:64px;stroke:#1ba0a7;animation:spin 1s linear infinite}.loading-title{font-size:1.5rem;font-weight:700;color:#000;font-family:Inter,sans-serif}.loading-text{font-size:1rem;color:#555;line-height:1.5}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.bottom-menu{position:fixed;bottom:0;left:0;width:100%;background-color:#1ba0a7;display:flex;justify-content:space-around;align-items:center;padding:10px 0;z-index:1000}.nav-btn{background:none;border:none;color:#fff;display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:transform .2s ease,color .2s ease}.nav-btn:hover{transform:scale(1.1);color:#fff8dc}.nav-btn span{margin-top:4px;font-size:12px}.item-qty-controls{display:flex;align-items:center;gap:8px}.square-btn{background-color:#1ba0a7;border:none;border-radius:12px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,transform .1s ease;color:#fff;padding:0!important}.square-btn svg{width:70%;height:70%;stroke:#fff!important;fill:#fff!important}.add-btn{background-color:#1ba0a7;border:none;border-radius:12px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,transform .1s ease;color:#fff}.square-btn:hover,.add-btn:hover{background-color:#179399;transform:scale(1.05)}.qty-input{width:30px;height:30px;line-height:30px;text-align:center;font-family:Inter,sans-serif;font-weight:700;font-size:.9rem;color:#343434;border:1px solid #ccc;border-radius:8px;background-color:#fff;flex-shrink:0}.basket-items{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;gap:12px;padding-bottom:120px;margin:0 auto;width:100%;max-width:660px;box-sizing:border-box}.basket-footer{position:fixed;bottom:70px;left:50%;transform:translate(-50%);max-width:800px;width:100%;background-color:#fff;padding:12px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 -4px 12px #00000014;border-top-left-radius:16px;border-top-right-radius:16px;z-index:1000;box-sizing:border-box;transition:box-shadow .2s ease}.basket-items h2{align-self:flex-start}.basket-footer:hover{box-shadow:0 -6px 16px #0000001f}.basket-footer .total{font-weight:700;font-size:1.15rem;color:#000;font-family:Inter,sans-serif}.basket-footer .pay-btn{background-color:#1ba0a7;color:#fff;border:none;border-radius:20px;padding:10px 24px;font-weight:700;font-size:1rem;cursor:pointer;box-shadow:0 4px 6px #1ba0a74d;transition:background .2s ease,transform .1s ease,box-shadow .2s ease;min-width:100px}.basket-footer .pay-btn:hover{background-color:#179399;transform:translateY(-2px);box-shadow:0 6px 10px #1ba0a759}.basket-items{display:flex;gap:12px;padding-bottom:8px}.basket-item{display:flex;justify-content:space-between;align-items:center;background-color:#fff;color:#333;padding:16px;border-radius:12px;min-height:60px;box-shadow:0 2px 6px #0000001a;transition:transform .25s ease,box-shadow .25s ease;width:100%;margin:0 auto}.basket-item:hover{transform:translateY(-2px);box-shadow:0 4px 10px #00000026}.item-info{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.item-name{font-weight:600;font-size:1rem;font-family:Inter,sans-serif;color:#000}.item-options{font-size:.9rem;color:#555;font-family:Inter,sans-serif}.item-price{font-weight:700;font-size:1rem;margin-top:4px;color:#1ba0a7}.quantity-controls{display:flex;align-items:center;gap:6px}.qty-btn{background-color:#1ba0a7;color:#fff;border:none;border-radius:8px;width:32px;height:32px;font-size:18px;cursor:pointer;font-weight:700;transition:background .2s ease,transform .1s ease}.qty-btn:hover{background-color:#179399;transform:scale(1.05)}.qty-input{width:32px;height:32px;text-align:center;border:1px solid #ccc;border-radius:8px;background-color:#fff;color:#333;font-weight:700;font-size:.9rem;font-family:Inter,sans-serif}.pay-btn{background-color:#1ba0a7;color:#fff;padding:14px 32px;border:none;border-radius:24px;cursor:pointer;font-weight:700;font-size:1rem;text-align:center;transition:background .2s ease,transform .1s ease}.pay-btn:hover{background-color:#179399;transform:scale(1.05)}.total{font-weight:700;font-size:1.1rem;color:#1ba0a7}@media (max-width: 768px){.basket-items{flex-direction:column;gap:12px;padding:16px 16px 120px;box-sizing:border-box;overflow-x:hidden;align-items:center}.basket-item{width:100%;max-width:360px;margin:0}}@media (max-width: 768px){.basket-footer{flex-direction:row;justify-content:space-between;align-items:center;padding:10px 16px;width:100%;box-sizing:border-box}.basket-footer .total{font-size:1rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.basket-footer .pay-btn{padding:6px 14px;font-size:.9rem;border-radius:12px;min-width:100px}}@media (min-width: 768px){.qty-btn,.qty-input{width:40px;height:40px;font-size:1rem}.pay-btn{font-size:1.1rem;padding:14px 36px}}.basket-header{display:flex;flex-direction:column;align-items:center;gap:16px;padding:16px;background-color:#fff}.basket-header-content{width:100%;max-width:500px;display:flex;flex-direction:column;gap:16px;align-items:center}.kitchen-comment-container{display:flex;align-items:center;gap:12px;padding:12px;border:none;width:100%;max-width:660px;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff;box-shadow:none}.kitchen-comment-container:focus,.kitchen-comment-container:active,.kitchen-comment-container:hover{background-color:#fff;outline:none;box-shadow:none}.kitchen-comment-container::-moz-focus-inner{border:0}.kitchen-comment-bubble{color:#1ba0a7;display:flex;align-items:center;justify-content:center}.kitchen-comment-texts{flex:1}.kitchen-comment-title{font-weight:600;color:#000}.basket-comment-desc{color:#888;margin-top:2px}.kitchen-comment-arrow{color:#1ba0a7}.kitchen-comment-btn{background:none;border:none;padding:0;cursor:pointer;color:#1ba0a7;display:flex;align-items:center;justify-content:center}.comment-divider{width:100%;max-width:700px;height:1px;background-color:#ddd;margin:8px 0}.basket-header h2{align-self:flex-start;font-size:1.25rem}@media (max-width: 768px){.basket-header{padding:12px;align-items:flex-start}.basket-header-content{align-items:flex-start}.comment-divider{width:100%}.kitchen-comment-container{gap:8px;width:100%}.kitchen-comment-arrow{margin-left:8px}}.kitchen-comment-container{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0006;display:flex;justify-content:center;align-items:center;z-index:2000;padding:16px;box-sizing:border-box;overflow:hidden}.modal-card{background-color:#fff;border-radius:16px;padding:24px;max-width:400px;width:100%;display:flex;flex-direction:column;gap:16px;text-align:center;box-shadow:0 8px 24px #0003;animation:modalFadeIn .25s ease-out;max-height:90vh;overflow-y:auto}.kitchen-comment-textarea{width:100%;min-height:100px;border-radius:12px;border:2px solid #1ba0a7;padding:8px 12px;resize:vertical;font-size:1rem;outline:none;font-family:inherit;box-sizing:border-box}.modal-actions{display:flex;justify-content:space-between;gap:12px}.cancel-btn,.confirm-btn{flex:1;padding:12px 0;border-radius:12px;font-weight:600;cursor:pointer;border:none;transition:background .2s ease,transform .1s ease;max-width:48%}.cancel-btn{background-color:#ccc;color:#333}.cancel-btn:hover{background-color:#b3b3b3;transform:scale(1.05)}.confirm-btn{background-color:#1ba0a7;color:#fff}.confirm-btn:hover{background-color:#179399;transform:scale(1.05)}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.modal-actions{flex-direction:row;justify-content:space-between}}.empty-cart-container{padding:40px 16px;display:flex;justify-content:center;align-items:center;flex:1}.empty-cart-card{background-color:#fff;border-radius:16px;padding:32px 24px;max-width:360px;width:100%;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.empty-cart-icon{width:64px;height:64px;stroke:#1ba0a7}.empty-cart-title{font-size:1.5rem;font-weight:700;color:#000;font-family:Inter,sans-serif}.empty-cart-text{font-size:1rem;color:#555;line-height:1.5}.empty-cart-btn{margin-top:12px;padding:12px 24px;background-color:#1ba0a7;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:background .2s ease,transform .1s ease}.empty-cart-btn:hover{background-color:#179399;transform:scale(1.05)}.basket-content{display:grid;grid-template-columns:1fr;gap:16px;padding-bottom:120px;max-width:800px;margin:0 auto}.basket-page{flex:1;display:flex;flex-direction:column;padding:16px;width:100%;box-sizing:border-box;background-color:#fff;font-family:Inter,sans-serif;padding-bottom:var(--bottom-menu-height)}.info-container{padding:40px 16px;display:flex;justify-content:center;align-items:center;flex:1;background-color:#fff}.info-card{background-color:#fff;border-radius:16px;padding:32px 24px;max-width:480px;width:100%;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:left;box-shadow:0 2px 8px #0000000d;font-family:Inter,sans-serif}.info-icon{width:64px;height:64px;stroke:#1ba0a7;margin-bottom:8px}.info-title{font-size:1.5rem;font-weight:700;color:#000;text-align:center}.info-subtitle{font-size:1.2rem;font-weight:700;color:#333;margin-top:12px;margin-bottom:6px}.info-steps{margin:0;padding-left:20px;color:#444;line-height:1.6;font-size:1rem}.info-text{font-size:1rem;color:#555;line-height:1.5;text-align:center}.info-text a{color:#1ba0a7;text-decoration:none;margin:0}.info-text a:hover{text-decoration:underline}.cancel-container{padding:40px 16px;display:flex;justify-content:center;align-items:center;flex:1;background-color:#f9fafb}.cancel-card{background-color:#fff;border-radius:16px;padding:32px 24px;max-width:360px;width:100%;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;box-shadow:0 2px 8px #0000000d}.cancel-icon{width:64px;height:64px;stroke:#ef4444}.cancel-title{font-size:1.5rem;font-weight:700;color:#000;font-family:Inter,sans-serif}.cancel-text{font-size:1rem;color:#555;line-height:1.5}.cancel-btn{margin-top:12px;padding:12px 24px;background-color:#1ba0a7;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:background .2s ease,transform .1s ease}.cancel-btn:hover{background-color:#1ba0a7;transform:scale(1.05)}.success-container{padding:40px 16px;display:flex;justify-content:center;align-items:center;flex:1;background-color:#f9fafb}.success-card{background-color:#fff;border-radius:16px;padding:32px 24px;max-width:360px;width:100%;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;box-shadow:0 2px 8px #0000000d}.success-icon{width:64px;height:64px;stroke:#1ba0a7}.success-title{font-size:1.5rem;font-weight:700;color:#000;font-family:Inter,sans-serif}.success-text{font-size:1rem;color:#555;line-height:1.5}.success-btn{margin-top:12px;padding:12px 24px;background-color:#1ba0a7;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:background .2s ease,transform .1s ease}.success-btn:hover{background-color:#1ba0a7;transform:scale(1.05)}:root{--bottom-menu-height: 50px;--background-color: #ffffff;--text-color: #000000;--font-family: "Playfair Display", serif;--button-color: #1BA0A7;--button-radius: 8px}html,body,#root{margin:0;padding:0;min-height:100%;font-family:var(--font-family);background-color:var(--background-color);color:var(--text-color)}.App{display:flex;flex-direction:column;min-height:100vh;width:100%}.main-content{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;padding-top:var(--header-height);padding-bottom:var(--bottom-menu-height);box-sizing:border-box;width:100%}button{background-color:var(--button-color);color:#fff;border:none;border-radius:var(--button-radius);cursor:pointer;font-family:var(--font-family);transition:background-color .2s ease}button:hover{background-color:#179399}h1,h2,h3,h4,h5,h6{font-family:var(--font-family);color:var(--text-color)}a{color:var(--text-color);text-decoration:none}
