@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;1,400&display=swap";.cart-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;opacity:0;visibility:hidden;background:#0006;width:100vw;height:100vh;transition:opacity .3s,visibility .3s;position:fixed;top:0;left:0}.cart-overlay.open{opacity:1;visibility:visible}.cart-drawer{background:var(--bg-color);z-index:1001;width:400px;max-width:100vw;height:100vh;box-shadow:-5px 0 25px var(--shadow-color);flex-direction:column;transition:right .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;right:-400px}.cart-drawer.open{right:0}.cart-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.cart-header h2{color:var(--accent-color);margin:0;font-size:1.5rem}.cart-close-btn{cursor:pointer;color:var(--text-primary);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.5rem;transition:background-color .2s;display:flex}.cart-close-btn:hover{background-color:var(--bg-glass)}.cart-content{flex:1;padding:1.5rem;overflow-y:auto}.cart-item{border-bottom:1px solid var(--border-color);gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem;display:flex}.cart-item-img{object-fit:cover;border-radius:8px;width:80px;height:80px}.cart-item-details{flex-direction:column;flex:1;display:flex}.cart-item-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.5rem;font-size:.95rem;font-weight:600;display:-webkit-box;overflow:hidden}.cart-item-price{color:var(--accent-color);margin-top:auto;font-weight:700}.cart-item-remove{color:#ff4d4f;cursor:pointer;text-align:left;background:0 0;border:none;margin-top:.5rem;padding:0;font-size:.85rem;text-decoration:underline}.cart-footer{border-top:1px solid var(--border-color);background:var(--bg-surface);padding:1.5rem}.cart-total{justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:1.25rem;font-weight:700;display:flex}.empty-cart-msg{text-align:center;color:var(--text-secondary);margin-top:2rem}.left-drawer{background:var(--bg-color);z-index:1001;width:80%;max-width:350px;height:100vh;box-shadow:5px 0 25px var(--shadow-color);flex-direction:column;transition:left .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;left:-400px}.left-drawer.open{left:0}.left-drawer .drawer-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.left-drawer .drawer-header h2{color:var(--accent-color);margin:0;font-size:1.5rem}.left-drawer .drawer-content{flex:1;padding:1.5rem;overflow-y:auto}:root{--bg-color:#fcfbf9;--bg-surface:#ffffffb3;--bg-glass:#fff3;--border-color:#0000001a;--text-primary:#2c2926;--text-secondary:#6e6761;--accent-color:#d89f66;--accent-hover:#c4874c;--shadow-color:#0000000d}.dark-theme{--bg-color:#1a1918;--bg-surface:#1e1d1ccc;--bg-glass:#0000004d;--border-color:#ffffff1a;--text-primary:#f0eae1;--text-secondary:#a39c96;--accent-color:#d89f66;--accent-hover:#e8b37d;--shadow-color:#0000004d}*{box-sizing:border-box;margin:0;padding:0}html,body{overflow-x:hidden}body{background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Inter,sans-serif;transition:background-color .4s,color .4s}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;font-family:Playfair Display,serif;font-weight:600}a{color:inherit;text-decoration:none}.glass-panel{background:var(--bg-surface);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);box-shadow:0 8px 32px var(--shadow-color);border-radius:16px}.app-container{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:2rem}.site-header{z-index:100;background:var(--bg-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex}.logo{color:var(--accent-color);font-family:Playfair Display,serif;font-size:1.5rem;font-weight:700}.nav-links{gap:2rem;display:flex}.nav-links a{color:var(--text-primary);font-weight:500;text-decoration:none;transition:color .3s}.nav-links a:hover,.nav-links a.active{color:var(--accent-color)}.header-actions{align-items:center;gap:1rem;display:flex}.mobile-burger{display:none}@media (width<=768px){.site-header{width:100%;position:fixed;top:0;left:0}.desktop-only{display:none!important}.mobile-burger{display:block}.header-inner{padding:1rem}.logo{position:absolute;left:50%;transform:translate(-50%)}.logo-text{display:none}.cart-btn{margin-left:auto}.app-container{padding-top:70px;padding-bottom:90px}.site-footer{text-align:center}.footer-section{flex-direction:column;align-items:center;display:flex}.footer-section>div[style*="display: flex"]{justify-content:center}}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-family:inherit;font-size:.95rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--accent-color);color:#fff}.btn-primary:hover{background-color:var(--accent-hover);box-shadow:0 4px 12px var(--shadow-color);transform:translateY(-2px)}.btn-outline{border:1px solid var(--accent-color);color:var(--accent-color);background-color:#0000}.btn-outline:hover{background-color:var(--accent-color);color:#fff}.btn-icon{color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.5rem;transition:background-color .2s;display:flex}.btn-icon:hover{background-color:var(--bg-glass)}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-primary);margin-bottom:.5rem;font-weight:500;display:block}.form-control{border:1px solid var(--border-color);background:var(--bg-surface);width:100%;color:var(--text-primary);border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-control:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 3px #d89f6633}textarea.form-control{resize:vertical;min-height:120px}.product-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;margin-top:2rem;display:grid}.product-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.product-favorite-btn{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;color:#ff4d4f;z-index:10;background:#fffc;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .2s,background .2s;display:flex;position:absolute;top:10px;right:10px;box-shadow:0 2px 8px #0000001a}.product-favorite-btn:hover{background:#fff;transform:scale(1.1)}.product-card:hover{box-shadow:0 12px 24px var(--shadow-color);transform:translateY(-5px)}.product-image{object-fit:cover;border-bottom:1px solid var(--border-color);width:100%;height:250px}.product-info{flex-direction:column;flex:1;padding:1.5rem;display:flex}.product-title{margin-bottom:.5rem;font-size:1.2rem}.product-price{color:var(--accent-color);margin-top:auto;font-size:1.3rem;font-weight:700}.event-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden}.event-card:hover{box-shadow:0 12px 24px var(--shadow-color);transform:translateY(-5px)}.event-img-container{width:100%;height:200px;position:relative}.event-image{object-fit:cover;width:100%;height:100%}.event-date-badge{background:var(--accent-color);color:#fff;text-align:center;border-radius:8px;padding:.5rem;font-weight:700;line-height:1.2;position:absolute;top:1rem;left:1rem;box-shadow:0 4px 12px #0003}.event-date-badge .day{font-size:1.4rem;display:block}.event-date-badge .month{text-transform:uppercase;font-size:.8rem;display:block}.event-info{flex-direction:column;flex:1;padding:1.5rem;display:flex}.event-title{margin-bottom:.5rem;font-size:1.3rem}.event-desc{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.95rem;line-height:1.5}.hero-section{text-align:center;color:#fff;background:linear-gradient(#0006,#0009),url(https://images.unsplash.com/photo-1584061840003-7adbf89828fa?q=80&w=2070&auto=format&fit=crop) 50%/cover;border-radius:20px;justify-content:center;align-items:center;height:60vh;min-height:400px;margin-bottom:3rem;padding:2rem;display:flex;position:relative;overflow:hidden}.hero-content h1{margin-bottom:1rem;font-size:3.5rem}.hero-content p{max-width:600px;margin:0 auto 2rem;font-size:1.2rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.6s ease-out forwards fadeIn}.dashboard-layout{min-height:100vh;display:flex}.sidebar{background:var(--bg-surface);border-right:1px solid var(--border-color);flex-direction:column;width:250px;padding:2rem;display:flex}.sidebar-nav{flex-direction:column;gap:1rem;margin-top:2rem;display:flex}.sidebar-nav a{border-radius:8px;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:background-color .2s;display:flex}.sidebar-nav a:hover,.sidebar-nav a.active{background-color:var(--bg-glass);color:var(--accent-color)}.dashboard-content{flex:1;padding:2rem}.site-footer{background:var(--bg-surface);border-top:1px solid var(--border-color);margin-top:auto;padding:3rem 2rem}.footer-inner{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;width:100%;max-width:1200px;margin:0 auto;display:grid}.footer-section h3{margin-bottom:1rem;font-size:1.2rem}.footer-section ul{list-style:none}.footer-section li{margin-bottom:.5rem}@keyframes scrollX{0%{transform:translate(0)}to{transform:translate(calc(-50% - 1rem))}}.marquee-container{width:100%;padding:1rem 0;position:relative;overflow:hidden}.marquee-container:before,.marquee-container:after{content:"";z-index:2;pointer-events:none;width:100px;height:100%;position:absolute;top:0}.marquee-container:before{background:linear-gradient(to right, var(--bg-color), transparent);left:0}.marquee-container:after{background:linear-gradient(to left, var(--bg-color), transparent);right:0}.marquee-track{gap:2rem;width:max-content;animation:30s linear infinite scrollX;display:flex}.marquee-track:hover{animation-play-state:paused}.menu-page{max-width:900px;margin:0 auto;padding:2rem}.menu-header{text-align:center;margin-bottom:4rem}.menu-title{color:var(--accent-color);margin-bottom:.5rem;font-family:Playfair Display,serif;font-size:3rem}.menu-subtitle{color:var(--text-secondary);text-transform:uppercase;letter-spacing:2px;margin-bottom:1.5rem;font-size:1.2rem}.menu-badges{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.badge-item{background:var(--bg-surface);border:1px solid var(--border-color);box-shadow:0 2px 8px var(--shadow-color);border-radius:20px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500;display:flex}.menu-container{flex-direction:column;gap:3rem;display:flex}.menu-section h2{color:var(--text-primary);border-bottom:2px solid var(--accent-color);margin-bottom:1.5rem;padding-bottom:.5rem;font-family:Playfair Display,serif;font-size:2rem;display:inline-block}.menu-items{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;display:grid}.menu-item{background:var(--bg-surface);border:1px dashed var(--border-color);border-radius:12px;padding:1.5rem;transition:transform .2s,box-shadow .2s}.menu-item:hover{box-shadow:0 4px 15px var(--shadow-color);transform:translateY(-2px)}.menu-item-header{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.5rem;display:flex}.menu-item-header h3{color:var(--text-primary);margin:0;font-size:1.2rem}.menu-price{color:var(--accent-color);font-size:1.1rem;font-weight:700}.menu-desc{color:var(--text-secondary);margin:0;font-size:.95rem;line-height:1.5}@media (width<=768px){.menu-page{padding:1rem}.menu-title{font-size:2.2rem}.menu-items{grid-template-columns:1fr}}.mobile-bottom-bar,.fab-overlay{display:none}@media (width<=768px){.mobile-bottom-bar{background:var(--bg-surface);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border-color);z-index:1000;width:100%;height:70px;padding-bottom:env(safe-area-inset-bottom);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0}.bottom-bar-item{flex-direction:column;justify-content:center;align-items:center;width:20%;font-size:.65rem;font-weight:500;text-decoration:none;transition:transform .2s;display:flex}.bottom-bar-item:active{transform:scale(.9)}.bottom-bar-item span{margin-top:4px}.bottom-bar-fab-container{justify-content:center;width:20%;height:100%;display:flex;position:relative}.fab-button{background:var(--accent-color);color:#fff;border:4px solid var(--bg-color);width:60px;height:60px;box-shadow:0 4px 15px var(--shadow-color);cursor:pointer;z-index:1002;border-radius:50%;justify-content:center;align-items:center;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),background-color .3s;display:flex;position:absolute;top:-20px}.fab-button.open{background:#ff4d4f;transform:rotate(45deg)}.fab-icon{transition:transform .3s}.fab-menu{pointer-events:none;z-index:1001;width:60px;height:60px;position:absolute;top:-20px;left:50%;transform:translate(-50%)}.fab-menu.open{pointer-events:auto}.fab-menu-item{background:var(--bg-surface);width:44px;height:44px;color:var(--text-primary);border:1px solid var(--border-color);box-shadow:0 4px 10px var(--shadow-color);opacity:0;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;margin:-22px 0 0 -22px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;position:absolute;top:50%;left:50%;transform:scale(.5)}.fab-menu.open .item-1{opacity:1;transition-delay:50ms;transform:translate(-90px,-30px)scale(1)}.fab-menu.open .item-2{opacity:1;transition-delay:.1s;transform:translate(-45px,-90px)scale(1)}.fab-menu.open .item-3{opacity:1;transition-delay:.15s;transform:translate(45px,-90px)scale(1)}.fab-menu.open .item-4{opacity:1;transition-delay:.2s;transform:translate(90px,-30px)scale(1)}.fab-menu-item:active{background:var(--bg-glass)}.fab-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:999;opacity:0;visibility:hidden;background:#00000080;width:100vw;height:100vh;transition:opacity .3s,visibility .3s;display:block;position:fixed;top:0;left:0}.fab-overlay.open{opacity:1;visibility:visible}}
