@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";.app-container{width:100%;min-height:100dvh}.fade-enter-active,.fade-leave-active{transition:opacity .25s}.fade-enter-from,.fade-leave-to{opacity:0}.welcome-page[data-v-fa2ec86d]{min-height:100dvh;padding:24px;padding-top:calc(24px + env(safe-area-inset-top,0px));padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));background-color:var(--bg-app);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.glow-bg[data-v-fa2ec86d]{filter:blur(80px);z-index:0;opacity:.15;border-radius:50%;position:absolute}.glow-1[data-v-fa2ec86d]{background:var(--primary);width:300px;height:300px;top:-10%;right:-10%}.glow-2[data-v-fa2ec86d]{background:var(--secondary);width:350px;height:350px;bottom:-10%;left:-10%}.welcome-container[data-v-fa2ec86d]{z-index:1;flex-direction:column;gap:32px;width:100%;max-width:480px;display:flex;position:relative}.header[data-v-fa2ec86d]{text-align:center}.emoji-logo[data-v-fa2ec86d]{font-size:56px;animation:3s ease-in-out infinite alternate logo-bounce-fa2ec86d;display:inline-block}@keyframes logo-bounce-fa2ec86d{0%{transform:translateY(0)rotate(0)}to{transform:translateY(-10px)rotate(8deg)}}.title[data-v-fa2ec86d]{letter-spacing:-.5px;margin-top:12px;font-size:32px}@media (width<=375px){.title[data-v-fa2ec86d]{font-size:26px}.emoji-logo[data-v-fa2ec86d]{font-size:44px}}.subtitle[data-v-fa2ec86d]{color:var(--text-muted);margin-top:6px;font-size:15px}.login-card[data-v-fa2ec86d]{padding:36px 28px}.card-title[data-v-fa2ec86d]{text-align:center;margin-bottom:24px;font-size:20px;font-weight:700}.welcome-form[data-v-fa2ec86d]{flex-direction:column;gap:24px;display:flex}.input-group[data-v-fa2ec86d]{flex-direction:column;gap:8px;display:flex}.input-group label[data-v-fa2ec86d]{color:var(--text-main);margin-left:4px;font-size:14px;font-weight:600}.input-premium[data-v-fa2ec86d]{border-radius:var(--radius-sm);border:1px solid var(--border-color);width:100%;color:var(--text-main);transition:var(--transition-spring);background:#fff9;outline:none;padding:14px 16px;font-family:inherit;font-size:16px}.input-premium[data-v-fa2ec86d]:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 4px #ff6b6b1a}.input-tip[data-v-fa2ec86d]{color:var(--text-muted);margin-left:4px;font-size:12px}.btn-submit[data-v-fa2ec86d]{border-radius:var(--radius-sm);width:100%;margin-top:8px;padding:15px;font-size:16px}.arrow-icon[data-v-fa2ec86d]{transition:var(--transition-spring);margin-left:4px}.btn-submit:hover .arrow-icon[data-v-fa2ec86d]{transform:translate(4px)}.footer-links[data-v-fa2ec86d]{text-align:center}.admin-link[data-v-fa2ec86d]{color:var(--text-muted);transition:var(--transition);cursor:pointer;background:#00000008;border:none;border-radius:9999px;outline:none;padding:8px 16px;font-family:inherit;font-size:13px;text-decoration:none}.admin-link[data-v-fa2ec86d]:hover{color:var(--primary);background:#ff6b6b0d}.table-info-box[data-v-fa2ec86d]{margin-bottom:8px}.table-badge[data-v-fa2ec86d]{border-radius:var(--radius-sm);transition:var(--transition-spring);background:#ff6b6b0a;border:1px dashed #ff6b6b40;align-items:center;gap:12px;padding:12px 16px;display:flex}.locked-badge[data-v-fa2ec86d]{background:#2ecc710a;border:1px solid #2ecc7140;animation:2.5s infinite alternate glow-green-fa2ec86d}@keyframes glow-green-fa2ec86d{0%{box-shadow:0 0 5px #2ecc710d}to{box-shadow:0 0 15px #2ecc7126}}.editable-badge[data-v-fa2ec86d]{cursor:pointer;border:1px solid var(--border-color);background:#fff9}.editable-badge[data-v-fa2ec86d]:hover{border-color:var(--primary);background:#ff6b6b05;transform:translateY(-1px)}.badge-icon[data-v-fa2ec86d]{font-size:18px}.badge-content[data-v-fa2ec86d]{text-align:left;flex-direction:column;flex:1;display:flex}.badge-label[data-v-fa2ec86d]{color:var(--text-muted);font-size:10px}.badge-value[data-v-fa2ec86d]{color:var(--text-main);font-size:15px;font-weight:800}.locked-badge .badge-value[data-v-fa2ec86d]{color:#2ecc71}.lock-tag[data-v-fa2ec86d]{color:#2ecc71;background:#2ecc711a;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700}.edit-action-link[data-v-fa2ec86d]{color:var(--primary);transition:var(--transition);background:#ff6b6b14;border-radius:4px;padding:4px 8px;font-size:12px;font-weight:700}.editable-badge:hover .edit-action-link[data-v-fa2ec86d]{background:var(--primary);color:#fff}.table-input-group[data-v-fa2ec86d]{animation:.25s ease-out slide-down-fa2ec86d}@keyframes slide-down-fa2ec86d{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.input-with-action[data-v-fa2ec86d]{gap:8px;width:100%;display:flex}.table-input[data-v-fa2ec86d]{flex:1}.btn-confirm-table[data-v-fa2ec86d]{background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-spring);border:none;padding:0 16px;font-size:13px;font-weight:700}.btn-confirm-table[data-v-fa2ec86d]:hover{background:#ff5252;transform:scale(1.02)}.menu-page[data-v-f4fbb35e]{background-color:var(--bg-app);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.dish-img-skeleton[data-v-f4fbb35e]{border-radius:var(--radius-sm);flex-shrink:0;width:90px;height:90px}.menu-header[data-v-f4fbb35e]{border-bottom:1px solid var(--border-color);z-index:50;flex-shrink:0;justify-content:space-between;align-items:center;height:68px;padding:0 16px;display:flex}.user-info[data-v-f4fbb35e]{align-items:center;gap:10px;display:flex}.avatar[data-v-f4fbb35e]{font-size:24px}.customer-tag[data-v-f4fbb35e]{color:var(--primary);font-size:14px;font-weight:700}.sub-tag[data-v-f4fbb35e]{color:var(--text-muted);font-size:10px}.header-actions[data-v-f4fbb35e]{align-items:center;gap:8px;display:flex}.history-btn[data-v-f4fbb35e]{border-radius:var(--radius-sm);color:var(--primary);cursor:pointer;transition:var(--transition);background:#ff6b6b0a;border:1px solid #ff6b6b26;padding:5px 10px;font-size:11px;font-weight:700}.history-btn[data-v-f4fbb35e]:hover{background:#ff6b6b14}.active-order-banner[data-v-f4fbb35e]{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-sm);cursor:pointer;z-index:40;background:#fffc;border:1px solid #ff6b6b1f;flex-shrink:0;justify-content:space-between;align-items:center;margin:12px 12px 0;padding:10px 14px;animation:2.5s infinite alternate pulse-border-f4fbb35e;display:flex;box-shadow:0 4px 15px #ff6b6b0f}@keyframes pulse-border-f4fbb35e{0%{border-color:#ff6b6b1f;box-shadow:0 4px 15px #ff6b6b0a}to{border-color:#ff6b6b59;box-shadow:0 4px 20px #ff6b6b1f}}.banner-left[data-v-f4fbb35e]{align-items:center;gap:10px;display:flex}.banner-avatar[data-v-f4fbb35e]{font-size:20px;animation:1.2s infinite alternate bounce-f4fbb35e}@keyframes bounce-f4fbb35e{0%{transform:translateY(0)}to{transform:translateY(-4px)}}.banner-text[data-v-f4fbb35e]{flex-direction:column;display:flex}.banner-title[data-v-f4fbb35e]{color:var(--text-main);font-size:12px;font-weight:700}.banner-desc[data-v-f4fbb35e]{color:var(--text-muted);margin-top:1px;font-size:10px}.banner-status-highlight[data-v-f4fbb35e]{color:var(--primary);font-weight:700}.btn-banner[data-v-f4fbb35e]{background:var(--primary);color:#fff;border:none;border-radius:9999px;height:28px;padding:0 12px;font-size:11px;line-height:28px}.history-order-item[data-v-f4fbb35e]{border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-spring);background:#fafafa80;margin-bottom:12px;padding:14px}.history-order-item[data-v-f4fbb35e]:hover{background:#ff6b6b05;border-color:#ff6b6b33;transform:translateY(-2px)}.h-order-top[data-v-f4fbb35e]{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.h-order-time[data-v-f4fbb35e]{color:var(--text-main);font-size:12px;font-weight:700}.h-order-status[data-v-f4fbb35e]{color:var(--text-muted);background:#f1f2f6;border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:700}.h-order-status.status-1[data-v-f4fbb35e]{color:orange;background:#ffa5001a}.h-order-status.status-2[data-v-f4fbb35e]{color:var(--primary);background:#ff6b6b1a}.h-order-status.status-3[data-v-f4fbb35e]{color:#2ecc71;background:#2ecc711a}.h-order-status.status-4[data-v-f4fbb35e]{color:#3498db;background:#3498db1a}.h-order-status.status-9[data-v-f4fbb35e]{color:var(--text-light);background:#0000000d}.h-order-body[data-v-f4fbb35e]{color:var(--text-muted);justify-content:space-between;align-items:center;margin-bottom:6px;font-size:11px;display:flex}.h-order-price[data-v-f4fbb35e]{color:var(--primary);font-size:13px;font-weight:800}.h-order-footer[data-v-f4fbb35e]{border-top:1px dashed var(--border-color);text-align:right;padding-top:6px}.h-click-tip[data-v-f4fbb35e]{color:var(--text-light);font-size:9px;font-style:italic}.exit-btn[data-v-f4fbb35e]{border-radius:var(--radius-sm);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;background:#fff;padding:5px 10px;font-size:11px;font-weight:600}.menu-main[data-v-f4fbb35e]{flex:1;display:flex;overflow:hidden}.category-sidebar[data-v-f4fbb35e]{border-right:1px solid var(--border-color);background:#00000003;flex-direction:column;flex-shrink:0;width:86px;padding-bottom:80px;display:flex;overflow-y:auto}.category-item[data-v-f4fbb35e]{color:var(--text-muted);cursor:pointer;text-align:center;transition:var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:20px 6px;font-size:13px;font-weight:600;display:flex;position:relative}.category-item.active[data-v-f4fbb35e]{color:var(--primary);background:#fff;font-weight:800}.cat-dot[data-v-f4fbb35e]{background:var(--primary);width:3px;height:16px;transition:var(--transition-spring);border-radius:0 4px 4px 0;position:absolute;top:50%;left:0;transform:translateY(-50%)scale(0)}.category-item.active .cat-dot[data-v-f4fbb35e]{transform:translateY(-50%)scale(1)}.dishes-section[data-v-f4fbb35e]{padding:12px;padding-bottom:calc(100px + var(--safe-bottom));background:#fff;flex:1;overflow-y:auto}.state-container[data-v-f4fbb35e]{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:80px 0;font-size:13px;display:flex}.empty-emoji[data-v-f4fbb35e]{margin-bottom:10px;font-size:40px}.spinner[data-v-f4fbb35e]{border:3px solid #ff6b6b1a;border-top-color:var(--primary);border-radius:50%;width:28px;height:28px;margin-bottom:10px;animation:1s linear infinite spin-f4fbb35e}@keyframes spin-f4fbb35e{to{transform:rotate(360deg)}}.dishes-list[data-v-f4fbb35e]{flex-direction:column;gap:12px;display:flex}.dish-card[data-v-f4fbb35e]{box-shadow:var(--shadow-sm);border-radius:var(--radius-sm);background:#fafafa66;gap:12px;padding:10px;display:flex}.dish-image-wrapper[data-v-f4fbb35e]{border-radius:var(--radius-sm);flex-shrink:0;width:90px;height:90px;position:relative;overflow:hidden}.dish-image[data-v-f4fbb35e]{object-fit:cover;width:100%;height:100%}.hot-badge[data-v-f4fbb35e]{color:#fff;background:linear-gradient(135deg,#ff6b6b,#ff8787);border-radius:9999px;padding:1px 5px;font-size:9px;font-weight:700;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #ff6b6b4d}.dish-info[data-v-f4fbb35e]{flex-direction:column;flex:1;justify-content:space-between;min-width:0;display:flex}.dish-name[data-v-f4fbb35e]{color:var(--text-main);font-size:15px;font-weight:700;line-height:1.2}.dish-desc[data-v-f4fbb35e]{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:3px;font-size:10px;line-height:1.3;display:-webkit-box;overflow:hidden}.dish-meta[data-v-f4fbb35e]{margin-top:2px}.dish-sales[data-v-f4fbb35e]{color:var(--text-light);font-size:9px;font-weight:500}.dish-footer[data-v-f4fbb35e]{justify-content:space-between;align-items:center;margin-top:6px;display:flex}.dish-price[data-v-f4fbb35e]{color:var(--primary);font-size:16px;font-weight:800}.currency[data-v-f4fbb35e]{margin-right:1px;font-size:11px;font-weight:700}.cart-control[data-v-f4fbb35e]{align-items:center;gap:6px;display:flex}.qty-btn[data-v-f4fbb35e]{cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:15px;font-weight:700;display:flex}.minus-btn[data-v-f4fbb35e]{color:var(--text-muted);background:#f1f2f6}.plus-btn[data-v-f4fbb35e]{background:var(--primary);color:#fff;box-shadow:0 2px 6px #ff6b6b4d}.qty-num[data-v-f4fbb35e]{color:var(--text-main);text-align:center;min-width:14px;font-size:13px;font-weight:700}.cart-bar-wrapper[data-v-f4fbb35e]{bottom:calc(12px + var(--safe-bottom));z-index:100;position:fixed;left:12px;right:12px}.cart-bar[data-v-f4fbb35e]{-webkit-backdrop-filter:blur(20px);background:#ffffffe0;border:1px solid #ffffff80;border-radius:9999px;justify-content:space-between;align-items:center;padding:8px 14px;display:flex;box-shadow:0 10px 30px #0000001f;transform:none!important}.cart-left[data-v-f4fbb35e]{cursor:pointer;flex:1;align-items:center;gap:10px;display:flex}.cart-icon-box[data-v-f4fbb35e]{background:var(--primary);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex;position:relative;box-shadow:0 3px 10px #ff6b6b4d}.cart-badge[data-v-f4fbb35e]{color:#fff;background:#ff4757;border:1.5px solid #fff;border-radius:9999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:9px;font-weight:700;display:flex;position:absolute;top:-3px;right:-3px}.total-price[data-v-f4fbb35e]{color:var(--text-main);font-size:20px;font-weight:800;line-height:1.1}.cart-tip[data-v-f4fbb35e]{color:var(--text-muted);font-size:9px}.btn-checkout[data-v-f4fbb35e]{height:38px;padding:8px 16px;font-size:13px}.cart-drawer-backdrop[data-v-f4fbb35e]{-webkit-backdrop-filter:blur(4px);z-index:150;background:#0006;align-items:flex-end;display:flex;position:fixed;inset:0}.cart-drawer[data-v-f4fbb35e]{border-radius:var(--radius) var(--radius) 0 0;width:100%;max-height:75vh;padding:20px;padding-bottom:calc(20px + var(--safe-bottom));background:#fff;border:none;flex-direction:column;gap:14px;display:flex;box-shadow:0 -10px 35px #00000026;transform:none!important}.drawer-header[data-v-f4fbb35e]{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.drawer-header h3[data-v-f4fbb35e]{font-size:16px;font-weight:700}.clear-btn[data-v-f4fbb35e]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600}.clear-btn[data-v-f4fbb35e]:hover{color:var(--primary)}.drawer-header-actions[data-v-f4fbb35e]{align-items:center;gap:12px;display:flex}.drawer-close-btn[data-v-f4fbb35e]{border:1px solid var(--border-color);cursor:pointer;width:28px;height:28px;color:var(--text-muted);background:#0000000a;border-radius:50%;justify-content:center;align-items:center;font-size:12px;display:flex}.drawer-content[data-v-f4fbb35e]{flex-direction:column;flex:1;gap:14px;padding:4px 0;display:flex;overflow-y:auto}.drawer-item[data-v-f4fbb35e]{align-items:center;gap:10px;display:flex}.item-img[data-v-f4fbb35e]{border-radius:var(--radius-sm);object-fit:cover;width:44px;height:44px}.item-info[data-v-f4fbb35e]{flex:1;min-width:0}.item-info h4[data-v-f4fbb35e]{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.item-price[data-v-f4fbb35e]{color:var(--primary);margin-top:1px;font-size:12px;font-weight:700}.drawer-qty-control[data-v-f4fbb35e]{align-items:center;gap:8px;display:flex}.drawer-qty-btn[data-v-f4fbb35e]{border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:50%;width:22px;height:22px;font-size:11px;font-weight:600}.drawer-qty[data-v-f4fbb35e]{text-align:center;min-width:14px;font-size:13px;font-weight:700}.remark-section[data-v-f4fbb35e]{border-top:1px solid var(--border-color);flex-direction:column;gap:6px;margin-top:6px;padding-top:12px;display:flex}.remark-section label[data-v-f4fbb35e]{font-size:11px;font-weight:700}.remark-input[data-v-f4fbb35e]{border-radius:var(--radius-sm);border:1px solid var(--border-color);resize:none;outline:none;width:100%;padding:8px;font-family:inherit;font-size:16px}.remark-input[data-v-f4fbb35e]:focus{border-color:var(--primary)}.drawer-footer[data-v-f4fbb35e]{border-top:1px solid var(--border-color);flex-direction:column;gap:10px;padding-top:10px;display:flex}.summary-line[data-v-f4fbb35e]{justify-content:space-between;align-items:center;font-size:13px;font-weight:600;display:flex}.final-price[data-v-f4fbb35e]{color:var(--primary);font-size:22px;font-weight:800}.btn-submit-order[data-v-f4fbb35e]{border-radius:9999px;width:100%;padding:12px;font-size:15px}.pop-enter-active[data-v-f4fbb35e]{animation:.25s cubic-bezier(.175,.885,.32,1.275) pop-in-f4fbb35e}.pop-leave-active[data-v-f4fbb35e]{animation:.2s cubic-bezier(.175,.885,.32,1.275) reverse pop-in-f4fbb35e}@keyframes pop-in-f4fbb35e{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.slide-up-enter-active[data-v-f4fbb35e],.slide-up-leave-active[data-v-f4fbb35e]{transition:opacity .3s}.slide-up-enter-from[data-v-f4fbb35e],.slide-up-leave-to[data-v-f4fbb35e]{opacity:0}.slide-up-enter-active .cart-drawer[data-v-f4fbb35e]{animation:.3s cubic-bezier(.4,0,.2,1) drawer-slide-f4fbb35e}.slide-up-leave-active .cart-drawer[data-v-f4fbb35e]{animation:.25s cubic-bezier(.4,0,.2,1) reverse drawer-slide-f4fbb35e}@keyframes drawer-slide-f4fbb35e{0%{transform:translateY(100%)}to{transform:translateY(0)}}.specs-drawer-backdrop[data-v-f4fbb35e]{-webkit-backdrop-filter:blur(8px);z-index:150;background:#0006;justify-content:center;align-items:flex-end;animation:.3s ease-out fade-in;display:flex;position:fixed;inset:0}.specs-drawer[data-v-f4fbb35e]{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:#fffffff2;border-top:1px solid #ff6b6b26;flex-direction:column;width:100%;max-width:500px;max-height:85vh;animation:.35s cubic-bezier(.175,.885,.32,1.1) forwards slide-up;display:flex;box-shadow:0 -10px 30px #00000026}.specs-header[data-v-f4fbb35e]{border-bottom:1px solid var(--border-color);text-align:left;padding:20px 20px 10px}.specs-header h3[data-v-f4fbb35e]{color:var(--text-main);margin:0;font-size:18px;font-weight:800}.specs-price[data-v-f4fbb35e]{color:var(--primary);text-align:left;margin-top:4px;margin-bottom:0;font-size:16px;font-weight:700}.specs-body[data-v-f4fbb35e]{text-align:left;flex-direction:column;gap:20px;padding:20px;display:flex;overflow-y:auto}.specs-group[data-v-f4fbb35e]{flex-direction:column;gap:8px;display:flex}.specs-group label[data-v-f4fbb35e]{color:var(--text-muted);font-size:12px;font-weight:700}.spec-options[data-v-f4fbb35e]{flex-wrap:wrap;gap:10px;display:flex}.spec-btn[data-v-f4fbb35e]{border-radius:var(--radius-sm);border:1px solid var(--border-color);color:var(--text-main);cursor:pointer;transition:var(--transition-spring);background:#fff;padding:8px 16px;font-size:13px;font-weight:600}.spec-btn[data-v-f4fbb35e]:hover{background:#ff6b6b05;border-color:#ff6b6b4d}.spec-btn.active[data-v-f4fbb35e]{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-1px);box-shadow:0 4px 10px #ff6b6b40}.spec-exclusions[data-v-f4fbb35e]{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.exclusion-item[data-v-f4fbb35e]{border-radius:var(--radius-sm);border:1px solid var(--border-color);cursor:pointer;transition:var(--transition-spring);background:#fff;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.exclusion-item.active[data-v-f4fbb35e]{border-color:var(--primary);color:var(--primary);background:#ff6b6b0a}.exclusion-checkbox[data-v-f4fbb35e]{width:16px;height:16px;accent-color:var(--primary)}.specs-remark-input[data-v-f4fbb35e]{border-radius:var(--radius-sm);border:1px solid var(--border-color);width:100%;transition:var(--transition);resize:none;background:#00000005;outline:none;padding:12px;font-family:inherit;font-size:13px}.specs-remark-input[data-v-f4fbb35e]:focus{border-color:var(--primary);background:#fff}.specs-footer[data-v-f4fbb35e]{border-top:1px solid var(--border-color);background:#ffffffe6;padding:20px}.btn-confirm-specs[data-v-f4fbb35e]{border:none;width:100%;padding:14px;font-size:15px;font-weight:800}.name-row[data-v-f4fbb35e]{justify-content:space-between;align-items:center;gap:8px;display:flex}.edit-pref-btn[data-v-f4fbb35e]{color:var(--primary);cursor:pointer;transition:var(--transition);white-space:nowrap;background:#ff6b6b14;border:none;border-radius:4px;padding:3px 6px;font-size:10px;font-weight:700}.edit-pref-btn[data-v-f4fbb35e]:hover{background:var(--primary);color:#fff}.item-pref-text[data-v-f4fbb35e]{color:var(--text-muted);text-align:left;background:#00000008;border-radius:4px;margin-top:2px;margin-bottom:4px;padding:3px 8px;font-size:11px;display:inline-block}.table-ordered-banner[data-v-f4fbb35e]{border-radius:var(--radius-sm);background:#feca5714;border:1px dashed #feca5759;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;animation:2.5s infinite alternate pulse-gold-f4fbb35e;display:flex}@keyframes pulse-gold-f4fbb35e{0%{border-color:#feca5740}to{border-color:#feca5773}}.ordered-icon[data-v-f4fbb35e]{font-size:14px}.ordered-content[data-v-f4fbb35e]{align-items:center;width:100%;display:flex;overflow:hidden}.ordered-label[data-v-f4fbb35e]{color:#ffa502;white-space:nowrap;font-size:11px;font-weight:800}.ordered-tags-wrapper[data-v-f4fbb35e]{flex:1;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.ordered-item-tag[data-v-f4fbb35e]{color:var(--text-main);white-space:nowrap;background:#ffffff1a;border-radius:4px;padding:2px 6px;font-size:10px}.search-bar-container[data-v-f4fbb35e]{margin-bottom:12px}.search-input-wrapper[data-v-f4fbb35e]{border:1px solid var(--border-color);border-radius:var(--radius-sm);height:38px;transition:var(--transition-spring);background:#00000005;align-items:center;padding:0 12px;display:flex;position:relative}.search-input-wrapper[data-v-f4fbb35e]:focus-within{border-color:var(--primary);background:#fff;box-shadow:0 4px 12px #ff6b6b0d}.search-icon[data-v-f4fbb35e]{color:var(--text-muted);margin-right:8px;font-size:14px}.search-input[data-v-f4fbb35e]{color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:13px}.search-clear-btn[data-v-f4fbb35e]{color:var(--text-light);cursor:pointer;background:0 0;border:none;padding:4px;font-size:12px}.pill-filters[data-v-f4fbb35e]{border-bottom:1px dashed var(--border-color);gap:8px;margin-bottom:12px;padding-bottom:12px;display:flex;overflow-x:auto}.pill-btn[data-v-f4fbb35e]{border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:var(--transition-spring);background:#00000003;border-radius:9999px;padding:6px 12px;font-size:11px;font-weight:700}.pill-btn[data-v-f4fbb35e]:hover{background:#ff6b6b05;border-color:#ff6b6b33}.pill-btn.active[data-v-f4fbb35e]{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 2px 8px #ff6b6b33}.popular-section[data-v-f4fbb35e]{text-align:left;flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.section-title[data-v-f4fbb35e]{color:var(--text-main);margin:0;font-size:13px;font-weight:800}.popular-scroll[data-v-f4fbb35e]{gap:12px;padding:4px 2px 10px;display:flex;overflow-x:auto}.popular-card[data-v-f4fbb35e]{border:1px solid var(--border-color);border-radius:var(--radius-sm);width:120px;transition:var(--transition-spring);background:#fff9;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.popular-card[data-v-f4fbb35e]:hover{border-color:#ff6b6b33;transform:translateY(-2px)}.pop-img[data-v-f4fbb35e]{object-fit:cover;border-bottom:1px solid var(--border-color);width:100%;height:80px}.pop-info[data-v-f4fbb35e]{flex-direction:column;gap:6px;padding:8px;display:flex}.pop-name[data-v-f4fbb35e]{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;text-align:left;margin:0;font-size:11px;font-weight:700;overflow:hidden}.pop-footer[data-v-f4fbb35e]{justify-content:space-between;align-items:center;display:flex}.pop-price[data-v-f4fbb35e]{color:var(--primary);font-size:12px;font-weight:800}.pop-add-btn[data-v-f4fbb35e]{background:var(--primary);color:#fff;cursor:pointer;width:20px;height:20px;transition:var(--transition-spring);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:flex}.pop-add-btn[data-v-f4fbb35e]:hover{background:#ff5252;transform:scale(1.1)}.offline-banner[data-v-f4fbb35e]{-webkit-backdrop-filter:blur(10px);color:#fff;z-index:999;background:linear-gradient(135deg,#ff4757f2,#ff6b6bf2);justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:11px;font-weight:700;transition:transform .3s cubic-bezier(.175,.885,.32,1.1);display:flex;box-shadow:0 4px 15px #ff475733}.offline-icon[data-v-f4fbb35e]{animation:.8s infinite alternate alarm-shake-f4fbb35e;display:inline-block}@keyframes alarm-shake-f4fbb35e{0%{transform:scale(1)}to{transform:scale(1.15)rotate(5deg)}}.confirm-modal-backdrop[data-v-f4fbb35e]{-webkit-backdrop-filter:blur(10px);z-index:200;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.confirm-modal[data-v-f4fbb35e]{border-radius:var(--radius);width:100%;max-width:420px;box-shadow:var(--shadow-lg), 0 0 30px #ff6b6b14;background:#fffffff5;border:1px solid #ff6b6b40;flex-direction:column;gap:16px;padding:20px;display:flex}.confirm-header[data-v-f4fbb35e]{text-align:center}.confirm-icon[data-v-f4fbb35e]{margin-bottom:4px;font-size:32px;display:inline-block}.confirm-header h3[data-v-f4fbb35e]{color:var(--text-main);font-size:18px;font-weight:800}.confirm-sub[data-v-f4fbb35e]{color:var(--text-muted);font-size:10px}.confirm-body[data-v-f4fbb35e]{flex-direction:column;gap:12px;max-height:40vh;padding:4px 2px;display:flex;overflow-y:auto}.confirm-meta-row[data-v-f4fbb35e]{grid-template-columns:1fr 1fr;gap:10px;display:grid}.confirm-meta-item[data-v-f4fbb35e]{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#00000005;flex-direction:column;align-items:center;gap:2px;padding:8px 12px;display:flex}.meta-label[data-v-f4fbb35e]{color:var(--text-muted);font-size:9px;font-weight:600}.meta-val[data-v-f4fbb35e]{color:var(--text-main);font-size:13px;font-weight:800}.confirm-tip-box[data-v-f4fbb35e]{color:var(--primary);border-radius:var(--radius-sm);text-align:center;background:#ff6b6b0a;border:1px solid #ff6b6b1a;padding:8px 12px;font-size:11px;font-weight:700}.confirm-items-box[data-v-f4fbb35e]{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#00000003;padding:12px}.box-sub-title[data-v-f4fbb35e]{color:var(--text-main);border-left:3px solid var(--primary);text-align:left;margin-bottom:8px;padding-left:6px;font-size:11px;font-weight:800}.confirm-items-list[data-v-f4fbb35e]{flex-direction:column;gap:6px;max-height:18vh;display:flex;overflow-y:auto}.confirm-item-row[data-v-f4fbb35e]{border-bottom:1px dashed #00000008;justify-content:space-between;align-items:center;padding-bottom:4px;font-size:12px;display:flex}.confirm-item-row[data-v-f4fbb35e]:last-child{border-bottom:none;padding-bottom:0}.item-name-col[data-v-f4fbb35e]{text-align:left;flex-direction:column;flex:1;min-width:0;display:flex}.c-item-name[data-v-f4fbb35e]{color:var(--text-main);font-weight:700}.c-item-pref[data-v-f4fbb35e]{color:var(--text-muted);font-size:9px}.c-item-qty[data-v-f4fbb35e]{color:var(--text-muted);margin:0 12px;font-weight:600}.c-item-price[data-v-f4fbb35e]{color:var(--text-main);font-weight:800}.confirm-remark-box[data-v-f4fbb35e]{border-radius:var(--radius-sm);text-align:left;background:#feca570a;border:1px solid #feca5726;padding:8px 12px;font-size:11px}.confirm-remark-box .remark-label[data-v-f4fbb35e]{color:#ffa502;font-weight:800}.confirm-remark-box .remark-content[data-v-f4fbb35e]{color:var(--text-muted);font-style:italic}.confirm-price-row[data-v-f4fbb35e]{justify-content:space-between;align-items:center;margin-bottom:4px;font-size:13px;font-weight:700;display:flex}.confirm-price-val[data-v-f4fbb35e]{color:var(--primary);font-size:22px;font-weight:800}.confirm-actions[data-v-f4fbb35e]{grid-template-columns:1fr 1.3fr;gap:12px;display:grid}.btn-cancel-confirm[data-v-f4fbb35e]{border-radius:9999px;padding:10px 14px;font-size:13px;font-weight:700}.btn-confirm-submit[data-v-f4fbb35e]{background:linear-gradient(135deg, var(--primary), #ff8787);border-radius:9999px;padding:10px 14px;font-size:13px;font-weight:800}.slide-down-enter-active[data-v-f4fbb35e]{transform:translateY(-100%)}.slide-down-enter-to[data-v-f4fbb35e],.slide-down-leave-active[data-v-f4fbb35e]{transform:translateY(0)}.slide-down-leave-to[data-v-f4fbb35e]{transform:translateY(-100%)}.ai-float-ball[data-v-f4fbb35e]{z-index:120;cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;animation:3s ease-in-out infinite alternate float-breath-f4fbb35e;display:flex;position:fixed;bottom:120px;left:16px;box-shadow:0 8px 24px #00000026}@keyframes float-breath-f4fbb35e{0%{transform:translateY(0)scale(1)}to{transform:translateY(-6px)scale(1.05)}}.ai-glow-ring[data-v-f4fbb35e]{z-index:-1;filter:blur(2px);opacity:.8;background:linear-gradient(45deg,#ff6b6b,#feca57,#1dd1a1,#54a0ff,#ff6b6b) 0 0/400% 400%;border-radius:50%;animation:8s linear infinite rotate-glow-f4fbb35e;position:absolute;inset:-2px}@keyframes rotate-glow-f4fbb35e{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.ai-ball-content[data-v-f4fbb35e]{flex-direction:column;justify-content:center;align-items:center;gap:1px;display:flex}.ai-emoji[data-v-f4fbb35e]{font-size:22px}.ai-ball-text[data-v-f4fbb35e]{color:var(--primary);letter-spacing:-.5px;font-size:8px;font-weight:800}.ai-bubble-tip[data-v-f4fbb35e]{background:var(--primary);color:#fff;white-space:nowrap;border-radius:0 12px 12px;padding:6px 12px;font-size:10px;font-weight:700;animation:.3s cubic-bezier(.175,.885,.32,1.275) pop-in-f4fbb35e;position:absolute;left:64px;box-shadow:0 4px 12px #ff6b6b4d}.ai-drawer-backdrop[data-v-f4fbb35e]{-webkit-backdrop-filter:blur(8px);z-index:160;background:#0006;align-items:flex-end;display:flex;position:fixed;inset:0}.ai-drawer[data-v-f4fbb35e]{border-radius:var(--radius) var(--radius) 0 0;-webkit-backdrop-filter:blur(25px);width:100%;max-height:85vh;padding:20px;padding-bottom:calc(20px + var(--safe-bottom));background:#fffffff2;border:1px solid #ff6b6b26;flex-direction:column;gap:16px;display:flex;box-shadow:0 -12px 40px #0003}.ai-drawer-header[data-v-f4fbb35e]{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.ai-header-left[data-v-f4fbb35e]{text-align:left;align-items:center;gap:12px;display:flex}.ai-avatar-animated[data-v-f4fbb35e]{font-size:32px;animation:1.5s infinite alternate bounce-f4fbb35e;display:inline-block}.ai-drawer-header h3[data-v-f4fbb35e]{color:var(--text-main);margin:0;font-size:16px;font-weight:800}.ai-header-sub[data-v-f4fbb35e]{color:var(--text-muted);margin:0;font-size:9px}.ai-drawer-body[data-v-f4fbb35e]{flex-direction:column;flex:1;gap:16px;padding:6px 2px;display:flex;overflow-y:auto}.ai-section-title[data-v-f4fbb35e]{color:var(--text-main);text-align:left;margin-bottom:8px;font-size:12px;font-weight:800}.ai-mood-grid[data-v-f4fbb35e]{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.ai-mood-btn[data-v-f4fbb35e]{border-radius:var(--radius-sm);border:1px solid var(--border-color);cursor:pointer;transition:var(--transition-spring);background:#fff;align-items:center;gap:8px;padding:12px;display:flex}.ai-mood-btn[data-v-f4fbb35e]:hover{background:#ff6b6b05;border-color:#ff6b6b40}.ai-mood-btn.active[data-v-f4fbb35e]{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 4px 15px #ff6b6b33}.ai-mood-emoji[data-v-f4fbb35e]{font-size:18px}.ai-mood-label[data-v-f4fbb35e]{font-size:13px;font-weight:700}.ai-people-selector[data-v-f4fbb35e]{gap:10px;display:flex}.ai-people-btn[data-v-f4fbb35e]{border-radius:var(--radius-sm);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;transition:var(--transition-spring);background:#fff;flex:1;padding:10px 0;font-size:12px;font-weight:700}.ai-people-btn.active[data-v-f4fbb35e]{border-color:var(--primary);color:var(--primary);background:#ff6b6b0d}.btn-ai-generate[data-v-f4fbb35e]{width:100%;margin-top:10px;padding:14px;font-size:15px;font-weight:800}.ai-thinking-box[data-v-f4fbb35e]{flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:40px 0;display:flex}.ai-loader[data-v-f4fbb35e]{justify-content:center;align-items:center;width:60px;height:60px;display:flex;position:relative}.ai-loader-ring[data-v-f4fbb35e]{border:3px dashed var(--primary);border-radius:50%;animation:3s linear infinite spin-f4fbb35e;position:absolute;inset:0}.ai-loader-logo[data-v-f4fbb35e]{font-size:32px}.ai-thinking-text[data-v-f4fbb35e]{color:var(--text-muted);font-size:12px;font-weight:600}.ai-thinking-lines[data-v-f4fbb35e]{gap:4px;display:flex}.ai-thinking-lines span[data-v-f4fbb35e]{background:var(--primary);border-radius:50%;width:6px;height:6px;animation:.6s infinite alternate bounce-dots-f4fbb35e}.ai-thinking-lines span[data-v-f4fbb35e]:nth-child(2){animation-delay:.2s}.ai-thinking-lines span[data-v-f4fbb35e]:nth-child(3){animation-delay:.4s}@keyframes bounce-dots-f4fbb35e{to{opacity:.4;transform:translateY(-6px)}}.ai-result-section[data-v-f4fbb35e]{flex-direction:column;gap:16px;display:flex}.ai-text-bubble[data-v-f4fbb35e]{border-radius:var(--radius-sm);text-align:left;background:#ff6b6b0a;border:1px solid #ff6b6b26;padding:14px;position:relative}.ai-typed-text[data-v-f4fbb35e]{color:var(--text-main);font-size:13px;font-weight:600;line-height:1.5}.ai-cursor[data-v-f4fbb35e]{color:var(--primary);font-weight:800;animation:.8s infinite flash-f4fbb35e}@keyframes flash-f4fbb35e{50%{opacity:0}}.ai-dishes-grid[data-v-f4fbb35e]{flex-direction:column;gap:10px;display:flex}.ai-grid-title[data-v-f4fbb35e]{color:var(--text-muted);border-left:3px solid var(--primary);text-align:left;padding-left:6px;font-size:11px;font-weight:800}.ai-dish-mini-card[data-v-f4fbb35e]{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff;align-items:center;gap:12px;padding:8px 12px;display:flex}.mini-card-img[data-v-f4fbb35e]{object-fit:cover;border-radius:8px;width:48px;height:48px}.mini-card-info[data-v-f4fbb35e]{text-align:left;flex:1}.mini-card-info h5[data-v-f4fbb35e]{color:var(--text-main);font-size:13px;font-weight:800}.mini-card-price[data-v-f4fbb35e]{color:var(--primary);margin-top:1px;font-size:12px;font-weight:800}.mini-card-sales[data-v-f4fbb35e]{color:var(--text-light);font-size:9px;font-weight:600}.ai-drawer-footer[data-v-f4fbb35e]{border-top:1px solid var(--border-color);flex-direction:column;gap:10px;padding-top:12px;display:flex}.ai-summary-row[data-v-f4fbb35e]{justify-content:space-between;align-items:center;font-size:13px;font-weight:600;display:flex}.ai-summary-price[data-v-f4fbb35e]{color:var(--primary);font-size:20px;font-weight:800}.ai-actions-row[data-v-f4fbb35e]{grid-template-columns:1fr 1fr 1.3fr;gap:8px;display:grid}.btn-reconfig[data-v-f4fbb35e],.btn-retry-ai[data-v-f4fbb35e]{border-radius:9999px;padding:10px 0;font-size:11px}.btn-add-ai-cart[data-v-f4fbb35e]{background:linear-gradient(135deg, var(--primary), #ff8787);border-radius:9999px;padding:10px 0;font-size:11px}.status-page[data-v-5cb7d0ac]{background-color:var(--bg-app);min-height:100dvh;padding:24px 16px;padding-top:calc(24px + env(safe-area-inset-top,0px));padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));position:relative;overflow:hidden}.glow-bg[data-v-5cb7d0ac]{background:var(--primary);filter:blur(80px);opacity:.12;z-index:0;width:300px;height:300px;position:absolute;top:-10%;left:50%;transform:translate(-50%)}.status-container[data-v-5cb7d0ac]{z-index:1;flex-direction:column;gap:20px;max-width:480px;margin:0 auto;display:flex;position:relative}.header[data-v-5cb7d0ac]{text-align:center;padding:24px}.status-emoji[data-v-5cb7d0ac]{margin-bottom:8px;font-size:48px;display:block}.header h1[data-v-5cb7d0ac]{margin-bottom:6px;font-size:22px}.table-info[data-v-5cb7d0ac]{color:var(--text-main);font-size:15px;font-weight:700}.order-id[data-v-5cb7d0ac]{color:var(--text-light);margin-top:4px;font-size:11px}.timeline-box[data-v-5cb7d0ac]{padding:24px 16px}.box-title[data-v-5cb7d0ac]{border-left:3px solid var(--primary);margin-bottom:24px;padding-left:4px;font-size:15px;font-weight:700}.timeline[data-v-5cb7d0ac]{padding:10px 0;position:relative}.timeline-line[data-v-5cb7d0ac]{z-index:0;background:#0000000d;border-radius:9999px;height:4px;position:absolute;top:20px;left:5%;right:5%}.timeline-line-fill[data-v-5cb7d0ac]{border-radius:9999px;width:0;height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.steps-container[data-v-5cb7d0ac]{z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.step-node[data-v-5cb7d0ac]{flex-direction:column;align-items:center;gap:8px;display:flex}.step-icon[data-v-5cb7d0ac]{width:44px;height:44px;transition:var(--transition-spring);box-shadow:var(--shadow-sm);background:#fff;border:2px solid #0000000d;border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex}.step-node.active .step-icon[data-v-5cb7d0ac]{border-color:var(--primary);background:#ff6b6b0d;transform:scale(1.1)}.step-node.current .step-icon[data-v-5cb7d0ac]{background:var(--primary);border-color:var(--primary);color:#fff;animation:1.5s infinite alternate pulse-active-5cb7d0ac}@keyframes pulse-active-5cb7d0ac{0%{box-shadow:0 0 #ff6b6b80}to{box-shadow:0 0 0 10px #ff6b6b00}}.step-label[data-v-5cb7d0ac]{color:var(--text-muted);transition:var(--transition);font-size:11px;font-weight:600}.step-node.active .step-label[data-v-5cb7d0ac]{color:var(--text-main);font-weight:700}.action-box[data-v-5cb7d0ac]{text-align:center;flex-direction:column;gap:8px;display:flex}.btn-rush[data-v-5cb7d0ac]{background:linear-gradient(135deg,#ff6b6b,#ff8787);width:100%;min-height:48px;padding:14px;font-size:16px}.btn-rush.cooldown[data-v-5cb7d0ac]{color:var(--text-muted);box-shadow:none;cursor:not-allowed;background:#0000001a;transform:none!important}.rush-tip[data-v-5cb7d0ac]{color:var(--text-muted);font-size:11px}.details-box[data-v-5cb7d0ac]{padding:20px}.items-list[data-v-5cb7d0ac]{border-bottom:1px solid var(--border-color);flex-direction:column;gap:4px;padding-bottom:16px;display:flex}.detail-item-container[data-v-5cb7d0ac]{border-bottom:1px dashed #0000000d;flex-direction:column;align-items:flex-start;width:100%;padding:6px 0;display:flex}.detail-item-container[data-v-5cb7d0ac]:last-child{border-bottom:none}.detail-item[data-v-5cb7d0ac]{justify-content:space-between;align-items:center;font-size:14px;display:flex}.item-pref-tag[data-v-5cb7d0ac]{color:var(--text-muted);text-align:left;background:#00000008;border-radius:4px;margin-top:4px;padding:2px 6px;font-size:11px}.item-name[data-v-5cb7d0ac]{flex:1;font-weight:600}.item-qty[data-v-5cb7d0ac]{color:var(--text-muted);margin:0 20px;font-weight:500}.item-price[data-v-5cb7d0ac]{font-weight:700}.remark-detail[data-v-5cb7d0ac]{border-radius:var(--radius-sm);background:#00000005;margin-top:14px;padding:10px;font-size:12px}.remark-label[data-v-5cb7d0ac]{color:var(--primary);font-weight:700}.remark-text[data-v-5cb7d0ac]{color:var(--text-muted);font-style:italic;display:inline}.total-line[data-v-5cb7d0ac]{justify-content:space-between;align-items:center;margin-top:16px;font-size:15px;font-weight:700;display:flex}.total-val[data-v-5cb7d0ac]{color:var(--primary);font-size:22px;font-weight:800}.footer-box[data-v-5cb7d0ac]{padding-bottom:env(safe-area-inset-bottom,0px);justify-content:center;display:flex}.loading-container[data-v-5cb7d0ac]{min-height:80vh;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex}.spinner[data-v-5cb7d0ac]{border:4px solid #ff6b6b1a;border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin-5cb7d0ac}@keyframes spin-5cb7d0ac{to{transform:rotate(360deg)}}.admin-dashboard[data-v-f7e6da74]{background-color:var(--bg-app);min-height:100dvh;color:var(--text-main);padding:16px;padding-top:calc(16px + env(safe-area-inset-top,0px));padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:16px;display:flex}@media (width>=768px){.admin-dashboard[data-v-f7e6da74]{gap:24px;padding:24px}}.dashboard-header[data-v-f7e6da74]{border-radius:var(--radius-sm);border:1px solid var(--border-glass);justify-content:space-between;align-items:center;padding:12px 16px;display:flex;position:relative}@media (width<=576px){.dashboard-header[data-v-f7e6da74]{text-align:center;flex-direction:column;align-items:stretch;gap:12px}.brand[data-v-f7e6da74],.nav-links[data-v-f7e6da74]{justify-content:center}}.brand[data-v-f7e6da74]{align-items:center;gap:12px;display:flex}.logo[data-v-f7e6da74]{font-size:28px}.dashboard-header h2[data-v-f7e6da74]{font-size:18px;font-weight:800}.status-indicator[data-v-f7e6da74]{color:var(--success);align-items:center;gap:6px;margin-top:2px;font-size:10px;font-weight:600;display:flex}.pulse-dot[data-v-f7e6da74]{background:var(--success);border-radius:50%;width:6px;height:6px;animation:1.5s infinite pulse-dot-anim-f7e6da74}@keyframes pulse-dot-anim-f7e6da74{0%{opacity:.5;transform:scale(.8)}to{opacity:0;transform:scale(1.5)}}.nav-links[data-v-f7e6da74]{gap:10px;display:flex}.nav-btn[data-v-f7e6da74]{background:var(--primary);color:#fff;border-radius:9999px;padding:8px 14px;font-size:12px;font-weight:700;text-decoration:none;box-shadow:0 4px 12px #ff6b6b33}.btn-outline[data-v-f7e6da74]{color:#fff;box-shadow:none;background:#ffffff14}.btn-outline[data-v-f7e6da74]:hover{background:#ffffff1f}.stat-section[data-v-f7e6da74]{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}@media (width<=576px){.stat-section[data-v-f7e6da74]{grid-template-columns:repeat(2,1fr);gap:8px}.stat-card[data-v-f7e6da74]{padding:12px 8px}.stat-val[data-v-f7e6da74]{font-size:16px}.stat-label[data-v-f7e6da74]{font-size:10px}}.stat-card[data-v-f7e6da74]{text-align:center;padding:16px}.stat-label[data-v-f7e6da74]{color:var(--text-muted);font-size:11px;font-weight:600}.stat-val[data-v-f7e6da74]{margin-top:4px;font-size:22px;font-weight:800}.mobile-tabs-container[data-v-f7e6da74]{border-radius:var(--radius-sm);grid-template-columns:repeat(3,1fr);gap:6px;padding:6px;display:none}.mobile-tab-btn[data-v-f7e6da74]{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 0;display:flex}.mobile-tab-btn.active[data-v-f7e6da74]{color:var(--primary);background:#ff6b6b26;font-weight:700}.mobile-tab-label[data-v-f7e6da74]{font-size:11px}.mobile-tab-count[data-v-f7e6da74]{background:#ffffff14;border-radius:9999px;padding:1px 6px;font-size:10px;font-weight:700}.mobile-tab-btn.active .mobile-tab-count[data-v-f7e6da74]{background:var(--primary);color:#fff}@media (width<=768px){.mobile-tabs-container[data-v-f7e6da74]{display:grid}}.workflow-container[data-v-f7e6da74]{flex:1;grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (width<=768px){.workflow-container[data-v-f7e6da74]{grid-template-columns:1fr}.hide-on-mobile[data-v-f7e6da74]{display:none!important}}.workflow-column[data-v-f7e6da74]{border-radius:var(--radius-sm);border:1px solid var(--border-color);background:#ffffff03;flex-direction:column;gap:12px;max-height:70vh;padding:14px;display:flex;overflow:hidden}.column-header[data-v-f7e6da74]{border-bottom:1px solid var(--border-color);align-items:center;gap:8px;padding-bottom:10px;display:flex}.column-header h3[data-v-f7e6da74]{font-size:14px;font-weight:800}.column-dot[data-v-f7e6da74]{border-radius:50%;width:6px;height:6px}.dot-new[data-v-f7e6da74]{background:var(--secondary)}.dot-cooking[data-v-f7e6da74]{background:var(--info)}.dot-served[data-v-f7e6da74]{background:var(--success)}.orders-list[data-v-f7e6da74]{flex-direction:column;flex:1;gap:12px;display:flex;overflow-y:auto}.empty-column-placeholder[data-v-f7e6da74]{color:var(--text-light);border-radius:var(--radius-sm);border:1px dashed #ffffff0d;justify-content:center;align-items:center;padding:40px 0;font-size:12px;display:flex}.order-card[data-v-f7e6da74]{box-shadow:none;padding:12px}.card-inner[data-v-f7e6da74]{flex-direction:column;gap:10px;display:flex}.order-card-header[data-v-f7e6da74]{justify-content:space-between;align-items:center;display:flex}.table-badge[data-v-f7e6da74]{border-radius:var(--radius-sm);color:var(--secondary);background:#feca5726;padding:4px 8px;font-size:11px;font-weight:700}.table-badge.cooking[data-v-f7e6da74]{color:var(--info);background:#54a0ff26}.table-badge.served[data-v-f7e6da74]{color:var(--success);background:#1dd1a126}.order-time[data-v-f7e6da74]{color:var(--text-light);font-size:10px}.card-items[data-v-f7e6da74]{border-radius:var(--radius-sm);color:var(--text-muted);background:#ffffff05;flex-direction:column;gap:4px;padding:6px;font-size:12px;display:flex}.card-item[data-v-f7e6da74]{justify-content:space-between;display:flex}.card-remark[data-v-f7e6da74]{color:#ffa502;border-radius:var(--radius-sm);background:#ffa50214;padding:6px;font-size:11px}.card-footer[data-v-f7e6da74]{justify-content:space-between;align-items:center;margin-top:2px;display:flex}.card-total[data-v-f7e6da74]{color:var(--primary);font-size:16px;font-weight:800}.btn-accept[data-v-f7e6da74],.btn-serve[data-v-f7e6da74],.btn-pay[data-v-f7e6da74]{box-shadow:none;border-radius:9999px;min-height:36px;padding:8px 14px;font-size:12px}.btn-accept[data-v-f7e6da74]{background:linear-gradient(135deg, var(--secondary), #ffa502)}.btn-serve[data-v-f7e6da74]{background:linear-gradient(135deg, var(--info), #2e86de)}.btn-pay[data-v-f7e6da74]{background:linear-gradient(135deg, var(--success), #10ac84)}.chart-section[data-v-f7e6da74]{padding:16px}.box-title[data-v-f7e6da74]{border-left:3px solid var(--primary);margin-bottom:14px;padding-left:6px;font-size:14px;font-weight:800}.chart-wrapper[data-v-f7e6da74]{border-radius:var(--radius-sm);background:#0003;padding:8px}.trend-svg[data-v-f7e6da74]{width:100%;max-height:120px}.view-mode-toggle[data-v-f7e6da74]{border:1px solid var(--border-glass);border-radius:var(--radius-sm);background:#ffffff0d;align-self:center;gap:4px;padding:4px;display:flex}.mode-btn[data-v-f7e6da74]{color:var(--text-muted);cursor:pointer;transition:var(--transition-spring);background:0 0;border:none;border-radius:4px;padding:6px 12px;font-size:12px;font-weight:700}.mode-btn.active[data-v-f7e6da74]{background:var(--primary);color:#fff;box-shadow:0 2px 8px #ff6b6b40}.chef-container[data-v-f7e6da74]{flex-direction:column;flex:1;padding-bottom:80px;animation:.3s ease-out fade-in;display:flex}.chef-grid[data-v-f7e6da74]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.chef-card[data-v-f7e6da74]{border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:var(--transition-spring);background:#ffffff05;flex-direction:column;gap:14px;padding:16px;display:flex}.chef-card[data-v-f7e6da74]:hover{border-color:#ff6b6b33;transform:translateY(-2px)}.chef-card-header[data-v-f7e6da74]{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.chef-dish-img[data-v-f7e6da74]{border-radius:var(--radius-sm);object-fit:cover;border:1px solid #ffffff14;width:50px;height:50px}.chef-dish-name[data-v-f7e6da74]{color:#fff;text-align:left;margin:0;font-size:15px;font-weight:800}.chef-pref-badge[data-v-f7e6da74]{color:#ff6b6b;text-align:left;background:#ff6b6b1a;border-radius:4px;margin-top:4px;padding:1px 6px;font-size:10px;display:inline-block}.chef-qty-badge[data-v-f7e6da74]{border-radius:var(--radius-sm);background:#ff6b6b14;border:1px solid #ff6b6b33;align-items:baseline;gap:2px;padding:4px 10px;display:flex}.chef-qty-val[data-v-f7e6da74]{color:var(--primary);font-size:22px;font-weight:900}.chef-qty-unit[data-v-f7e6da74]{color:var(--text-muted);font-size:10px;font-weight:700}.chef-tables-list[data-v-f7e6da74]{flex-direction:column;gap:8px;display:flex}.chef-table-row[data-v-f7e6da74]{background:#ffffff03;border:1px solid #ffffff08;border-radius:6px;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.chef-table-row .table-info[data-v-f7e6da74]{align-items:center;gap:6px;display:flex}.table-tag[data-v-f7e6da74]{color:var(--secondary);font-size:12px;font-weight:700}.customer-tag[data-v-f7e6da74]{color:var(--text-light);font-size:10px}.chef-table-row .action-row[data-v-f7e6da74]{align-items:center;gap:10px;display:flex}.qty-tag[data-v-f7e6da74]{color:#fff;font-size:13px;font-weight:800}.btn-chef-serve[data-v-f7e6da74]{background:var(--success);color:#fff;cursor:pointer;transition:var(--transition-spring);border:none;border-radius:4px;padding:4px 8px;font-size:10px;font-weight:700;box-shadow:0 2px 6px #2ecc7126}.btn-chef-serve[data-v-f7e6da74]:hover{background:#2ecc71;transform:scale(1.05)}.empty-chef-placeholder[data-v-f7e6da74]{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;padding:80px 0;font-size:14px;display:flex}.empty-chef-emoji[data-v-f7e6da74]{font-size:48px;animation:6s linear infinite rotate-slow-f7e6da74}@keyframes rotate-slow-f7e6da74{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.undo-float-bar[data-v-f7e6da74]{z-index:200;border-radius:var(--radius-sm);background:#0b0b0ef2;border:1px solid #ff6b6b59;justify-content:space-between;align-items:center;gap:20px;min-width:320px;padding:12px 24px;animation:.3s cubic-bezier(.175,.885,.32,1.275) float-slide-up-f7e6da74;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #ff6b6b26}@keyframes float-slide-up-f7e6da74{0%{opacity:0;bottom:-50px;transform:translate(-50%)scale(.9)}to{opacity:1;bottom:24px;transform:translate(-50%)scale(1)}}.undo-content[data-v-f7e6da74]{color:var(--text-main);text-align:left;align-items:center;gap:10px;font-size:13px;display:flex}.undo-icon[data-v-f7e6da74]{font-size:18px;animation:2s linear infinite spin-clockwise-f7e6da74}@keyframes spin-clockwise-f7e6da74{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn-undo[data-v-f7e6da74]{background:var(--primary);color:#fff;cursor:pointer;transition:var(--transition-spring);border:none;border-radius:4px;padding:6px 12px;font-size:11px;font-weight:800}.btn-undo[data-v-f7e6da74]:hover{background:#ff5252;box-shadow:0 4px 10px #ff6b6b33}.stockout-drawer-backdrop[data-v-f7e6da74]{-webkit-backdrop-filter:blur(8px);z-index:150;background:#0006;justify-content:flex-end;animation:.3s ease-out fade-in;display:flex;position:fixed;inset:0}.stockout-drawer[data-v-f7e6da74]{-webkit-backdrop-filter:blur(30px);border-radius:var(--radius-sm) 0 0 var(--radius-sm);background:#0b0b0efa;border-left:1px solid #ff6b6b26;flex-direction:column;width:100%;max-width:420px;height:100dvh;animation:.35s cubic-bezier(.4,0,.2,1) forwards slide-x-in-f7e6da74;display:flex;box-shadow:-10px 0 30px #00000040}@keyframes slide-x-in-f7e6da74{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-cat-filters[data-v-f7e6da74]{background:#ffffff03;border-bottom:1px solid #ffffff0d;gap:8px;padding:10px 16px;display:flex;overflow-x:auto}.cat-filter-btn[data-v-f7e6da74]{color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:var(--transition-spring);background:0 0;border:1px solid #ffffff14;border-radius:9999px;padding:5px 12px;font-size:11px;font-weight:700}.cat-filter-btn.active[data-v-f7e6da74]{background:var(--primary);color:#fff;border-color:var(--primary)}.stockout-dish-card[data-v-f7e6da74]{transition:var(--transition);border-bottom:1px solid #ffffff08;align-items:center;gap:12px;padding:12px 16px;display:flex}.stockout-dish-card.is-soldout[data-v-f7e6da74]{opacity:.7;background:#ffffff03}.dish-card-img[data-v-f7e6da74]{object-fit:cover;border:1px solid #ffffff0d;border-radius:6px;width:44px;height:44px}.dish-card-info[data-v-f7e6da74]{text-align:left;flex:1}.dish-card-info h4[data-v-f7e6da74]{color:#fff;margin:0;font-size:13px;font-weight:700}.dish-card-price[data-v-f7e6da74]{color:var(--primary);margin-top:2px;font-size:11px;font-weight:700}.switch-control[data-v-f7e6da74]{cursor:pointer;align-items:center;gap:8px;display:flex}.switch-label[data-v-f7e6da74]{color:var(--text-muted);white-space:nowrap;font-size:10px;font-weight:700}.switch-track[data-v-f7e6da74]{background:#ffffff1a;border-radius:9999px;width:40px;height:22px;transition:background-color .3s;position:relative}.switch-track.active[data-v-f7e6da74]{background-color:var(--success)}.switch-thumb[data-v-f7e6da74]{background-color:#fff;border-radius:50%;width:18px;height:18px;transition:transform .25s cubic-bezier(.4,0,.2,1);position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #0003}.switch-track.active .switch-thumb[data-v-f7e6da74]{transform:translate(18px)}.stat-card.interactive[data-v-f7e6da74]{cursor:pointer;transition:var(--transition-spring);border:1px solid #ffffff0d}.stat-card.interactive[data-v-f7e6da74]:hover{background:#ff6b6b05;border-color:#ff6b6b40;transform:translateY(-2px)}.slide-x-enter-active[data-v-f7e6da74],.slide-x-leave-active[data-v-f7e6da74]{transition:opacity .3s}.slide-x-enter-from[data-v-f7e6da74],.slide-x-leave-to[data-v-f7e6da74]{opacity:0}.slide-x-enter-active .stockout-drawer[data-v-f7e6da74]{animation:.3s cubic-bezier(.4,0,.2,1) slide-x-in-f7e6da74}.slide-x-leave-active .stockout-drawer[data-v-f7e6da74]{animation:.25s cubic-bezier(.4,0,.2,1) reverse slide-x-in-f7e6da74}.rush-flash[data-v-f7e6da74]{border-color:#ff4757!important;animation:1.2s infinite alternate pulse-danger-flash-f7e6da74!important}@keyframes pulse-danger-flash-f7e6da74{0%{box-shadow:0 0 8px #ff47574d;border-color:#ff475780!important}to{box-shadow:0 0 25px #ff4757b3;border-color:#ff4757!important}}.rush-badge-active[data-v-f7e6da74]{color:#ff4757!important;background:#ff475726!important;border:1px solid #ff47574d!important}.rush-alarm-badge[data-v-f7e6da74]{color:#fff;background:linear-gradient(135deg,#ff4757,#ff6b6b);border-radius:9999px;margin-left:6px;padding:1px 6px;font-size:9px;font-weight:800;animation:.8s infinite alternate scale-bounce-f7e6da74;display:inline-block}@keyframes scale-bounce-f7e6da74{0%{transform:scale(1)}to{transform:scale(1.12)}}.admin-menu[data-v-e3a48736]{background-color:var(--bg-app);min-height:100dvh;color:var(--text-main);padding:16px;padding-top:calc(16px + env(safe-area-inset-top,0px));padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:16px;display:flex}@media (width>=768px){.admin-menu[data-v-e3a48736]{gap:24px;padding:24px}}.menu-header[data-v-e3a48736]{border-radius:var(--radius-sm);border:1px solid var(--border-glass);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}@media (width<=576px){.menu-header[data-v-e3a48736]{text-align:center;flex-direction:column;align-items:stretch;gap:12px}.brand[data-v-e3a48736],.nav-links[data-v-e3a48736]{justify-content:center}}.brand[data-v-e3a48736]{align-items:center;gap:12px;display:flex}.logo[data-v-e3a48736]{font-size:28px}.menu-header h2[data-v-e3a48736]{font-size:18px;font-weight:800}.subtitle[data-v-e3a48736]{color:var(--text-muted);font-size:10px}.nav-links[data-v-e3a48736]{display:flex}.nav-btn[data-v-e3a48736]{color:#fff;box-shadow:none;background:#ffffff14;border-radius:9999px;padding:8px 16px;font-size:12px;font-weight:700;text-decoration:none}.nav-btn[data-v-e3a48736]:hover{background:#ffffff1f}.main-content[data-v-e3a48736]{flex:1;grid-template-columns:280px 1fr;gap:20px;display:grid}@media (width<=768px){.main-content[data-v-e3a48736]{grid-template-columns:1fr;gap:16px}}.left-panel[data-v-e3a48736],.right-panel[data-v-e3a48736]{flex-direction:column;gap:16px;padding:16px;display:flex;overflow:hidden}@media (width>=768px){.left-panel[data-v-e3a48736],.right-panel[data-v-e3a48736]{max-height:80vh;padding:24px}}.panel-header[data-v-e3a48736]{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.panel-header h3[data-v-e3a48736]{font-size:14px;font-weight:800}.btn-add[data-v-e3a48736]{padding:5px 12px;font-size:10px}.category-list[data-v-e3a48736]{flex-direction:column;flex:1;gap:10px;display:flex;overflow-y:auto}@media (width<=768px){.category-list[data-v-e3a48736]{flex-direction:row;gap:8px;padding-bottom:8px;overflow:auto hidden}.category-card[data-v-e3a48736]{flex-shrink:0;width:140px;padding:10px!important}.cat-actions[data-v-e3a48736]{margin-top:2px!important}}.category-card[data-v-e3a48736]{border-radius:var(--radius-sm);border:1px solid var(--border-color);cursor:pointer;transition:var(--transition-spring);background:#ffffff05;flex-direction:column;gap:6px;padding:14px;display:flex}.category-card[data-v-e3a48736]:hover,.category-card.active[data-v-e3a48736]{background:#ff6b6b0d;border-color:#ff6b6b33}.category-card.active[data-v-e3a48736]{box-shadow:0 4px 12px #ff6b6b1a}.cat-main[data-v-e3a48736]{justify-content:space-between;align-items:center;display:flex}.cat-name[data-v-e3a48736]{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.status-badge[data-v-e3a48736]{border-radius:9999px;padding:1px 5px;font-size:8px;font-weight:700}.status-badge.active[data-v-e3a48736]{color:var(--success);background:#1dd1a126}.status-badge.disabled[data-v-e3a48736]{color:var(--danger);background:#ff475726}.cat-actions[data-v-e3a48736]{border-top:1px dashed #ffffff0a;justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.action-btn[data-v-e3a48736]{cursor:pointer;background:0 0;border:none;font-size:10px;font-weight:600}.action-btn.edit[data-v-e3a48736]{color:var(--info)}.action-btn.del[data-v-e3a48736]{color:var(--danger)}.dish-list[data-v-e3a48736]{flex:1;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid;overflow-y:auto}@media (width<=576px){.dish-list[data-v-e3a48736]{grid-template-columns:1fr}}.empty-dish-placeholder[data-v-e3a48736]{color:var(--text-light);border-radius:var(--radius-sm);border:1px dashed #ffffff0d;grid-column:1/-1;justify-content:center;align-items:center;padding:50px 0;font-size:12px;display:flex}.dish-card[data-v-e3a48736]{box-shadow:none;flex-direction:column;gap:10px;padding:12px;display:flex}.dish-card[data-v-e3a48736]:hover{border-color:#ff6b6b4d;transform:none}.dish-img[data-v-e3a48736]{object-fit:cover;border-radius:var(--radius-sm);width:100%;height:120px}.dish-details[data-v-e3a48736]{flex-direction:column;flex:1;gap:6px;display:flex}.dish-title-row[data-v-e3a48736]{justify-content:space-between;align-items:flex-start;display:flex}.dish-title-row h4[data-v-e3a48736]{font-size:14px;font-weight:800}.dish-price[data-v-e3a48736]{color:var(--primary);font-size:15px;font-weight:800}.dish-desc[data-v-e3a48736]{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;height:28px;font-size:10px;line-height:1.3;display:-webkit-box;overflow:hidden}.dish-status-row[data-v-e3a48736]{color:var(--text-light);justify-content:space-between;align-items:center;font-size:9px;display:flex}.dish-actions[data-v-e3a48736]{gap:6px;margin-top:6px;display:flex}.btn-edit-dish[data-v-e3a48736],.btn-delete-dish[data-v-e3a48736]{flex:1;padding:6px;font-size:11px}.btn-edit-dish[data-v-e3a48736]{background:linear-gradient(135deg, var(--info), #2e86de)}.btn-delete-dish[data-v-e3a48736]{color:var(--danger);box-shadow:none;background:#ffffff0d;border:1px solid #ff475733}.btn-delete-dish[data-v-e3a48736]:hover{background:#ff475726}.modal-backdrop[data-v-e3a48736]{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-content[data-v-e3a48736]{background:var(--bg-card-solid);border-radius:var(--radius-sm);border:1px solid var(--border-glass);width:100%;max-width:400px;padding:24px}.dish-modal[data-v-e3a48736]{max-width:460px}.modal-content h3[data-v-e3a48736]{text-align:center;margin-bottom:16px;font-size:16px;font-weight:800}.modal-form[data-v-e3a48736]{flex-direction:column;gap:12px;display:flex}.form-group[data-v-e3a48736]{flex-direction:column;gap:4px;display:flex}.form-group label[data-v-e3a48736]{color:var(--text-muted);font-size:11px;font-weight:700}.form-group input[data-v-e3a48736],.form-group select[data-v-e3a48736],.form-group textarea[data-v-e3a48736]{border-radius:var(--radius-sm);border:1px solid var(--border-color);color:#fff;background:#0003;outline:none;width:100%;padding:8px 10px;font-family:inherit;font-size:13px}.form-group input[data-v-e3a48736]:focus,.form-group select[data-v-e3a48736]:focus,.form-group textarea[data-v-e3a48736]:focus{border-color:var(--primary)}.image-uploader-box[data-v-e3a48736]{border-radius:var(--radius-sm);background:#0000001a;align-items:center;gap:12px;padding:10px;display:flex}.uploaded-preview[data-v-e3a48736]{object-fit:cover;border-radius:var(--radius-sm);width:60px;height:60px}.upload-placeholder[data-v-e3a48736]{border:1px dashed var(--border-color);border-radius:var(--radius-sm);width:60px;height:60px;color:var(--text-light);justify-content:center;align-items:center;font-size:9px;display:flex}.upload-trigger[data-v-e3a48736]{background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;padding:6px 12px;font-size:10px;font-weight:700}.uploading-tip[data-v-e3a48736]{color:var(--secondary);font-size:9px}.modal-footer[data-v-e3a48736]{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}:root{--font-sans:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--primary:#ff6b6b;--primary-hover:#fa5252;--secondary:#feca57;--accent:#ff9f43;--success:#1dd1a1;--danger:#ff6b6b;--warning:#feca57;--info:#54a0ff;--bg-app:#f8f9fa;--bg-card:#ffffffd9;--bg-card-solid:#fff;--border-color:#0000000f;--border-glass:#fff9;--text-main:#2d3436;--text-muted:#888;--text-light:#b2bec3;--shadow-sm:0 4px 6px -1px #0000000d;--shadow-md:0 10px 15px -3px #00000014, 0 4px 6px -2px #0000000a;--shadow-lg:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--shadow-glow:0 0 15px #ff6b6b59;--radius:20px;--radius-sm:12px;--radius-lg:30px;--transition:all .3s cubic-bezier(.4, 0, .2, 1);--transition-spring:all .5s cubic-bezier(.175, .885, .32, 1.275);--safe-bottom:env(safe-area-inset-bottom,0px)}.dark-theme{--bg-app:#0b0b0e;--bg-card:#1a1a20bf;--bg-card-solid:#1e1e24;--border-color:#ffffff0d;--border-glass:#ffffff14;--text-main:#f1f2f6;--text-muted:#a4b0be;--text-light:#57606f}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-app);color:var(--text-main);width:100%;min-height:100vh;line-height:1.5;transition:background-color .3s,color .3s;overflow-x:hidden}.scroll-touch{-webkit-overflow-scrolling:touch}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);box-shadow:var(--shadow-sm);border-radius:var(--radius);transition:var(--transition-spring)}@media (hover:hover){.glass-card:hover{box-shadow:var(--shadow-md);border-color:#ff6b6b33;transform:translateY(-4px)}}.glass-bar{-webkit-backdrop-filter:blur(20px);background:#ffffffd9;border-top:1px solid #ffffff80;box-shadow:0 -10px 30px #0000000d}.dark-theme .glass-bar{background:#121216cc;border-top:1px solid #ffffff14;box-shadow:0 -10px 30px #0000004d}.gradient-text{background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-weight:800}.btn-premium{cursor:pointer;background:linear-gradient(135deg, var(--primary), #ff8787);color:#fff;transition:var(--transition-spring);border:none;border-radius:9999px;outline:none;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:15px;font-weight:600;display:inline-flex;box-shadow:0 4px 15px #ff6b6b4d}.btn-premium:hover{box-shadow:0 6px 20px #ff6b6b73}.btn-premium:active{transform:scale(.96)}.btn-secondary{color:var(--text-main);box-shadow:none;background:#0000000d}.dark-theme .btn-secondary{color:#fff;background:#ffffff0f}.btn-secondary:hover{box-shadow:none;background:#00000014}.dark-theme .btn-secondary:hover{background:#ffffff1a}.scale-spring{transition:var(--transition-spring)}.scale-spring:active{transform:scale(.92)}.badge-spring{animation:.3s cubic-bezier(.175,.885,.32,1.5) forwards badge-pop}@keyframes badge-pop{0%{transform:scale(0)}to{transform:scale(1)}}.glow-card{background:var(--bg-card-solid);border-radius:var(--radius);z-index:1;position:relative}.glow-card:before{content:"";border-radius:calc(var(--radius) + 2px);z-index:-1;filter:blur(4px);opacity:.8;background:linear-gradient(45deg,#ff6b6b,#feca57,#1dd1a1,#54a0ff,#ff6b6b) 0 0/400%;animation:12s linear infinite glow-move;position:absolute;inset:-2px}@keyframes glow-move{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.rush-flash{animation:1.5s infinite alternate pulse-danger}@keyframes pulse-danger{0%{border-color:#ff6b6b80;box-shadow:0 0 5px #ff6b6b66}to{border-color:#ff6b6b;box-shadow:0 0 20px #ff6b6bcc}}.step-line-active{background:linear-gradient(90deg, var(--primary), var(--secondary));background-size:200% 100%;animation:2s linear infinite step-loading}@keyframes step-loading{0%{background-position:100% 0}to{background-position:0 0}}.input-premium{border-radius:var(--radius-sm);border:1px solid var(--border-color);width:100%;color:var(--text-main);transition:var(--transition-spring);background:#fff9;outline:none;padding:14px 16px;font-family:inherit;font-size:15px}.input-premium:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 4px #ff6b6b1a}.dark-theme .input-premium{color:#fff;background:#0000004d;border-color:#ffffff14}.dark-theme .input-premium:focus{background:#0006}html{overscroll-behavior:none}@media (hover:none) and (pointer:coarse){.btn-premium:active,.qty-btn:active,.category-item:active,.nav-btn:active,.action-btn:active{opacity:.7}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#0000000a 25%,#00000014 50%,#0000000a 75%) 0 0/200% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.toast-container{top:calc(16px + env(safe-area-inset-top,0px));z-index:9999;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{color:#fff;-webkit-backdrop-filter:blur(16px);pointer-events:auto;text-align:center;border-radius:9999px;max-width:80vw;padding:10px 20px;font-size:13px;font-weight:600;animation:.35s cubic-bezier(.175,.885,.32,1.275) toast-in;box-shadow:0 8px 24px #00000026}.toast.success{background:#1dd1a1eb}.toast.error{background:#ff4757eb}.toast.info{background:#54a0ffeb}.toast.warning{background:#ffa502eb}.toast-leave-active{animation:.25s forwards toast-out}@keyframes toast-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}@supports (padding:env(safe-area-inset-bottom)){body{padding-bottom:env(safe-area-inset-bottom)}}.img-lazy{opacity:0;transition:opacity .3s}.img-lazy.loaded{opacity:1}html,body{max-width:100vw;overflow-x:hidden}@media screen and (width<=768px){input[type=text],input[type=number],input[type=search],select,textarea{font-size:16px!important}}
