:root{--bg-primary:#150e0b;--bg-secondary:#221612;--bg-tertiary:#2e1e19;--text-primary:#f6f3f0;--text-secondary:#c2b3aa;--text-muted:#8c7a70;--color-gold:#d4a373;--color-gold-hover:#e9c46a;--color-accent:#e76f51;--border-color:#38251e;--border-color-light:#52372c;--shadow-sm:0 2px 4px #0003;--shadow-md:0 4px 12px #0000004d;--shadow-lg:0 10px 25px #00000073;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-full:9999px;--font-sans:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-serif:"Playfair Display", Georgia, serif;--transition-fast:.15s ease;--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s ease}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);scroll-behavior:smooth;min-height:100%;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-gold)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.header{z-index:100;-webkit-backdrop-filter:blur(12px);border-b:1px solid var(--border-color);box-shadow:var(--shadow-sm);transition:var(--transition-normal);background-color:#150e0bd9;position:sticky;top:0}.header-container{justify-content:space-between;align-items:center;height:70px;padding:0 20px;display:flex}.logo-link{align-items:center;gap:10px;display:flex}.logo-img{object-fit:contain;width:auto;height:48px}.nav-links{align-items:center;gap:30px;display:flex}.nav-link{text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);transition:var(--transition-fast);padding:6px 0;font-size:14px;font-weight:600;position:relative}.nav-link:hover,.nav-link.active{color:var(--color-gold)}.nav-link:after{content:"";background-color:var(--color-gold);width:0;height:2px;transition:var(--transition-fast);position:absolute;bottom:0;left:0}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-actions{align-items:center;gap:15px;display:flex}.announcement-banner{background:linear-gradient(90deg, var(--bg-tertiary), #422920, var(--bg-tertiary));border-bottom:1px solid var(--border-color);text-align:center;letter-spacing:.5px;color:var(--color-gold-hover);z-index:101;justify-content:center;align-items:center;gap:10px;padding:8px 20px;font-size:13px;font-weight:600;animation:3s infinite alternate pulse-border;display:flex;position:relative}.hero{background-color:#0b0705;justify-content:flex-start;align-items:center;min-height:45vh;padding:60px 0;display:flex;position:relative;overflow:hidden}.hero-bg{object-fit:cover;filter:brightness(.35);width:100%;height:100%;transition:transform 10s ease-out;position:absolute;inset:0;transform:scale(1.02)}.hero:hover .hero-bg{transform:scale(1.05)}.hero-overlay{pointer-events:none;background:linear-gradient(90deg,#150e0bf2 0%,#150e0bb3 50%,#150e0b33 100%);position:absolute;inset:0}.hero-content{z-index:2;max-width:650px;position:relative}.hero-badge{color:var(--color-gold-hover);text-transform:uppercase;letter-spacing:1.5px;border-radius:var(--radius-full);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#d4a37326;border:1px solid #d4a3734d;margin-bottom:20px;padding:6px 14px;font-size:11px;font-weight:700;display:inline-block}.hero-title{font-family:var(--font-sans);color:var(--text-primary);margin-bottom:15px;font-size:42px;font-weight:800;line-height:1.15}.hero-title span{color:var(--color-gold);background:linear-gradient(120deg, var(--color-gold) 0%, var(--color-gold-hover) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.hero-subtitle{color:var(--text-secondary);margin-bottom:25px;font-size:16px;line-height:1.6}.hero-features{flex-wrap:wrap;gap:15px;margin-top:20px;display:flex}.hero-feature{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#ffffff0d;border:1px solid #ffffff14;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:500;display:flex}.category-nav-wrapper{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);z-index:90;position:sticky;top:70px}.category-nav{scrollbar-width:none;gap:10px;padding:15px 0;display:flex;overflow-x:auto}.category-nav::-webkit-scrollbar{display:none}.category-tab{border:1px solid var(--border-color-light);color:var(--text-secondary);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;transition:var(--transition-fast);background:0 0;padding:8px 20px;font-size:14px;font-weight:600}.category-tab:hover{border-color:var(--color-gold);color:var(--text-primary)}.category-tab.active{background-color:var(--color-gold);border-color:var(--color-gold);color:var(--bg-primary);box-shadow:0 2px 10px #d4a3734d}.popular-section{background-color:var(--bg-primary);padding:40px 0 20px}.section-title{color:var(--text-primary);align-items:center;gap:8px;margin-bottom:20px;font-size:20px;font-weight:700;display:flex}.popular-scroll{scrollbar-width:thin;gap:15px;padding-bottom:15px;display:flex;overflow-x:auto}.popular-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;width:180px;transition:var(--transition-normal);flex-shrink:0;padding:10px}.popular-card:hover{border-color:var(--color-gold);box-shadow:var(--shadow-md);transform:translateY(-4px)}.popular-img-wrapper{aspect-ratio:1;border-radius:var(--radius-sm);background-color:var(--bg-tertiary);margin-bottom:8px;position:relative;overflow:hidden}.popular-img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-normal)}.popular-card:hover .popular-img{transform:scale(1.05)}.popular-name{white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:13px;font-weight:700;overflow:hidden}.popular-price{color:var(--color-gold);font-size:13px;font-weight:700}.menu-section{padding:40px 0 80px}.category-block{margin-bottom:50px;scroll-margin-top:150px}.category-title{color:var(--color-gold);border-bottom:1px solid var(--border-color);margin-bottom:20px;padding-bottom:8px;font-size:24px;font-weight:700}.menu-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.product-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:var(--transition-normal);flex-direction:column;display:flex;overflow:hidden}.product-card:hover{border-color:var(--color-gold);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.product-img-wrapper{aspect-ratio:16/10;background-color:var(--bg-tertiary);width:100%;position:relative;overflow:hidden}.product-img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-normal)}.product-card:hover .product-img{transform:scale(1.04)}.placeholder-card-img{width:100%;height:100%;color:var(--text-muted);background:linear-gradient(135deg, var(--bg-secondary), var(--bg-tertiary));flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.placeholder-card-img svg{opacity:.6;width:32px;height:32px}.product-info{flex-direction:column;flex-grow:1;padding:16px;display:flex}.product-header{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;display:flex}.product-name{font-size:16px;font-weight:700;line-height:1.3}.product-price{color:var(--color-gold);white-space:nowrap;font-size:16px;font-weight:700}.product-desc{color:var(--text-secondary);flex-grow:1;margin-bottom:16px;font-size:13px;line-height:1.4}.product-actions{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.product-tag{color:var(--text-muted);border-radius:var(--radius-sm);background-color:#ffffff0d;padding:4px 8px;font-size:11px;font-weight:500}.btn{border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);border:none;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;display:inline-flex}.btn-primary{background-color:var(--color-gold);color:var(--bg-primary)}.btn-primary:hover{background-color:var(--color-gold-hover);box-shadow:0 0 10px #d4a37359}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color-light)}.btn-secondary:hover{border-color:var(--color-gold);background-color:#ffffff0d}.btn-outline{border:1px solid var(--color-gold);color:var(--color-gold);background-color:#0000}.btn-outline:hover{background-color:#d4a3731a}.btn-sm{padding:6px 12px;font-size:12px}.btn-circle{border-radius:var(--radius-full);width:36px;height:36px;padding:0}.cart-drawer{background-color:var(--bg-secondary);border-left:1px solid var(--border-color);width:380px;max-width:100vw;box-shadow:var(--shadow-lg);z-index:200;transition:transform var(--transition-normal);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.cart-drawer.open{transform:translate(0)}.cart-overlay{z-index:199;opacity:0;pointer-events:none;transition:opacity var(--transition-normal);background-color:#0009;position:fixed;inset:0}.cart-overlay.open{opacity:1;pointer-events:auto}.cart-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px;display:flex}.cart-title{align-items:center;gap:8px;font-size:18px;font-weight:700;display:flex}.cart-close-btn{color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;padding:5px;font-size:24px}.cart-close-btn:hover{color:var(--text-primary)}.cart-items{flex-grow:1;padding:20px;overflow-y:auto}.cart-empty-message{text-align:center;color:var(--text-muted);padding:40px 0}.cart-item{border-bottom:1px solid var(--border-color);gap:12px;margin-bottom:20px;padding-bottom:15px;display:flex}.cart-item-img{border-radius:var(--radius-sm);object-fit:cover;background-color:var(--bg-tertiary);width:60px;height:60px}.cart-item-details{flex-grow:1}.cart-item-name{margin-bottom:4px;font-size:14px;font-weight:700}.cart-item-price{color:var(--color-gold);font-size:14px;font-weight:600}.cart-item-controls{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.quantity-control{background-color:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-color);align-items:center;padding:2px;display:flex}.quantity-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;display:flex}.quantity-val{padding:0 10px;font-size:13px;font-weight:600}.cart-item-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:12px;text-decoration:underline}.cart-item-remove:hover{color:var(--color-accent)}.cart-footer{border-top:1px solid var(--border-color);background-color:var(--bg-tertiary);padding:20px}.cart-summary-row{justify-content:space-between;margin-bottom:8px;font-size:14px;display:flex}.cart-summary-total{border-top:1px dotted var(--border-color-light);justify-content:space-between;margin:15px 0;padding-top:15px;font-size:18px;font-weight:700;display:flex}.cart-instruction{color:var(--text-secondary);text-align:center;border-radius:var(--radius-sm);background-color:#ffffff08;border:1px solid #ffffff0d;margin-top:12px;padding:10px;font-size:12px;line-height:1.4}.footer{border-top:1px solid var(--border-color);background-color:#0b0705;margin-top:auto;padding:60px 0 40px}.footer-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;margin-bottom:40px;display:grid}.footer-info-brand{margin-bottom:20px}.footer-title{color:var(--color-gold);margin-bottom:15px;font-size:20px;font-weight:800}.footer-desc{color:var(--text-secondary);font-size:14px;line-height:1.6}.footer-column-title{text-transform:uppercase;letter-spacing:1px;color:var(--text-primary);margin-bottom:20px;font-size:14px;font-weight:700}.footer-links{list-style:none}.footer-links li{margin-bottom:12px}.footer-links a{color:var(--text-secondary);transition:var(--transition-fast);font-size:14px}.footer-links a:hover{color:var(--color-gold);padding-left:4px}.footer-contact-item{color:var(--text-secondary);align-items:flex-start;gap:12px;margin-bottom:15px;font-size:14px;line-height:1.4;display:flex}.footer-contact-item svg{width:18px;height:18px;color:var(--color-gold);shrink:0;margin-top:2px}.footer-hours-row{color:var(--text-secondary);border-bottom:1px solid #ffffff05;justify-content:space-between;padding:4px 0;font-size:13px;display:flex}.footer-hours-row.today{color:var(--color-gold-hover);font-weight:700}.footer-bottom{border-top:1px solid var(--border-color);flex-direction:column;justify-content:space-between;align-items:center;gap:15px;padding-top:30px;display:flex}@media (min-width:768px){.footer-bottom{flex-direction:row}}.footer-copy{color:var(--text-muted);font-size:12px}.active-indicator{border-radius:var(--radius-full);align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.active-indicator.open{color:#4ade80;background-color:#4ade801a}.active-indicator.closed{color:#f87171;background-color:#f871711a}.cart-floating-badge{background-color:var(--color-gold);color:var(--bg-primary);border-radius:var(--radius-full);justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-weight:700;display:flex;position:absolute;top:-6px;right:-6px}.qr-menu-layout{max-width:600px;margin:0 auto;padding:15px}.qr-menu-header{text-align:center;background-color:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-color);margin-bottom:20px;padding:25px 15px}.qr-menu-logo{border-radius:var(--radius-md);width:auto;height:80px;box-shadow:var(--shadow-sm);margin:0 auto 12px;display:block}.qr-menu-title{margin-bottom:6px;font-size:22px;font-weight:800}.qr-menu-table{background-color:var(--color-gold);color:var(--bg-primary);border-radius:var(--radius-sm);text-transform:uppercase;margin-top:5px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.qr-category-bar{background-color:var(--bg-primary);z-index:10;border-bottom:1px solid var(--border-color);padding:10px 0;position:sticky;top:0}.qr-items-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.qr-item-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-normal);flex-direction:column;height:100%;padding:8px;display:flex}.qr-item-card:hover{border-color:var(--color-gold);transform:translateY(-2px)}.qr-item-img{aspect-ratio:1.1;border-radius:var(--radius-sm);object-fit:cover;background-color:var(--bg-tertiary);width:100%;margin-bottom:4px}.qr-item-info{flex-direction:column;flex-grow:1;justify-content:space-between;margin-top:4px;display:flex}.qr-item-name{margin-bottom:2px;font-size:13px;font-weight:700;line-height:1.25}.qr-item-desc{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:8px;font-size:11px;line-height:1.35;display:-webkit-box;overflow:hidden}.qr-item-footer{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.qr-item-price{color:var(--color-gold);font-size:13px;font-weight:700}.qr-item-detail-btn{color:var(--text-muted);align-items:center;gap:2px;font-size:10px;display:inline-flex}.qr-addons-grid{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.qr-addon-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);cursor:pointer;transition:var(--transition-fast);border-radius:6px;justify-content:space-between;align-items:center;padding:5px 8px;display:flex}.qr-addon-card:hover{border-color:var(--color-gold);background-color:var(--bg-tertiary)}.qr-addon-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500;overflow:hidden}.qr-addon-price{color:var(--color-gold);flex-shrink:0;margin-left:6px;font-size:11px;font-weight:700}.mobile-only-admin{display:none!important}@media (max-width:768px){.mobile-only-admin{background-color:var(--bg-tertiary);border:1px solid var(--border-color-light);color:var(--text-secondary);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.5px;transition:var(--transition-fast);justify-content:center;align-items:center;padding:6px 12px;font-weight:600;font-size:11px!important;display:inline-flex!important}.mobile-only-admin:hover{color:var(--text-primary);border-color:var(--color-gold)}}.admin-layout{background-color:var(--bg-primary);flex-direction:column;min-height:100vh;display:flex}.admin-header{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:15px 30px;display:flex}.admin-user{align-items:center;gap:15px;font-size:14px;display:flex}.admin-container{flex-grow:1;display:flex}.admin-sidebar{background-color:var(--bg-secondary);border-right:1px solid var(--border-color);flex-direction:column;gap:8px;width:240px;padding:30px 15px;display:flex}.admin-nav-btn{color:var(--text-secondary);border-radius:var(--radius-md);text-align:left;cursor:pointer;transition:var(--transition-fast);background-color:#0000;border:none;align-items:center;gap:10px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.admin-nav-btn:hover{color:var(--text-primary);background-color:#ffffff08}.admin-nav-btn.active{background-color:var(--color-gold);color:var(--bg-primary)}.admin-content{flex-grow:1;max-width:1000px;padding:40px;overflow-y:auto}.login-screen{background:radial-gradient(circle at center, var(--bg-secondary) 0%, var(--bg-primary) 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow-lg);padding:35px}.login-logo{width:auto;height:60px;margin:0 auto 20px}.login-title{text-align:center;margin-bottom:25px;font-size:22px;font-weight:800}.form-group{margin-bottom:20px}.form-label{color:var(--text-secondary);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.form-input{background-color:var(--bg-tertiary);border:1px solid var(--border-color-light);width:100%;color:var(--text-primary);border-radius:var(--radius-md);transition:var(--transition-fast);padding:12px 16px;font-family:inherit;font-size:14px}.form-input:focus{border-color:var(--color-gold);outline:none;box-shadow:0 0 0 2px #d4a37333}.form-select{background-color:var(--bg-tertiary);border:1px solid var(--border-color-light);width:100%;color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;padding:12px 16px;font-family:inherit;font-size:14px}.form-select:focus{border-color:var(--color-gold);outline:none}.form-textarea{background-color:var(--bg-tertiary);border:1px solid var(--border-color-light);width:100%;color:var(--text-primary);border-radius:var(--radius-md);resize:vertical;min-height:100px;padding:12px 16px;font-family:inherit;font-size:14px}.form-textarea:focus{border-color:var(--color-gold);outline:none}.form-checkbox-label{color:var(--text-primary);cursor:pointer;align-items:center;gap:10px;font-size:14px;display:inline-flex}.form-checkbox{width:18px;height:18px;accent-color:var(--color-gold);cursor:pointer}.modal-overlay{z-index:300;background-color:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-secondary);border:1px solid var(--border-color-light);border-radius:var(--radius-lg);width:100%;max-width:550px;max-height:90vh;box-shadow:var(--shadow-lg);animation:.25s cubic-bezier(.16,1,.3,1) modal-enter;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 25px;display:flex}.modal-title{font-size:18px;font-weight:700}.modal-body{padding:25px}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:12px;padding:20px 25px;display:flex}.admin-table{border-collapse:collapse;background-color:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);width:100%;margin-top:20px;overflow:hidden}.admin-table th{background-color:var(--bg-tertiary);color:var(--text-primary);text-align:left;text-transform:uppercase;letter-spacing:.5px;padding:14px 16px;font-size:13px;font-weight:600}.admin-table td{border-bottom:1px solid var(--border-color);vertical-align:middle;padding:14px 16px;font-size:14px}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background-color:#ffffff03}.badge{border-radius:var(--radius-sm);text-transform:uppercase;align-items:center;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge-success{color:#4ade80;background-color:#4ade8026}.badge-warning{color:#f87171;background-color:#f8717126}@keyframes pulse-border{0%{border-color:var(--border-color)}to{border-color:var(--color-gold)}}@keyframes modal-enter{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.toast{background-color:var(--bg-secondary);border:1px solid var(--color-gold);color:var(--text-primary);border-radius:var(--radius-md);z-index:500;box-shadow:var(--shadow-lg);pointer-events:none;align-items:center;gap:10px;padding:12px 24px;font-size:14px;font-weight:600;animation:3s forwards toast-enter-exit;display:flex;position:fixed;bottom:25px;left:50%;transform:translate(-50%)}@keyframes toast-enter-exit{0%{opacity:0;transform:translate(-50%,20px)}10%,90%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-20px)}}@media (max-width:768px){.hero-title{font-size:32px}.hero-subtitle{font-size:14px}.nav-links{display:none}.menu-grid{grid-template-columns:repeat(2,1fr);gap:10px}.product-info{padding:10px}.product-name{font-size:13px;font-weight:700;line-height:1.25}.product-price{font-size:13px}.product-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:8px;font-size:11px;display:-webkit-box;overflow:hidden}.product-actions{flex-wrap:wrap;gap:6px}.product-tag{display:none}.admin-sidebar{width:60px;padding:20px 5px}.admin-sidebar span{display:none}.admin-nav-btn{justify-content:center;padding:12px}.admin-content{padding:20px}}
