.modal-overlay[data-v-9ef13a94]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:9999;animation:fadeIn-9ef13a94 .2s ease-out}.modal-container[data-v-9ef13a94]{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:90%;max-width:420px;overflow:hidden;animation:slideUp-9ef13a94 .3s ease-out}.modal-header[data-v-9ef13a94]{padding:24px 24px 16px;display:flex;align-items:center;gap:12px}.modal-icon[data-v-9ef13a94]{font-size:32px;flex-shrink:0}.modal-title[data-v-9ef13a94]{margin:0;font-size:20px;font-weight:600;color:#1a1a1a;flex:1}.btn-close[data-v-9ef13a94]{width:32px;height:32px;border:none;background:#f0f0f0;border-radius:50%;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.btn-close[data-v-9ef13a94]:hover{background:#e0e0e0;transform:scale(1.1)}.modal-body[data-v-9ef13a94]{padding:0 24px 24px}.modal-message[data-v-9ef13a94]{margin:0;font-size:15px;line-height:1.6;color:#666;white-space:pre-line}.modal-footer[data-v-9ef13a94]{padding:16px 24px 24px;display:flex;gap:12px;justify-content:flex-end}.btn[data-v-9ef13a94]{padding:10px 24px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;min-width:80px}.btn-cancel[data-v-9ef13a94]{background:#f5f5f5;color:#666}.btn-cancel[data-v-9ef13a94]:hover{background:#e8e8e8}.btn-confirm[data-v-9ef13a94]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-confirm[data-v-9ef13a94]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-confirm[data-v-9ef13a94]:active{transform:translateY(0)}.btn-danger[data-v-9ef13a94]{background:linear-gradient(135deg,#f093fb,#f5576c)}.btn-danger[data-v-9ef13a94]:hover{box-shadow:0 4px 12px #f5576c66}@keyframes fadeIn-9ef13a94{0%{opacity:0}to{opacity:1}}@keyframes slideUp-9ef13a94{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,Microsoft YaHei,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text-primary);line-height:1.6;min-height:100vh}#app{min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#c1c1d0;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#a8a8b8}button{font-family:inherit;cursor:pointer;transition:var(--transition)}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font-family:inherit;transition:var(--transition)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.fade-in{animation:fadeIn .4s ease-out}.slide-up{animation:slideUp .5s ease-out}.scan-container[data-v-fe1ebe6e]{width:100%;max-width:500px;padding:20px;text-align:center;margin:0 auto;animation:fadeIn .4s ease-out}.header[data-v-fe1ebe6e]{margin-bottom:20px}.header-top[data-v-fe1ebe6e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:10px}.btn-back[data-v-fe1ebe6e]{padding:8px 16px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-sm);font-size:14px;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:4px}.btn-back[data-v-fe1ebe6e]:hover{background:#fff3;border-color:#ffffff80}.header h1[data-v-fe1ebe6e]{font-size:22px;font-weight:600;margin:0;flex:1;text-align:center}.btn-logout[data-v-fe1ebe6e]{padding:8px 16px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-sm);font-size:14px;cursor:pointer;transition:var(--transition)}.btn-logout[data-v-fe1ebe6e]:hover{background:#fff3;border-color:#ffffff80}.header p[data-v-fe1ebe6e]{font-size:14px;color:#aaa}#reader[data-v-fe1ebe6e]{width:100%;max-width:400px;margin:0 auto;border-radius:var(--radius-md);overflow:hidden}[data-v-fe1ebe6e] #reader__scan_region{background:#000}[data-v-fe1ebe6e] #reader__dashboard{background:transparent!important;border:none!important;padding:10px 0!important}[data-v-fe1ebe6e] #reader__dashboard_section_csr button{background:var(--gradient-primary)!important;color:#fff!important;border:none!important;border-radius:25px!important;padding:10px 28px!important;font-size:15px!important;font-weight:600!important;cursor:pointer;margin:5px!important;transition:var(--transition)!important}[data-v-fe1ebe6e] #reader__dashboard_section_csr select{background:#ffffff26!important;color:#fff!important;border:1px solid rgba(255,255,255,.3)!important;border-radius:var(--radius-sm)!important;padding:8px!important;margin:5px!important;max-width:280px}[data-v-fe1ebe6e] #reader__dashboard_section_csr select option{background:#333;color:#fff}[data-v-fe1ebe6e] #reader__dashboard_section_csr span,[data-v-fe1ebe6e] #reader__header_message,[data-v-fe1ebe6e] #reader__status_span{color:#aaa!important;font-size:13px!important}.result-modal[data-v-fe1ebe6e]{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;z-index:1000;display:flex;justify-content:center;align-items:center;animation:fadeIn .2s ease-out}.result-content[data-v-fe1ebe6e]{background:var(--bg-card);color:var(--text-primary);padding:30px;border-radius:var(--radius-xl);max-width:90%;width:400px;text-align:center;box-shadow:var(--shadow-xl);animation:slideUp .3s ease-out}.result-content h2[data-v-fe1ebe6e]{color:var(--success);margin-bottom:20px;font-size:22px}.result-data[data-v-fe1ebe6e]{background:var(--bg);padding:15px;border-radius:var(--radius-md);margin:20px 0;word-break:break-all;font-family:monospace;font-size:14px;max-height:200px;overflow-y:auto}.result-format[data-v-fe1ebe6e]{font-size:12px;color:var(--text-muted);margin-bottom:10px}.price-section[data-v-fe1ebe6e]{background:#667eea0d;border:2px solid rgba(102,126,234,.2);border-radius:var(--radius-md);padding:20px;margin:20px 0}.price-label[data-v-fe1ebe6e]{font-size:14px;color:var(--text-secondary);margin-bottom:10px;font-weight:600}.price-input-group[data-v-fe1ebe6e]{display:flex;align-items:center;justify-content:center;gap:8px}.price-symbol[data-v-fe1ebe6e]{font-size:24px;color:var(--primary);font-weight:700}.price-input[data-v-fe1ebe6e]{width:150px;padding:10px 15px;font-size:24px;border:2px solid var(--border);border-radius:var(--radius-sm);text-align:center;outline:none;transition:var(--transition);font-weight:600;color:var(--text-primary);background:var(--bg-card)}.price-input[data-v-fe1ebe6e]:focus{border-color:var(--primary);box-shadow:0 0 0 4px #667eea26}.price-display[data-v-fe1ebe6e]{font-size:32px;color:var(--primary);font-weight:700;margin:10px 0}.controls[data-v-fe1ebe6e]{display:flex;gap:15px;justify-content:center;margin-top:15px}.btn[data-v-fe1ebe6e]{padding:12px 30px;border:none;border-radius:25px;font-size:16px;font-weight:600;cursor:pointer;transition:var(--transition);outline:none}.btn-primary[data-v-fe1ebe6e]{background:var(--gradient-primary);color:#fff}.btn-primary[data-v-fe1ebe6e]:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.btn-danger[data-v-fe1ebe6e]{background:var(--gradient-danger);color:#fff}.btn-white-primary[data-v-fe1ebe6e]{background:var(--gradient-primary);color:#fff}.btn-white-secondary[data-v-fe1ebe6e]{background:var(--bg);color:var(--text-secondary);border:1px solid var(--border)}.status-text[data-v-fe1ebe6e]{margin-top:15px;font-size:14px;color:#aaa}.error-tip[data-v-fe1ebe6e]{background:#f4433626;border:1px solid rgba(244,67,54,.4);border-radius:var(--radius-md);padding:15px;margin:15px 0;font-size:13px;color:#ff8a80;text-align:left;line-height:1.6}.https-badge[data-v-fe1ebe6e]{display:inline-block;border-radius:var(--radius-sm);padding:2px 8px;font-size:11px;margin-left:8px}.https-badge.secure[data-v-fe1ebe6e]{background:#00c8534d;border:1px solid rgba(0,200,83,.4);color:#69f0ae}.https-badge.warning[data-v-fe1ebe6e]{background:#f4433633;border:1px solid rgba(244,67,54,.4);color:#ff8a80}@media (max-width: 480px){.header h1[data-v-fe1ebe6e]{font-size:18px}.btn[data-v-fe1ebe6e]{padding:10px 20px;font-size:14px}#reader[data-v-fe1ebe6e]{max-width:100%}}.login-container[data-v-81cc960c]{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.brand-section[data-v-81cc960c]{text-align:center;margin-bottom:30px}.brand-logo[data-v-81cc960c]{font-size:48px;margin-bottom:10px}.brand-name[data-v-81cc960c]{font-size:32px;font-weight:700;color:#fff;margin:0 0 5px;text-shadow:0 2px 10px rgba(0,0,0,.2)}.brand-slogan[data-v-81cc960c]{font-size:14px;color:#ffffffd9;margin:0}.entry-title[data-v-81cc960c]{text-align:center;color:#fff;font-size:18px;margin-bottom:20px;opacity:.9}.cards-wrapper[data-v-81cc960c]{display:flex;gap:20px;flex-wrap:wrap;justify-content:center}.entry-card[data-v-81cc960c]{background:#fffffff2;border-radius:16px;padding:30px 35px;cursor:pointer;display:flex;align-items:center;gap:20px;min-width:280px;box-shadow:0 10px 40px #00000026;transition:all .3s ease}.entry-card[data-v-81cc960c]:hover{transform:translateY(-5px);box-shadow:0 15px 50px #0003}.card-admin[data-v-81cc960c]{border:2px solid #667eea}.card-admin[data-v-81cc960c]:hover{background:linear-gradient(135deg,#667eea20,#764ba220)}.card-shop[data-v-81cc960c]{border:2px solid #f093fb}.card-shop[data-v-81cc960c]:hover{background:linear-gradient(135deg,#f093fb20,#f5576c20)}.card-icon[data-v-81cc960c]{font-size:40px}.card-content[data-v-81cc960c]{flex:1}.card-title[data-v-81cc960c]{font-size:20px;font-weight:600;color:#1a1a2e;margin:0 0 5px}.card-desc[data-v-81cc960c]{font-size:14px;color:#666;margin:0}.card-arrow[data-v-81cc960c]{font-size:24px;color:#999;transition:transform .3s}.entry-card:hover .card-arrow[data-v-81cc960c]{transform:translate(5px);color:#667eea}.card-shop:hover .card-arrow[data-v-81cc960c]{color:#f093fb}.visitor-entry[data-v-81cc960c]{margin-top:40px;text-align:center}.btn-visitor[data-v-81cc960c]{background:linear-gradient(135deg,#ff6b6b,#ee5a24);border:none;color:#fff;padding:16px 60px;border-radius:30px;font-size:18px;font-weight:800;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 30px #ee5a2480;letter-spacing:1px}.btn-visitor[data-v-81cc960c]:hover{background:linear-gradient(135deg,#ff8787,#fa5252);transform:translateY(-4px) scale(1.05);box-shadow:0 12px 40px #ee5a2499}.visitor-hint[data-v-81cc960c]{margin-top:12px;font-size:13px;color:#ffffffb3}.login-box[data-v-81cc960c]{background:#fff;border-radius:20px;padding:35px 40px;width:100%;max-width:420px;box-shadow:0 20px 60px #0003}.login-shop[data-v-81cc960c]{border-top:4px solid #f093fb}.form-header[data-v-81cc960c]{margin-bottom:25px}.back-btn[data-v-81cc960c]{background:none;border:none;color:#667eea;font-size:14px;cursor:pointer;padding:0;margin-bottom:15px;display:flex;align-items:center;gap:5px;transition:color .2s}.back-btn[data-v-81cc960c]:hover{color:#764ba2}.back-arrow[data-v-81cc960c]{font-size:16px}.form-title-group[data-v-81cc960c]{text-align:center}.form-title[data-v-81cc960c]{font-size:22px;font-weight:600;color:#1a1a2e;margin:0 0 5px}.form-subtitle[data-v-81cc960c]{font-size:14px;color:#999;margin:0}.login-form[data-v-81cc960c]{display:flex;flex-direction:column;gap:18px}.form-group[data-v-81cc960c]{display:flex;flex-direction:column;gap:6px}.form-group label[data-v-81cc960c]{font-size:14px;font-weight:500;color:#333}.form-group input[data-v-81cc960c]{padding:12px 15px;border:2px solid #e8e8ef;border-radius:10px;font-size:15px;transition:border-color .2s}.form-group input[data-v-81cc960c]:focus{outline:none;border-color:#667eea}.form-group input[data-v-81cc960c]:disabled{background:#f5f5f5;color:#999}.password-input-wrapper[data-v-81cc960c]{position:relative}.password-input-wrapper input[data-v-81cc960c]{width:100%;padding-right:45px;box-sizing:border-box}.code-input-wrapper[data-v-81cc960c]{position:relative}.code-input-wrapper input[data-v-81cc960c]{width:100%;padding-right:45px;box-sizing:border-box}.eye-button[data-v-81cc960c]{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;cursor:pointer;padding:5px}.validation-status[data-v-81cc960c]{font-size:12px;margin-top:2px}.validation-status.validating[data-v-81cc960c]{color:#999}.validation-status.invalid[data-v-81cc960c]{color:#ef4444}.remember-me[data-v-81cc960c]{display:flex;align-items:center}.remember-me input[type=checkbox][data-v-81cc960c]{width:18px;height:18px;margin-right:8px;cursor:pointer}.remember-me span[data-v-81cc960c]{font-size:14px;color:#666;cursor:pointer}.btn-login[data-v-81cc960c]{padding:14px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s}.btn-login[data-v-81cc960c]:disabled{opacity:.7;cursor:not-allowed}.btn-admin[data-v-81cc960c]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-admin[data-v-81cc960c]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.btn-shop[data-v-81cc960c]{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.btn-shop[data-v-81cc960c]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #f093fb66}.btn-fingerprint[data-v-81cc960c]{padding:12px;background:#f0f2f5;border:2px solid #e8e8ef;border-radius:12px;font-size:15px;cursor:pointer;transition:all .2s;color:#666}.btn-fingerprint[data-v-81cc960c]:hover:not(:disabled){background:#667eea15;border-color:#667eea;color:#667eea}.btn-change-password[data-v-81cc960c]{background:none;border:none;color:#999;font-size:13px;cursor:pointer;padding:5px;transition:color .2s}.btn-change-password[data-v-81cc960c]:hover:not(:disabled){color:#667eea;text-decoration:underline}.error-msg[data-v-81cc960c]{background:#fef2f2;color:#ef4444;padding:12px 15px;border-radius:10px;font-size:14px;text-align:center}.shop-tips[data-v-81cc960c]{text-align:center;margin-top:10px}.tip-item[data-v-81cc960c]{font-size:13px;color:#999;margin:8px 0}.link[data-v-81cc960c]{color:#667eea;cursor:pointer;text-decoration:none}.link[data-v-81cc960c]:hover{text-decoration:underline}.modal-overlay[data-v-81cc960c]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-81cc960c]{background:#fff;border-radius:16px;padding:30px;width:90%;max-width:400px;box-shadow:0 20px 60px #0000004d}.modal-title[data-v-81cc960c]{font-size:20px;font-weight:600;color:#1a1a2e;text-align:center;margin:0 0 25px}.modal-buttons[data-v-81cc960c]{display:flex;gap:15px;margin-top:20px}.btn-cancel[data-v-81cc960c]{flex:1;padding:12px;background:#f5f5f5;border:none;border-radius:10px;font-size:15px;cursor:pointer;transition:background .2s}.btn-cancel[data-v-81cc960c]:hover{background:#e8e8ef}.btn-submit[data-v-81cc960c]{flex:1;padding:12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;font-size:15px;cursor:pointer;transition:opacity .2s}.btn-submit[data-v-81cc960c]:disabled{opacity:.6;cursor:not-allowed}.btn-submit[data-v-81cc960c]:hover:not(:disabled){opacity:.9}@media (max-width: 640px){.cards-wrapper[data-v-81cc960c]{flex-direction:column;width:100%}.entry-card[data-v-81cc960c]{min-width:100%}.login-box[data-v-81cc960c]{padding:25px 20px}.brand-name[data-v-81cc960c]{font-size:28px}}.home-container[data-v-782810d3]{min-height:100vh;background:var(--bg)}.header[data-v-782810d3]{background:var(--gradient-primary);padding:0;position:sticky;top:0;z-index:100;box-shadow:0 4px 20px #667eea4d}.header-content[data-v-782810d3]{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.header-left[data-v-782810d3]{display:flex;align-items:center;gap:1.5rem}.header-right[data-v-782810d3]{display:flex;align-items:center}.logo[data-v-782810d3]{color:#fff;font-size:1.5rem;font-weight:800;letter-spacing:-.5px;margin:0;display:flex;align-items:center;gap:8px}.header-datetime[data-v-782810d3]{display:flex;flex-direction:column;gap:2px}.header-datetime .date[data-v-782810d3]{color:#ffffffd9;font-size:.85rem;font-weight:500}.header-datetime .time[data-v-782810d3]{color:#fff;font-size:1.1rem;font-weight:700;font-family:Courier New,monospace;letter-spacing:1px}.weather-card[data-v-782810d3]{display:flex;align-items:flex-start;gap:10px;background:#ffffff26;padding:10px 16px;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);min-width:160px}.weather-card.loading[data-v-782810d3]{padding:8px 12px}.weather-icon[data-v-782810d3]{font-size:1.8rem;line-height:1}.weather-info[data-v-782810d3]{display:flex;flex-direction:column;gap:2px}.weather-top[data-v-782810d3]{display:flex;align-items:baseline;gap:8px}.weather-info .temperature[data-v-782810d3]{color:#fff;font-size:1.3rem;font-weight:700;line-height:1}.weather-info .city[data-v-782810d3]{color:#ffffffbf;font-size:.78rem}.weather-info .text[data-v-782810d3]{color:#ffffffd9;font-size:.82rem}.weather-loading[data-v-782810d3]{color:#fffc;font-size:.8rem}.user-info[data-v-782810d3]{display:flex;align-items:center;gap:12px}.username[data-v-782810d3]{color:#ffffffe6;font-size:.95rem;font-weight:500}.btn-logout[data-v-782810d3]{padding:8px 18px;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);font-size:.9rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-logout[data-v-782810d3]:hover{background:#ffffff40;transform:translateY(-1px)}.btn-change-pwd[data-v-782810d3]{padding:8px 16px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);font-size:.85rem;font-weight:500}.btn-change-pwd[data-v-782810d3]:hover{background:#fff3}.btn-my-info[data-v-782810d3]{padding:8px 16px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);font-size:.85rem;font-weight:500}.btn-my-info[data-v-782810d3]:hover{background:#fff3}.main-content[data-v-782810d3]{max-width:1200px;margin:0 auto;padding:2rem}.menu-grid[data-v-782810d3]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.menu-card[data-v-782810d3]{background:var(--bg-card);border-radius:var(--radius-lg);padding:2rem;cursor:pointer;transition:var(--transition);position:relative;box-shadow:var(--shadow-md);border:1px solid var(--border);overflow:hidden}.menu-card[data-v-782810d3]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary);transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.menu-card[data-v-782810d3]:hover:before{transform:scaleX(1)}.menu-card[data-v-782810d3]:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--primary-light)}.card-icon[data-v-782810d3]{font-size:2.8rem;margin-bottom:1rem;display:inline-block;background:linear-gradient(135deg,#667eea15,#764ba215);padding:12px;border-radius:var(--radius-md);line-height:1}.card-title[data-v-782810d3]{color:var(--text-primary);font-size:1.3rem;font-weight:700;margin:0 0 .5rem}.card-desc[data-v-782810d3]{color:var(--text-muted);font-size:.9rem;margin:0;line-height:1.5}.card-arrow[data-v-782810d3]{position:absolute;right:1.5rem;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--primary);opacity:0;transition:var(--transition)}.menu-card:hover .card-arrow[data-v-782810d3]{opacity:1;right:1.2rem}.stats-section[data-v-782810d3]{background:var(--bg-card);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-md);border:1px solid var(--border)}.section-title[data-v-782810d3]{color:var(--text-primary);font-size:1.2rem;font-weight:700;margin:0 0 1.5rem;display:flex;align-items:center;gap:8px}.stats-grid[data-v-782810d3]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.stat-item[data-v-782810d3]{text-align:center;padding:1.8rem 1.5rem;border-radius:var(--radius-md);color:#fff;position:relative;overflow:hidden;transition:var(--transition)}.stat-item[data-v-782810d3]:nth-child(1){background:var(--gradient-primary)}.stat-item[data-v-782810d3]:nth-child(2){background:var(--gradient-success)}.stat-item[data-v-782810d3]:nth-child(3){background:var(--gradient-warning)}.stat-item[data-v-782810d3]:nth-child(4){background:var(--gradient-secondary)}.stat-item.clickable[data-v-782810d3]{cursor:pointer}.stat-item.clickable[data-v-782810d3]:hover:after{content:"→";position:absolute;bottom:12px;right:16px;font-size:1.2rem;opacity:.7}.stat-item[data-v-782810d3]:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.stat-value[data-v-782810d3]{font-size:2.2rem;font-weight:800;margin-bottom:.3rem;letter-spacing:-1px}.stat-label[data-v-782810d3]{font-size:.9rem;opacity:.9;font-weight:500}@media (max-width: 767px){.header-content[data-v-782810d3]{flex-direction:column;gap:.75rem;padding:.75rem 1rem}.header-left[data-v-782810d3]{flex-direction:column;gap:.5rem;align-items:center}.logo[data-v-782810d3]{font-size:1.2rem}.header-datetime[data-v-782810d3]{flex-direction:row;gap:8px}.header-datetime .date[data-v-782810d3],.header-datetime .time[data-v-782810d3]{font-size:.8rem}.header-right[data-v-782810d3]{order:2}.weather-card[data-v-782810d3]{padding:6px 10px}.weather-icon[data-v-782810d3]{width:24px;height:24px}.weather-info .temperature[data-v-782810d3]{font-size:1rem}.weather-info .city[data-v-782810d3]{font-size:.7rem}.user-info[data-v-782810d3]{width:100%;justify-content:center;flex-wrap:wrap;gap:.5rem}.username[data-v-782810d3]{width:100%;text-align:center;font-size:.82rem}.btn-my-info[data-v-782810d3],.btn-change-pwd[data-v-782810d3],.btn-logout[data-v-782810d3]{padding:.5rem .75rem;font-size:.78rem;flex:1;text-align:center}}.menu-grid[data-v-782810d3]{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:1.5rem}@media (min-width: 768px){.menu-grid[data-v-782810d3]{grid-template-columns:repeat(2,1fr);gap:1.25rem}}@media (min-width: 1024px){.menu-grid[data-v-782810d3]{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem}}.menu-card[data-v-782810d3]{padding:1.25rem;min-height:100px}@media (min-width: 768px){.menu-card[data-v-782810d3]{padding:1.5rem;min-height:120px}}@media (min-width: 1024px){.menu-card[data-v-782810d3]{padding:2rem}}.card-icon[data-v-782810d3]{font-size:2rem;margin-bottom:.75rem;padding:10px}@media (min-width: 768px){.card-icon[data-v-782810d3]{font-size:2.5rem;margin-bottom:1rem;padding:12px}}.card-title[data-v-782810d3]{font-size:1.1rem}@media (min-width: 768px){.card-title[data-v-782810d3]{font-size:1.2rem}}@media (min-width: 1024px){.card-title[data-v-782810d3]{font-size:1.3rem}}.card-desc[data-v-782810d3]{font-size:.82rem}@media (min-width: 768px){.card-desc[data-v-782810d3]{font-size:.9rem}}.stats-section[data-v-782810d3]{padding:1.25rem}@media (min-width: 768px){.stats-section[data-v-782810d3]{padding:1.5rem}}@media (min-width: 1024px){.stats-section[data-v-782810d3]{padding:2rem}}.section-title[data-v-782810d3]{font-size:1.05rem;margin-bottom:1rem}@media (min-width: 768px){.section-title[data-v-782810d3]{font-size:1.1rem;margin-bottom:1.25rem}}.stats-grid[data-v-782810d3]{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}@media (min-width: 768px){.stats-grid[data-v-782810d3]{grid-template-columns:repeat(2,1fr);gap:1rem}}@media (min-width: 1024px){.stats-grid[data-v-782810d3]{grid-template-columns:repeat(4,1fr);gap:1.5rem}}.stat-item[data-v-782810d3]{padding:1.25rem 1rem;text-align:center}@media (min-width: 768px){.stat-item[data-v-782810d3]{padding:1.5rem 1.25rem}}@media (min-width: 1024px){.stat-item[data-v-782810d3]{padding:1.8rem 1.5rem}}.stat-value[data-v-782810d3]{font-size:1.5rem;margin-bottom:.2rem}@media (min-width: 768px){.stat-value[data-v-782810d3]{font-size:1.8rem}}@media (min-width: 1024px){.stat-value[data-v-782810d3]{font-size:2.2rem}}.stat-label[data-v-782810d3]{font-size:.78rem}@media (min-width: 768px){.stat-label[data-v-782810d3]{font-size:.85rem}}@media (min-width: 1024px){.stat-label[data-v-782810d3]{font-size:.9rem}}.main-content[data-v-782810d3]{padding:1rem}@media (min-width: 768px){.main-content[data-v-782810d3]{padding:1.5rem}}@media (min-width: 1024px){.main-content[data-v-782810d3]{padding:2rem;max-width:1200px;margin:0 auto}}.modal-overlay[data-v-782810d3]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:flex-end;z-index:1000;animation:fadeIn .3s ease-out}@media (min-width: 768px){.modal-overlay[data-v-782810d3]{align-items:center}}.modal-container[data-v-782810d3]{background:#fff;border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-width:100%;box-shadow:var(--shadow-xl);overflow:hidden;animation:slideUp .4s ease-out;max-height:90vh;overflow-y:auto}@media (min-width: 768px){.modal-container[data-v-782810d3]{width:90%;max-width:450px;border-radius:var(--radius-lg);max-height:80vh}}@media (min-width: 1024px){.modal-container[data-v-782810d3]{max-width:500px}}.modal-header[data-v-782810d3]{padding:1rem 1.25rem;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#fff;z-index:1}@media (min-width: 768px){.modal-header[data-v-782810d3]{padding:1.25rem 1.5rem}}.modal-header h2[data-v-782810d3]{margin:0;color:var(--text-primary);font-size:1.1rem;font-weight:700}@media (min-width: 768px){.modal-header h2[data-v-782810d3]{font-size:1.2rem}}.btn-close[data-v-782810d3]{background:none;border:none;font-size:1.5rem;color:var(--text-muted);cursor:pointer;padding:4px 8px;border-radius:50%;transition:var(--transition);width:36px;height:36px;display:flex;align-items:center;justify-content:center}.btn-close[data-v-782810d3]:hover{background:#f0f0f5;color:var(--text-primary)}.modal-body[data-v-782810d3]{padding:1.25rem}@media (min-width: 768px){.modal-body[data-v-782810d3]{padding:1.5rem}}.form-group[data-v-782810d3]{margin-bottom:1rem}.form-group[data-v-782810d3]:last-child{margin-bottom:0}.form-group label[data-v-782810d3]{display:block;margin-bottom:.4rem;color:var(--text-primary);font-weight:600;font-size:.85rem}.form-group input[data-v-782810d3]{width:100%;padding:.75rem .875rem;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;color:var(--text-primary);transition:var(--transition);background:#f8f9ff;min-height:44px}@media (min-width: 1024px){.form-group input[data-v-782810d3]{padding:.6rem .875rem;font-size:.875rem}}.form-group input[data-v-782810d3]:focus{outline:none;border-color:var(--primary);background:#fff;box-shadow:0 0 0 4px #667eea1a}.disabled-input[data-v-782810d3]{background:#f0f0f5!important;color:var(--text-muted)!important;cursor:not-allowed!important}.password-input-wrapper[data-v-782810d3]{position:relative;display:flex;align-items:center}.password-input-wrapper input[data-v-782810d3]{flex:1;padding-right:3rem}.eye-button[data-v-782810d3]{position:absolute;right:.5rem;background:none;border:none;cursor:pointer;font-size:1.1rem;padding:.5rem;transition:var(--transition);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.eye-button[data-v-782810d3]:hover{background:#f0f0f5}.password-value[data-v-782810d3]{display:flex;align-items:center;gap:.5rem}.password-value>span[data-v-782810d3]{flex:1;word-break:break-all}.eye-btn[data-v-782810d3]{background:none;border:none;cursor:pointer;font-size:1.1rem;padding:2px 6px;vertical-align:middle}.error-message[data-v-782810d3]{color:var(--danger);background:#ef444414;padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.85rem;margin-top:.5rem;border:1px solid rgba(239,68,68,.15);font-weight:500}.modal-footer[data-v-782810d3]{padding:1rem 1.25rem;padding-bottom:max(1rem,env(safe-area-inset-bottom));display:flex;gap:.75rem;justify-content:flex-end;position:sticky;bottom:0;background:#fff;border-top:1px solid var(--border)}@media (min-width: 768px){.modal-footer[data-v-782810d3]{padding:1rem 1.5rem 1.5rem}}.btn[data-v-782810d3]{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition);min-height:44px;flex:1;text-align:center}@media (min-width: 768px){.btn[data-v-782810d3]{flex:0 0 auto;padding:.75rem 1.75rem;font-size:.875rem}}.btn-cancel[data-v-782810d3]{background:#f0f0f5;color:var(--text-secondary)}.btn-cancel[data-v-782810d3]:hover{background:#e4e4ed}.btn-confirm[data-v-782810d3]{background:var(--gradient-primary);color:#fff}.btn-confirm[data-v-782810d3]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.info-grid[data-v-782810d3]{display:flex;flex-direction:column;gap:1rem}.info-item[data-v-782810d3]{display:flex;flex-direction:column;gap:.25rem}.info-item label[data-v-782810d3]{color:var(--text-muted);font-size:.82rem;font-weight:500}.info-value[data-v-782810d3]{color:var(--text-primary);font-size:.95rem;font-weight:600;padding:.625rem .875rem;background:#f8f9ff;border-radius:var(--radius-sm);border:2px solid var(--border);word-break:break-word}.password-value[data-v-782810d3]{letter-spacing:2px}.shop-container[data-v-ad1fe9fa]{min-height:100vh;background:linear-gradient(135deg,#f5f3ff,#eef2ff);display:flex;align-items:center;justify-content:center;cursor:pointer}.shop-content[data-v-ad1fe9fa]{text-align:center;padding:40px;animation:fadeIn-ad1fe9fa .5s ease}@keyframes fadeIn-ad1fe9fa{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.shop-header[data-v-ad1fe9fa]{margin-bottom:30px}.shop-header h1[data-v-ad1fe9fa]{font-size:28px;font-weight:700;color:#1f2937;margin:0 0 8px}.shop-header p[data-v-ad1fe9fa]{font-size:14px;color:#7c3aed;margin:0}.shop-enter[data-v-ad1fe9fa]{background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:40px 60px;border-radius:24px;box-shadow:0 8px 32px #7c3aed26}.enter-icon[data-v-ad1fe9fa]{font-size:80px;margin-bottom:16px;animation:bounce-ad1fe9fa 2s ease-in-out infinite}@keyframes bounce-ad1fe9fa{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.enter-text[data-v-ad1fe9fa]{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 8px}.enter-hint[data-v-ad1fe9fa]{font-size:13px;color:#9ca3af;margin:0}.shop-home[data-v-6535ae8b]{min-height:100vh;background:linear-gradient(180deg,#f5f3ff,#faf5ff);padding-bottom:80px}.search-header[data-v-6535ae8b]{padding:12px 16px;background:linear-gradient(135deg,#7c3aed,#a855f7);position:sticky;top:0;z-index:100;box-shadow:0 4px 20px #7c3aed4d}.search-bar[data-v-6535ae8b]{display:flex;align-items:center;background:#fffffff2;border-radius:24px;padding:10px 16px;gap:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search-icon[data-v-6535ae8b]{font-size:18px;opacity:.6}.search-bar input[data-v-6535ae8b]{flex:1;border:none;background:transparent;font-size:15px;color:#1f2937;outline:none}.search-bar input[data-v-6535ae8b]::placeholder{color:#9ca3af}.scan-btn[data-v-6535ae8b]{font-size:20px;cursor:pointer;opacity:.7}.login-float-bar[data-v-6535ae8b]{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:linear-gradient(135deg,#fef3c7,#fde68a);border-bottom:1px solid rgba(251,191,36,.3);animation:slideDown-6535ae8b .3s ease;transition:all .3s ease}.login-float-bar.hide[data-v-6535ae8b]{transform:translateY(-100%);opacity:0;pointer-events:none}@keyframes slideDown-6535ae8b{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.float-content[data-v-6535ae8b]{display:flex;align-items:center;gap:8px}.float-icon[data-v-6535ae8b]{font-size:20px;animation:bounce-6535ae8b 1s infinite}@keyframes bounce-6535ae8b{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.float-text[data-v-6535ae8b]{font-size:14px;color:#92400e;font-weight:500}.float-btn[data-v-6535ae8b]{padding:6px 16px;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #7c3aed4d}.category-scroll[data-v-6535ae8b]{padding:16px 0 12px;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.category-list[data-v-6535ae8b]{display:flex;gap:8px;padding:0 16px;overflow-x:auto;scrollbar-width:none}.category-list[data-v-6535ae8b]::-webkit-scrollbar{display:none}.category-item[data-v-6535ae8b]{display:flex;flex-direction:column;align-items:center;min-width:60px;padding:12px 8px;border-radius:16px;background:#fff9;cursor:pointer;transition:all .3s ease;border:2px solid transparent}.category-item[data-v-6535ae8b]:hover{background:#ffffffe6;transform:translateY(-2px)}.category-item.active[data-v-6535ae8b]{background:linear-gradient(135deg,#7c3aed,#a855f7);border-color:transparent}.category-item.active .cat-name[data-v-6535ae8b]{color:#fff}.cat-icon[data-v-6535ae8b]{font-size:28px;margin-bottom:4px}.cat-name[data-v-6535ae8b]{font-size:12px;color:#4b5563;font-weight:500;white-space:nowrap}.section[data-v-6535ae8b]{padding:20px 16px}.section-header[data-v-6535ae8b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-title[data-v-6535ae8b]{font-size:18px;font-weight:600;color:#1f2937;margin:0}.more-btn[data-v-6535ae8b]{font-size:14px;color:#7c3aed;cursor:pointer}.recommend-scroll[data-v-6535ae8b]{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none}.recommend-scroll[data-v-6535ae8b]::-webkit-scrollbar{display:none}.recommend-card[data-v-6535ae8b]{min-width:140px;background:#ffffffe6;border-radius:16px;overflow:hidden;box-shadow:0 4px 16px #00000014;cursor:pointer;transition:all .3s ease}.recommend-card[data-v-6535ae8b]:hover{transform:translateY(-4px);box-shadow:0 8px 24px #7c3aed33}.recommend-card .card-image[data-v-6535ae8b]{position:relative;height:120px;background:#f3f4f6;display:flex;align-items:center;justify-content:center}.recommend-card .card-image img[data-v-6535ae8b]{width:100%;height:100%;object-fit:cover}.recommend-card .card-image .placeholder[data-v-6535ae8b]{font-size:48px}.tag-discount[data-v-6535ae8b]{position:absolute;top:8px;left:8px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:11px;padding:3px 6px;border-radius:8px;font-weight:600}.recommend-card .card-info[data-v-6535ae8b]{padding:12px}.recommend-card .product-name[data-v-6535ae8b]{font-size:14px;color:#1f2937;margin:0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recommend-card .product-price[data-v-6535ae8b]{margin:0;display:flex;align-items:baseline;gap:6px}.price-current[data-v-6535ae8b]{font-size:16px;font-weight:700;color:#ef4444}.price-original[data-v-6535ae8b]{font-size:12px;color:#9ca3af;text-decoration:line-through}.promotion-banner[data-v-6535ae8b]{margin:0 16px 20px;background:linear-gradient(135deg,#f97316,#ea580c);border-radius:20px;overflow:hidden;box-shadow:0 8px 32px #f9731666;cursor:pointer}.banner-content[data-v-6535ae8b]{display:flex;padding:20px;position:relative}.banner-left h3[data-v-6535ae8b]{font-size:20px;color:#fff;margin:0 0 6px;font-weight:700}.banner-left p[data-v-6535ae8b]{font-size:13px;color:#ffffffe6;margin:0 0 12px}.banner-btn[data-v-6535ae8b]{background:#fff;color:#f97316;border:none;padding:8px 20px;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer}.banner-right[data-v-6535ae8b]{flex:1;display:flex;justify-content:flex-end;align-items:center;position:relative;min-height:80px}.floating-item[data-v-6535ae8b]{font-size:40px;position:absolute;animation:float-6535ae8b 3s ease-in-out infinite}.floating-item.item-1[data-v-6535ae8b]{right:20px;top:0;animation-delay:0s}.floating-item.item-2[data-v-6535ae8b]{right:60px;top:30px;animation-delay:1s}.floating-item.item-3[data-v-6535ae8b]{right:10px;bottom:0;animation-delay:2s}@keyframes float-6535ae8b{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.product-grid[data-v-6535ae8b]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.product-card[data-v-6535ae8b]{background:#ffffffe6;border-radius:16px;overflow:hidden;box-shadow:0 4px 16px #0000000f;cursor:pointer;transition:all .3s ease}.product-card[data-v-6535ae8b]:hover{transform:translateY(-2px);box-shadow:0 8px 24px #7c3aed26}.product-card .card-image[data-v-6535ae8b]{position:relative;height:140px;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);display:flex;align-items:center;justify-content:center}.product-card .card-image img[data-v-6535ae8b]{width:100%;height:100%;object-fit:cover}.product-card .card-image .placeholder[data-v-6535ae8b]{font-size:56px;opacity:.5}.tag-hot[data-v-6535ae8b]{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:11px;padding:3px 8px;border-radius:8px;font-weight:600}.product-card .card-info[data-v-6535ae8b]{padding:12px}.product-card .product-name[data-v-6535ae8b]{font-size:14px;color:#1f2937;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-card .product-desc[data-v-6535ae8b]{font-size:12px;color:#9ca3af;margin:0 0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-bottom[data-v-6535ae8b]{display:flex;justify-content:space-between;align-items:center}.card-bottom .price-current[data-v-6535ae8b]{font-size:18px}.btn-add-cart[data-v-6535ae8b]{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-add-cart[data-v-6535ae8b]:hover{transform:scale(1.1);box-shadow:0 4px 12px #7c3aed66}.btn-add-cart.adding[data-v-6535ae8b]{animation:pulse-6535ae8b .5s ease}@keyframes pulse-6535ae8b{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.floating-cart[data-v-6535ae8b]{position:fixed;bottom:100px;right:20px;width:56px;height:56px;background:linear-gradient(135deg,#7c3aed,#a855f7);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #7c3aed66;cursor:pointer;z-index:999;transition:all .3s ease}.floating-cart[data-v-6535ae8b]:hover{transform:scale(1.1);box-shadow:0 6px 24px #7c3aed80}.floating-cart .cart-icon[data-v-6535ae8b]{font-size:26px}.floating-cart .cart-count[data-v-6535ae8b]{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;background:#ef4444;color:#fff;font-size:12px;font-weight:600;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 6px;animation:popIn-6535ae8b .3s ease}@keyframes popIn-6535ae8b{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}.login-popup[data-v-6535ae8b]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn-6535ae8b .2s ease}@keyframes fadeIn-6535ae8b{0%{opacity:0}to{opacity:1}}.login-modal[data-v-6535ae8b]{width:320px;background:#fff;border-radius:24px;padding:32px 24px;position:relative;animation:slideUp-6535ae8b .3s ease;box-shadow:0 20px 60px #0003}@keyframes slideUp-6535ae8b{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close[data-v-6535ae8b]{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;background:#f3f4f6;border:none;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280}.modal-close[data-v-6535ae8b]:hover{background:#e5e7eb}.modal-header[data-v-6535ae8b]{text-align:center;margin-bottom:24px}.modal-brand[data-v-6535ae8b]{font-size:48px;margin-bottom:8px}.modal-title[data-v-6535ae8b]{font-size:20px;font-weight:700;color:#1f2937;margin:0 0 4px}.modal-subtitle[data-v-6535ae8b]{font-size:14px;color:#9ca3af;margin:0}.login-form .form-group[data-v-6535ae8b]{margin-bottom:16px;position:relative}.login-form .form-group input[data-v-6535ae8b]{width:100%;padding:14px 16px;border:2px solid #e5e7eb;border-radius:12px;font-size:15px;transition:all .2s ease;box-sizing:border-box}.login-form .form-group input[data-v-6535ae8b]:focus{border-color:#7c3aed;outline:none;box-shadow:0 0 0 3px #7c3aed1a}.eye-btn[data-v-6535ae8b]{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;cursor:pointer;padding:4px}.btn-login[data-v-6535ae8b]{width:100%;padding:14px;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;margin-top:8px;transition:all .2s ease}.btn-login[data-v-6535ae8b]:hover:not(:disabled){box-shadow:0 4px 16px #7c3aed66}.btn-login[data-v-6535ae8b]:disabled{opacity:.7;cursor:not-allowed}.login-tips[data-v-6535ae8b]{text-align:center;margin-top:16px;font-size:14px;color:#6b7280}.login-tips .link[data-v-6535ae8b]{color:#7c3aed;cursor:pointer;font-weight:500}.error-tip[data-v-6535ae8b]{margin-top:12px;padding:10px;background:#fef2f2;color:#ef4444;border-radius:8px;font-size:13px;text-align:center}.bottom-nav[data-v-6535ae8b]{position:fixed;bottom:0;left:0;right:0;display:flex;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:8px 0;padding-bottom:max(8px,env(safe-area-inset-bottom));box-shadow:0 -4px 20px #00000014;z-index:1000}.nav-item[data-v-6535ae8b]{flex:1;display:flex;flex-direction:column;align-items:center;padding:6px 0;cursor:pointer;position:relative;transition:all .2s ease}.nav-item.active .nav-icon[data-v-6535ae8b]{transform:scale(1.1)}.nav-item.active .nav-text[data-v-6535ae8b]{color:#7c3aed;font-weight:600}.nav-icon[data-v-6535ae8b]{font-size:24px;margin-bottom:2px;transition:transform .2s ease}.nav-text[data-v-6535ae8b]{font-size:11px;color:#6b7280}.cart-badge[data-v-6535ae8b]{position:absolute;top:2px;right:calc(50% - 20px);min-width:18px;height:18px;background:#ef4444;color:#fff;font-size:11px;font-weight:600;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 5px}.product-list-page[data-v-8d5ecf8f]{min-height:100vh;background:linear-gradient(180deg,#f5f3ff,#faf5ff);padding-bottom:20px}.header[data-v-8d5ecf8f]{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(135deg,#7c3aed,#a855f7);box-shadow:0 4px 20px #7c3aed4d}.btn-back[data-v-8d5ecf8f],.btn-scan[data-v-8d5ecf8f]{width:40px;height:40px;border-radius:50%;background:#fff3;border:none;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-back[data-v-8d5ecf8f]:hover,.btn-scan[data-v-8d5ecf8f]:hover{background:#ffffff4d}.title[data-v-8d5ecf8f]{font-size:17px;font-weight:600;color:#fff;margin:0;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-section[data-v-8d5ecf8f]{padding:12px 16px;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search-bar[data-v-8d5ecf8f]{display:flex;align-items:center;background:#f3f4f6;border-radius:24px;padding:10px 16px;gap:10px}.search-icon[data-v-8d5ecf8f]{font-size:16px;opacity:.5}.search-bar input[data-v-8d5ecf8f]{flex:1;border:none;background:transparent;font-size:14px;color:#1f2937;outline:none}.search-bar input[data-v-8d5ecf8f]::placeholder{color:#9ca3af}.clear-btn[data-v-8d5ecf8f]{font-size:14px;color:#9ca3af;cursor:pointer;padding:4px}.filter-bar[data-v-8d5ecf8f]{padding:0 16px 12px;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.filter-tabs[data-v-8d5ecf8f]{display:flex;gap:8px}.filter-tab[data-v-8d5ecf8f]{padding:8px 16px;border-radius:20px;font-size:13px;color:#6b7280;background:#f3f4f6;cursor:pointer;transition:all .2s ease}.filter-tab.active[data-v-8d5ecf8f]{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;font-weight:600}.product-container[data-v-8d5ecf8f]{padding:12px 16px}.product-grid[data-v-8d5ecf8f]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.product-card[data-v-8d5ecf8f]{background:#fffffff2;border-radius:16px;overflow:hidden;box-shadow:0 4px 16px #0000000f;cursor:pointer;transition:all .3s ease}.product-card[data-v-8d5ecf8f]:hover{transform:translateY(-4px);box-shadow:0 12px 32px #7c3aed26}.card-image[data-v-8d5ecf8f]{position:relative;height:150px;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);display:flex;align-items:center;justify-content:center}.card-image img[data-v-8d5ecf8f]{width:100%;height:100%;object-fit:cover}.card-image .placeholder[data-v-8d5ecf8f]{font-size:56px;opacity:.4}.tag-stock[data-v-8d5ecf8f]{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:11px;padding:3px 8px;border-radius:8px;font-weight:600}.card-info[data-v-8d5ecf8f]{padding:12px}.product-name[data-v-8d5ecf8f]{font-size:14px;font-weight:600;color:#1f2937;margin:0 0 6px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.product-spec[data-v-8d5ecf8f]{font-size:12px;color:#9ca3af;margin:0 0 10px}.card-bottom[data-v-8d5ecf8f]{display:flex;justify-content:space-between;align-items:center}.price-info[data-v-8d5ecf8f]{display:flex;align-items:baseline}.price-current[data-v-8d5ecf8f]{font-size:18px;font-weight:700;color:#ef4444}.price-unit[data-v-8d5ecf8f]{font-size:12px;color:#9ca3af}.btn-add-cart[data-v-8d5ecf8f]{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;font-size:20px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 4px 12px #7c3aed4d}.btn-add-cart[data-v-8d5ecf8f]:hover{transform:scale(1.1)}.empty-state[data-v-8d5ecf8f]{padding:60px 20px;text-align:center}.empty-icon[data-v-8d5ecf8f]{font-size:64px;margin-bottom:16px}.empty-text[data-v-8d5ecf8f]{font-size:15px;color:#9ca3af;margin-bottom:20px}.btn-refresh[data-v-8d5ecf8f]{padding:10px 24px;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;border-radius:20px;font-size:14px;cursor:pointer}.loading-state[data-v-8d5ecf8f]{display:flex;align-items:center;justify-content:center;padding:20px;gap:10px;color:#9ca3af;font-size:14px}.loading-spinner[data-v-8d5ecf8f]{width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:#7c3aed;border-radius:50%;animation:spin-8d5ecf8f .8s linear infinite}@keyframes spin-8d5ecf8f{to{transform:rotate(360deg)}}.no-more[data-v-8d5ecf8f]{text-align:center;padding:20px;color:#9ca3af;font-size:13px}.cart-float[data-v-8d5ecf8f]{position:fixed;right:16px;bottom:100px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#a855f7);box-shadow:0 6px 24px #7c3aed66;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:100;animation:pulse-8d5ecf8f 2s ease-in-out infinite}.cart-icon[data-v-8d5ecf8f]{font-size:28px}.cart-count[data-v-8d5ecf8f]{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;background:#ef4444;color:#fff;font-size:12px;font-weight:700;border-radius:11px;display:flex;align-items:center;justify-content:center;padding:0 6px}@keyframes pulse-8d5ecf8f{0%,to{box-shadow:0 6px 24px #7c3aed66}50%{box-shadow:0 8px 32px #7c3aed99}}.product-detail[data-v-a697513d]{min-height:100vh;background:linear-gradient(180deg,#f5f3ff,#faf5ff);padding-bottom:80px}.product-image-section[data-v-a697513d]{position:relative;background:#fff;height:350px;overflow:hidden}.main-image[data-v-a697513d]{width:100%;height:100%;display:flex}.main-image img[data-v-a697513d]{width:100%;height:100%;object-fit:cover}.btn-back[data-v-a697513d],.btn-share[data-v-a697513d]{position:absolute;top:16px;width:40px;height:40px;border-radius:50%;background:#0000004d;border:none;font-size:20px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-back[data-v-a697513d]{left:16px}.btn-share[data-v-a697513d]{right:16px}.product-info-section[data-v-a697513d]{padding:20px 16px;background:#fff;margin-bottom:8px}.price-row[data-v-a697513d]{display:flex;align-items:baseline;margin-bottom:12px}.price-current[data-v-a697513d]{font-size:28px;font-weight:700;color:#ef4444}.price-unit[data-v-a697513d]{font-size:14px;color:#9ca3af;margin-left:4px}.product-name[data-v-a697513d]{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 16px}.product-meta[data-v-a697513d]{display:flex;gap:16px}.meta-item[data-v-a697513d]{display:flex;align-items:center;gap:6px}.meta-item .label[data-v-a697513d]{font-size:12px;color:#9ca3af;background:#f3f4f6;padding:4px 8px;border-radius:8px}.meta-item .value[data-v-a697513d]{font-size:13px;color:#6b7280}.product-desc-section[data-v-a697513d]{padding:20px 16px;background:#fff;margin-bottom:8px}.section-title[data-v-a697513d]{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 12px}.desc-content[data-v-a697513d]{font-size:14px;color:#6b7280;line-height:1.8}.delivery-info[data-v-a697513d]{padding:16px;background:#fff;display:flex;gap:24px;margin-bottom:8px}.info-item[data-v-a697513d]{display:flex;align-items:center;gap:8px}.info-icon[data-v-a697513d]{font-size:18px}.info-text[data-v-a697513d]{font-size:13px;color:#6b7280}.quantity-section[data-v-a697513d]{padding:16px;background:#fff;display:flex;align-items:center;justify-content:space-between;margin-bottom:80px}.quantity-label[data-v-a697513d]{font-size:15px;color:#1f2937;font-weight:500}.quantity-selector[data-v-a697513d]{display:flex;align-items:center;background:#f3f4f6;border-radius:8px;overflow:hidden}.btn-decrease[data-v-a697513d],.btn-increase[data-v-a697513d]{width:40px;height:36px;border:none;background:transparent;font-size:20px;color:#6b7280;cursor:pointer}.quantity-selector input[data-v-a697513d]{width:50px;height:36px;border:none;background:transparent;text-align:center;font-size:16px;color:#1f2937;outline:none}.bottom-action-bar[data-v-a697513d]{position:fixed;bottom:0;left:0;right:0;display:flex;background:#fff;padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));box-shadow:0 -4px 20px #00000014;z-index:100}.action-icons[data-v-a697513d]{display:flex;gap:16px;margin-right:16px}.action-icon-item[data-v-a697513d]{display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer}.action-icon-item .icon[data-v-a697513d]{font-size:22px}.action-icon-item .text[data-v-a697513d]{font-size:11px;color:#6b7280}.action-icon-item.favorited .icon[data-v-a697513d]{animation:heartBeat-a697513d .5s ease}@keyframes heartBeat-a697513d{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.action-buttons[data-v-a697513d]{flex:1;display:flex;gap:12px}.btn-add-cart[data-v-a697513d],.btn-buy-now[data-v-a697513d]{flex:1;height:44px;border:none;border-radius:22px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-add-cart[data-v-a697513d]{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff}.btn-buy-now[data-v-a697513d]{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;box-shadow:0 4px 16px #7c3aed4d}.btn-add-cart[data-v-a697513d]:hover,.btn-buy-now[data-v-a697513d]:hover{transform:translateY(-2px);box-shadow:0 6px 24px #0003}.cart-page[data-v-c68c0176]{min-height:100vh;background:linear-gradient(180deg,#f5f3ff,#faf5ff);padding-bottom:80px}.header[data-v-c68c0176]{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(135deg,#7c3aed,#a855f7);box-shadow:0 4px 20px #7c3aed4d}.btn-back[data-v-c68c0176]{width:40px;height:40px;border-radius:50%;background:#fff3;border:none;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-back[data-v-c68c0176]:hover{background:#ffffff4d}.title[data-v-c68c0176]{font-size:17px;font-weight:600;color:#fff;margin:0}.btn-clear[data-v-c68c0176]{font-size:14px;color:#ffffffe6;cursor:pointer}.guest-state[data-v-c68c0176]{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;padding:20px}.guest-content[data-v-c68c0176]{text-align:center;padding:40px 24px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;box-shadow:0 8px 32px #00000014;animation:fadeInUp-c68c0176 .4s ease}@keyframes fadeInUp-c68c0176{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.guest-icon[data-v-c68c0176]{font-size:80px;margin-bottom:20px;animation:bounce-c68c0176 2s infinite}@keyframes bounce-c68c0176{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.guest-title[data-v-c68c0176]{font-size:20px;font-weight:700;color:#1f2937;margin:0 0 8px}.guest-desc[data-v-c68c0176]{font-size:14px;color:#9ca3af;margin:0 0 24px}.guest-benefits[data-v-c68c0176]{display:flex;justify-content:center;gap:24px;margin-bottom:24px}.benefit-item[data-v-c68c0176]{display:flex;flex-direction:column;align-items:center;gap:6px}.benefit-icon[data-v-c68c0176]{font-size:24px}.benefit-text[data-v-c68c0176]{font-size:12px;color:#6b7280}.btn-login[data-v-c68c0176]{width:100%;padding:14px;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;border-radius:24px;font-size:16px;font-weight:600;cursor:pointer;margin-bottom:12px;box-shadow:0 4px 16px #7c3aed4d;transition:all .3s ease}.btn-login[data-v-c68c0176]:hover{transform:translateY(-2px);box-shadow:0 6px 24px #7c3aed66}.btn-guest[data-v-c68c0176]{width:100%;padding:12px;background:#f3f4f6;color:#6b7280;border:none;border-radius:24px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-guest[data-v-c68c0176]:hover{background:#e5e7eb}.empty-cart[data-v-c68c0176]{padding:60px 20px;text-align:center}.empty-icon[data-v-c68c0176]{font-size:80px;margin-bottom:20px;opacity:.5}.empty-text[data-v-c68c0176]{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 8px}.empty-hint[data-v-c68c0176]{font-size:14px;color:#9ca3af;margin:0 0 24px}.btn-shopping[data-v-c68c0176]{padding:12px 32px;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;border-radius:24px;font-size:15px;font-weight:600;cursor:pointer;box-shadow:0 4px 16px #7c3aed4d}.cart-list[data-v-c68c0176]{padding:12px 16px}.cart-item-wrapper[data-v-c68c0176]{position:relative;margin-bottom:12px;overflow:hidden;border-radius:16px}.delete-btn[data-v-c68c0176]{position:absolute;right:0;top:0;bottom:0;width:80px;background:#ef4444;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:600;cursor:pointer;opacity:0;transition:opacity .2s ease}.cart-item-wrapper:hover .delete-btn[data-v-c68c0176]{opacity:1}.cart-item[data-v-c68c0176]{background:#fff;padding:16px;border-radius:16px;display:flex;align-items:center;gap:12px;transition:transform .2s ease;box-shadow:0 2px 12px #0000000a}.cart-item.swipe-out[data-v-c68c0176]{transform:translate(-80px)}.select-btn[data-v-c68c0176]{width:24px;height:24px;flex-shrink:0}.check-icon[data-v-c68c0176]{width:24px;height:24px;border-radius:50%;border:2px solid #e5e7eb;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:14px}.check-icon.checked[data-v-c68c0176]{background:linear-gradient(135deg,#7c3aed,#a855f7);border-color:transparent;color:#fff}.item-image[data-v-c68c0176]{width:80px;height:80px;border-radius:12px;background:#f3f4f6;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer}.item-image img[data-v-c68c0176]{width:100%;height:100%;object-fit:cover}.item-image .placeholder[data-v-c68c0176]{font-size:32px;opacity:.4}.item-info[data-v-c68c0176]{flex:1;min-width:0;cursor:pointer}.item-name[data-v-c68c0176]{font-size:14px;font-weight:600;color:#1f2937;margin:0 0 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-spec[data-v-c68c0176]{font-size:12px;color:#9ca3af;margin:0 0 8px}.item-price .price[data-v-c68c0176]{font-size:16px;font-weight:700;color:#ef4444}.item-quantity[data-v-c68c0176]{display:flex;align-items:center;gap:8px;flex-shrink:0}.item-quantity input[data-v-c68c0176]{width:36px;text-align:center;border:1px solid #e5e7eb;border-radius:8px;padding:6px 4px;font-size:14px;font-weight:600;color:#1f2937;outline:none}.item-quantity input[data-v-c68c0176]:focus{border-color:#7c3aed}.btn-minus[data-v-c68c0176],.btn-plus[data-v-c68c0176]{width:28px;height:28px;border-radius:50%;border:none;font-size:18px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-minus[data-v-c68c0176]{background:#f3f4f6;color:#6b7280}.btn-plus[data-v-c68c0176]{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff}.btn-minus[data-v-c68c0176]:hover{background:#e5e7eb}.btn-plus[data-v-c68c0176]:hover{box-shadow:0 4px 12px #7c3aed66}.recommend-section[data-v-c68c0176]{margin-top:24px;padding-top:24px;border-top:8px solid #f3f4f6}.recommend-title[data-v-c68c0176]{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 16px}.recommend-grid[data-v-c68c0176]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.recommend-item[data-v-c68c0176]{position:relative;background:#fff;border-radius:12px;overflow:hidden;cursor:pointer}.recommend-item .item-image[data-v-c68c0176]{width:100%;height:100px}.recommend-item .item-name[data-v-c68c0176]{font-size:12px;padding:8px 8px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recommend-item .item-price[data-v-c68c0176]{padding:0 8px 8px;font-size:14px;font-weight:700;color:#ef4444}.recommend-item .btn-add[data-v-c68c0176]{position:absolute;right:8px;bottom:40px;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center}.bottom-settle-bar[data-v-c68c0176]{position:fixed;bottom:0;left:0;right:0;background:#fffffffa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));box-shadow:0 -4px 20px #00000014;display:flex;align-items:center;gap:12px;z-index:100}.select-all[data-v-c68c0176]{display:flex;align-items:center;gap:8px;cursor:pointer}.select-all .label[data-v-c68c0176]{font-size:14px;color:#6b7280}.total-info[data-v-c68c0176]{flex:1;text-align:right}.total-price .label[data-v-c68c0176]{font-size:13px;color:#6b7280;margin-right:4px}.total-price .price[data-v-c68c0176]{font-size:20px;font-weight:700;color:#ef4444}.total-hint[data-v-c68c0176]{font-size:12px;color:#9ca3af}.btn-settle[data-v-c68c0176]{padding:14px 24px;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;border-radius:24px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 16px #7c3aed4d}.btn-settle[data-v-c68c0176]:disabled{background:#d1d5db;box-shadow:none;cursor:not-allowed}.btn-settle[data-v-c68c0176]:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 6px 24px #7c3aed66}.login-popup[data-v-c68c0176]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn-c68c0176 .2s ease}@keyframes fadeIn-c68c0176{0%{opacity:0}to{opacity:1}}.login-modal[data-v-c68c0176]{width:320px;background:#fff;border-radius:24px;padding:32px 24px;position:relative;animation:slideUp-c68c0176 .3s ease;box-shadow:0 20px 60px #0003}@keyframes slideUp-c68c0176{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close[data-v-c68c0176]{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;background:#f3f4f6;border:none;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280}.modal-close[data-v-c68c0176]:hover{background:#e5e7eb}.modal-header[data-v-c68c0176]{text-align:center;margin-bottom:24px}.modal-brand[data-v-c68c0176]{font-size:48px;margin-bottom:8px}.modal-title[data-v-c68c0176]{font-size:20px;font-weight:700;color:#1f2937;margin:0 0 4px}.modal-subtitle[data-v-c68c0176]{font-size:14px;color:#9ca3af;margin:0}.login-form .form-group[data-v-c68c0176]{margin-bottom:16px;position:relative}.login-form .form-group input[data-v-c68c0176]{width:100%;padding:14px 16px;border:2px solid #e5e7eb;border-radius:12px;font-size:15px;transition:all .2s ease;box-sizing:border-box}.login-form .form-group input[data-v-c68c0176]:focus{border-color:#7c3aed;outline:none;box-shadow:0 0 0 3px #7c3aed1a}.eye-btn[data-v-c68c0176]{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;cursor:pointer;padding:4px}.login-form .btn-login[data-v-c68c0176]{width:100%;padding:14px;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;margin-top:8px;transition:all .2s ease;box-shadow:0 4px 16px #7c3aed4d}.login-form .btn-login[data-v-c68c0176]:hover:not(:disabled){box-shadow:0 4px 16px #7c3aed66}.login-form .btn-login[data-v-c68c0176]:disabled{opacity:.7;cursor:not-allowed}.login-tips[data-v-c68c0176]{text-align:center;margin-top:16px;font-size:14px;color:#6b7280}.login-tips .link[data-v-c68c0176]{color:#7c3aed;cursor:pointer;font-weight:500}.error-tip[data-v-c68c0176]{margin-top:12px;padding:10px;background:#fef2f2;color:#ef4444;border-radius:8px;font-size:13px;text-align:center}.bottom-nav[data-v-c68c0176]{position:fixed;bottom:0;left:0;right:0;display:flex;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:8px 0;padding-bottom:max(8px,env(safe-area-inset-bottom));box-shadow:0 -4px 20px #00000014;z-index:1000}.nav-item[data-v-c68c0176]{flex:1;display:flex;flex-direction:column;align-items:center;padding:6px 0;cursor:pointer;transition:all .2s ease}.nav-item.active .nav-text[data-v-c68c0176]{color:#7c3aed;font-weight:600}.nav-icon[data-v-c68c0176]{font-size:24px;margin-bottom:2px}.nav-text[data-v-c68c0176]{font-size:11px;color:#6b7280}.member-center[data-v-8edd78ca]{min-height:100vh;background:linear-gradient(180deg,#f5f3ff,#faf5ff);padding-bottom:80px}.guest-header[data-v-8edd78ca]{position:relative;padding:0 16px 24px}.guest-bg[data-v-8edd78ca]{position:absolute;top:0;left:0;right:0;height:200px;background:linear-gradient(135deg,#7c3aed,#a855f7,#c084fc);border-radius:0 0 40px 40px;box-shadow:0 8px 32px #7c3aed4d}.guest-card[data-v-8edd78ca]{position:relative;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:32px 24px;margin-top:100px;box-shadow:0 8px 32px #0000001a;text-align:center}.guest-avatar[data-v-8edd78ca]{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:40px}.guest-title[data-v-8edd78ca]{font-size:22px;font-weight:700;color:#1f2937;margin:0 0 8px}.guest-desc[data-v-8edd78ca]{font-size:14px;color:#9ca3af;margin:0 0 24px}.guest-btns[data-v-8edd78ca]{display:flex;gap:12px;justify-content:center}.btn-login-main[data-v-8edd78ca]{padding:14px 40px;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;border-radius:24px;font-size:16px;font-weight:600;cursor:pointer;box-shadow:0 4px 16px #7c3aed4d;transition:all .3s ease}.btn-login-main[data-v-8edd78ca]:hover{transform:translateY(-2px);box-shadow:0 6px 24px #7c3aed66}.guest-benefits[data-v-8edd78ca]{display:flex;justify-content:center;gap:24px;margin-top:24px;padding-top:24px;border-top:1px solid #f3f4f6}.benefit-item[data-v-8edd78ca]{display:flex;flex-direction:column;align-items:center;gap:6px}.benefit-icon[data-v-8edd78ca]{font-size:24px}.benefit-text[data-v-8edd78ca]{font-size:12px;color:#6b7280}.quick-menu[data-v-8edd78ca]{margin:16px 16px 0;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;overflow:hidden;box-shadow:0 4px 20px #0000000f}.quick-menu .menu-item[data-v-8edd78ca]{display:flex;align-items:center;padding:16px 20px;cursor:pointer;transition:background .2s ease}.quick-menu .menu-item[data-v-8edd78ca]:not(:last-child){border-bottom:1px solid #f3f4f6}.quick-menu .menu-item[data-v-8edd78ca]:hover{background:#f9fafb}.quick-menu .menu-icon[data-v-8edd78ca]{font-size:20px;margin-right:12px}.quick-menu .menu-text[data-v-8edd78ca]{flex:1;font-size:15px;color:#1f2937}.quick-menu .menu-arrow[data-v-8edd78ca]{font-size:14px;color:#9ca3af}.promo-cards[data-v-8edd78ca]{padding:16px 16px 0}.promo-card[data-v-8edd78ca]{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:16px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 16px #fbbf2433}.promo-card.promo-vip[data-v-8edd78ca]{background:linear-gradient(135deg,#7c3aed,#a855f7)}.promo-content[data-v-8edd78ca]{display:flex;align-items:center;gap:12px}.promo-icon[data-v-8edd78ca]{font-size:28px}.promo-info h4[data-v-8edd78ca]{font-size:15px;font-weight:600;color:#1f2937;margin:0 0 2px}.promo-vip .promo-info h4[data-v-8edd78ca]{color:#fff}.promo-info p[data-v-8edd78ca]{font-size:12px;color:#6b7280;margin:0}.promo-vip .promo-info p[data-v-8edd78ca]{color:#fffc}.promo-btn[data-v-8edd78ca]{padding:8px 16px;background:#fff;color:#7c3aed;border-radius:20px;font-size:13px;font-weight:600}.user-header[data-v-8edd78ca]{position:relative;padding:0 16px 20px}.user-bg[data-v-8edd78ca]{position:absolute;top:0;left:0;right:0;height:160px;background:linear-gradient(135deg,#7c3aed,#a855f7,#c084fc);border-radius:0 0 40px 40px;box-shadow:0 8px 32px #7c3aed4d}.user-card[data-v-8edd78ca]{position:relative;display:flex;align-items:center;padding:24px 20px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;margin-top:100px;box-shadow:0 8px 32px #0000001a}.user-avatar[data-v-8edd78ca]{position:relative;width:70px;height:70px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);display:flex;align-items:center;justify-content:center;cursor:pointer}.user-avatar img[data-v-8edd78ca]{width:100%;height:100%;object-fit:cover}.user-avatar .avatar-placeholder[data-v-8edd78ca]{font-size:36px}.avatar-badge[data-v-8edd78ca]{position:absolute;bottom:0;right:0;padding:2px 6px;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:8px;font-size:10px;font-weight:700;color:#fff;text-transform:uppercase}.user-info[data-v-8edd78ca]{flex:1;margin-left:16px}.nickname[data-v-8edd78ca]{font-size:20px;font-weight:700;color:#1f2937;margin:0 0 6px}.user-meta[data-v-8edd78ca]{display:flex;align-items:center;gap:8px}.vip-tag[data-v-8edd78ca]{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:12px;font-size:12px;font-weight:600;color:#fff}.vip-icon[data-v-8edd78ca]{font-size:12px}.member-level[data-v-8edd78ca]{font-size:12px;color:#9ca3af;background:#f3f4f6;padding:3px 10px;border-radius:12px}.btn-settings[data-v-8edd78ca]{width:40px;height:40px;border-radius:50%;background:#f3f4f6;border:none;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-settings[data-v-8edd78ca]:hover{background:#e5e7eb;transform:rotate(30deg)}.assets-section[data-v-8edd78ca]{padding:0 16px;margin-top:-10px}.asset-card[data-v-8edd78ca]{display:flex;align-items:center;padding:20px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 4px 20px #0000000f}.asset-item[data-v-8edd78ca]{flex:1;display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:all .2s ease}.asset-item[data-v-8edd78ca]:hover{transform:scale(1.05)}.asset-value[data-v-8edd78ca]{font-size:22px;font-weight:700;color:#1f2937;margin-bottom:4px}.asset-label[data-v-8edd78ca]{font-size:12px;color:#9ca3af}.asset-divider[data-v-8edd78ca]{width:1px;height:40px;background:#e5e7eb}.order-section[data-v-8edd78ca]{margin:16px 16px 0;padding:16px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 4px 20px #0000000f}.section-header[data-v-8edd78ca]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-title[data-v-8edd78ca]{font-size:16px;font-weight:600;color:#1f2937;margin:0}.more-btn[data-v-8edd78ca]{font-size:13px;color:#9ca3af;cursor:pointer}.order-tabs[data-v-8edd78ca]{display:flex;justify-content:space-around}.order-tab[data-v-8edd78ca]{display:flex;flex-direction:column;align-items:center;cursor:pointer;position:relative;transition:all .2s ease}.order-tab[data-v-8edd78ca]:hover{transform:translateY(-2px)}.tab-icon[data-v-8edd78ca]{font-size:26px;margin-bottom:6px}.tab-badge[data-v-8edd78ca]{position:absolute;top:-4px;right:-8px;min-width:16px;height:16px;background:#ef4444;color:#fff;font-size:10px;font-weight:600;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}.tab-text[data-v-8edd78ca]{font-size:12px;color:#6b7280}.menu-section[data-v-8edd78ca]{margin:16px 16px 0;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;overflow:hidden;box-shadow:0 4px 20px #0000000f}.menu-section .menu-item[data-v-8edd78ca]{display:flex;align-items:center;padding:16px 20px;cursor:pointer;transition:background .2s ease}.menu-section .menu-item[data-v-8edd78ca]:not(:last-child){border-bottom:1px solid #f3f4f6}.menu-section .menu-item[data-v-8edd78ca]:hover{background:#f9fafb}.menu-section .menu-icon[data-v-8edd78ca]{font-size:20px;margin-right:12px}.menu-section .menu-text[data-v-8edd78ca]{flex:1;font-size:15px;color:#1f2937}.menu-section .menu-arrow[data-v-8edd78ca]{font-size:14px;color:#9ca3af}.logout-section[data-v-8edd78ca]{padding:24px 16px}.btn-logout[data-v-8edd78ca]{width:100%;padding:14px;background:#f3f4f6;color:#6b7280;border:none;border-radius:12px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-logout[data-v-8edd78ca]:hover{background:#e5e7eb;color:#374151}.bottom-nav[data-v-8edd78ca]{position:fixed;bottom:0;left:0;right:0;display:flex;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:8px 0;padding-bottom:max(8px,env(safe-area-inset-bottom));box-shadow:0 -4px 20px #00000014;z-index:1000}.nav-item[data-v-8edd78ca]{flex:1;display:flex;flex-direction:column;align-items:center;padding:6px 0;cursor:pointer;transition:all .2s ease}.nav-item.active .nav-text[data-v-8edd78ca]{color:#7c3aed;font-weight:600}.nav-icon[data-v-8edd78ca]{font-size:24px;margin-bottom:2px}.nav-text[data-v-8edd78ca]{font-size:11px;color:#6b7280}.register-container[data-v-b97cc654]{min-height:100vh;background:linear-gradient(135deg,#f093fb,#f5576c)}.register-header[data-v-b97cc654]{background:#fffffff2;padding:20px;text-align:center}.back-btn[data-v-b97cc654]{background:none;border:none;color:#f093fb;font-size:14px;cursor:pointer;margin-bottom:15px;display:inline-block}.back-btn[data-v-b97cc654]:hover{color:#f5576c}.register-header h1[data-v-b97cc654]{font-size:22px;color:#1a1a2e;margin:0 0 5px}.register-header p[data-v-b97cc654]{font-size:14px;color:#999;margin:0}.register-content[data-v-b97cc654]{padding:30px 20px}.register-form[data-v-b97cc654]{background:#fffffff2;border-radius:16px;padding:30px 25px}.form-group[data-v-b97cc654]{margin-bottom:20px}.form-group label[data-v-b97cc654]{display:block;font-size:14px;font-weight:500;color:#333;margin-bottom:8px}.form-group input[data-v-b97cc654]{width:100%;padding:12px 15px;border:2px solid #f0f0f0;border-radius:10px;font-size:15px;box-sizing:border-box;transition:border-color .2s}.form-group input[data-v-b97cc654]:focus{outline:none;border-color:#f093fb}.password-input-wrapper[data-v-b97cc654]{position:relative}.password-input-wrapper input[data-v-b97cc654]{padding-right:45px}.eye-button[data-v-b97cc654]{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;cursor:pointer;padding:5px}.error-msg[data-v-b97cc654]{background:#fef2f2;color:#ef4444;padding:12px 15px;border-radius:10px;font-size:14px;text-align:center;margin-bottom:15px}.btn-register[data-v-b97cc654]{width:100%;padding:14px;background:linear-gradient(135deg,#f093fb,#f5576c);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s}.btn-register[data-v-b97cc654]:disabled{opacity:.6;cursor:not-allowed}.btn-register[data-v-b97cc654]:hover:not(:disabled){opacity:.9}.login-link[data-v-b97cc654]{text-align:center;margin-top:20px;font-size:14px;color:#999}.link[data-v-b97cc654]{color:#f093fb;cursor:pointer;text-decoration:none}.link[data-v-b97cc654]:hover{text-decoration:underline}.coming-soon[data-v-3123ee48]{min-height:100vh;background:linear-gradient(135deg,#f5f3ff,#eef2ff);display:flex;align-items:center;justify-content:center;padding:20px}.content[data-v-3123ee48]{text-align:center;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:60px 40px;border-radius:24px;box-shadow:0 8px 32px #7c3aed26;max-width:320px;width:100%;animation:fadeIn-3123ee48 .5s ease}@keyframes fadeIn-3123ee48{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.icon[data-v-3123ee48]{font-size:80px;margin-bottom:24px;animation:bounce-3123ee48 2s ease-in-out infinite}@keyframes bounce-3123ee48{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}h1[data-v-3123ee48]{font-size:24px;font-weight:700;color:#1f2937;margin:0 0 12px}p[data-v-3123ee48]{font-size:14px;color:#6b7280;margin:0 0 8px}.hint[data-v-3123ee48]{color:#7c3aed;font-weight:600;font-size:16px;margin-bottom:24px!important}.btn-back[data-v-3123ee48]{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border:none;padding:12px 32px;border-radius:24px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px #7c3aed4d}.btn-back[data-v-3123ee48]:hover{transform:translateY(-2px);box-shadow:0 6px 24px #7c3aed66}.scanner-modal[data-v-ba0eecc0]{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;display:flex;align-items:center;justify-content:center}.scanner-overlay[data-v-ba0eecc0]{position:absolute;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.scanner-container[data-v-ba0eecc0]{position:relative;width:90%;max-width:600px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:slideUp-ba0eecc0 .3s ease-out}@keyframes slideUp-ba0eecc0{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}.scanner-header[data-v-ba0eecc0]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.scanner-header h3[data-v-ba0eecc0]{margin:0;font-size:1.2rem}.btn-close[data-v-ba0eecc0]{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .3s}.btn-close[data-v-ba0eecc0]:hover{background:#ffffff4d;transform:rotate(90deg)}.scanner-content[data-v-ba0eecc0]{position:relative;width:100%;height:500px;background:#000;overflow:hidden}#reader[data-v-ba0eecc0]{width:100%;height:100%}#reader video[data-v-ba0eecc0]{width:100%;height:100%;object-fit:cover}.scan-frame[data-v-ba0eecc0]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:320px;height:180px;border:2px solid transparent}.scan-line[data-v-ba0eecc0]{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#00ff00,transparent);box-shadow:0 0 10px #0f0,0 0 20px #0f0;animation:scanMove-ba0eecc0 2s linear infinite}@keyframes scanMove-ba0eecc0{0%{top:0}50%{top:calc(100% - 2px)}to{top:0}}.corner[data-v-ba0eecc0]{position:absolute;width:20px;height:20px;border-color:#0f0;border-style:solid;border-width:0;box-shadow:0 0 10px #0f0}.corner-tl[data-v-ba0eecc0]{top:0;left:0;border-top-width:3px;border-left-width:3px;border-top-left-radius:8px}.corner-tr[data-v-ba0eecc0]{top:0;right:0;border-top-width:3px;border-right-width:3px;border-top-right-radius:8px}.corner-bl[data-v-ba0eecc0]{bottom:0;left:0;border-bottom-width:3px;border-left-width:3px;border-bottom-left-radius:8px}.corner-br[data-v-ba0eecc0]{bottom:0;right:0;border-bottom-width:3px;border-right-width:3px;border-bottom-right-radius:8px}.scan-hint[data-v-ba0eecc0]{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.8)}.scan-hint p[data-v-ba0eecc0]{margin:.5rem 0;font-size:1rem}.hint-sub[data-v-ba0eecc0]{font-size:.85rem;opacity:.8}.scanner-footer[data-v-ba0eecc0]{display:flex;gap:1rem;padding:1rem 1.5rem;background:#f8f9fa;border-top:1px solid #e9ecef}.btn-switch-camera[data-v-ba0eecc0],.btn-manual[data-v-ba0eecc0]{flex:1;padding:.8rem;border:none;border-radius:8px;cursor:pointer;font-size:.95rem;transition:all .3s}.btn-switch-camera[data-v-ba0eecc0]{background:#667eea;color:#fff}.btn-switch-camera[data-v-ba0eecc0]:hover{background:#5568d3;transform:translateY(-2px)}.btn-manual[data-v-ba0eecc0]{background:#f59e0b;color:#fff}.btn-manual[data-v-ba0eecc0]:hover{background:#d97706;transform:translateY(-2px)}.manual-input-overlay[data-v-ba0eecc0]{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn-ba0eecc0 .2s ease-out}@keyframes fadeIn-ba0eecc0{0%{opacity:0}to{opacity:1}}.manual-input-card[data-v-ba0eecc0]{width:85%;max-width:380px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:slideUp-ba0eecc0 .3s ease-out}.manual-input-header[data-v-ba0eecc0]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.manual-input-header h3[data-v-ba0eecc0]{margin:0;font-size:1.1rem}.manual-input-body[data-v-ba0eecc0]{padding:1.5rem}.manual-input-hint[data-v-ba0eecc0]{margin:0 0 1rem;font-size:.9rem;color:#666}.manual-input[data-v-ba0eecc0]{width:100%;padding:.8rem 1rem;font-size:1.1rem;border:2px solid #ddd;border-radius:8px;outline:none;transition:all .3s;box-sizing:border-box}.manual-input[data-v-ba0eecc0]:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.manual-input[data-v-ba0eecc0]::placeholder{color:#bbb}.manual-input-footer[data-v-ba0eecc0]{display:flex;gap:.8rem;padding:0 1.5rem 1.5rem}.btn-manual-cancel[data-v-ba0eecc0],.btn-manual-confirm[data-v-ba0eecc0]{flex:1;padding:.7rem;border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s}.btn-manual-cancel[data-v-ba0eecc0]{background:#f5f5f5;color:#666;border:1px solid #ddd}.btn-manual-cancel[data-v-ba0eecc0]:hover{background:#e8e8e8}.btn-manual-confirm[data-v-ba0eecc0]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-manual-confirm[data-v-ba0eecc0]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-manual-confirm[data-v-ba0eecc0]:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.scanner-container[data-v-ba0eecc0]{width:95%;max-height:90vh}.scanner-content[data-v-ba0eecc0]{height:450px}.scan-frame[data-v-ba0eecc0]{width:300px;height:170px}}.warehouse-container[data-v-4fef057e]{min-height:100vh;background:var(--bg);animation:fadeIn .4s ease-out}.header[data-v-4fef057e]{background:var(--gradient-primary);color:#fff;padding:1rem 1.2rem;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow-md);position:sticky;top:0;z-index:10}.btn-back[data-v-4fef057e]{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:.5rem 1rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.95rem;transition:var(--transition)}.btn-back[data-v-4fef057e]:hover{background:#ffffff4d;transform:translate(-2px)}.header h1[data-v-4fef057e]{margin:0;font-size:1.3rem;font-weight:600}.placeholder[data-v-4fef057e]{width:80px}.tabs[data-v-4fef057e]{display:flex;background:var(--bg-card);padding:.5rem .5rem 0;gap:.25rem;position:sticky;top:56px;z-index:9;box-shadow:0 1px 3px #0000000f}.tab-btn[data-v-4fef057e]{flex:1;padding:.8rem 1rem;border:none;background:transparent;cursor:pointer;font-size:.95rem;color:var(--text-secondary);border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:var(--transition);position:relative;font-weight:500}.tab-btn[data-v-4fef057e]:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:3px;background:var(--gradient-primary);border-radius:3px 3px 0 0;transition:var(--transition)}.tab-btn.active[data-v-4fef057e]{color:var(--primary);background:#667eea0d}.tab-btn.active[data-v-4fef057e]:after{width:60%}.tab-btn[data-v-4fef057e]:hover:not(.active){color:var(--primary);background:#667eea08}.tab-content[data-v-4fef057e]{padding:1rem;animation:fadeIn .3s ease-out}.search-bar[data-v-4fef057e]{display:flex;gap:.5rem;margin-bottom:1rem}.search-bar input[data-v-4fef057e]{flex:1;padding:.8rem 1rem;border:2px solid var(--border);border-radius:var(--radius-md);font-size:1rem;transition:var(--transition);background:var(--bg-card)}.search-bar input[data-v-4fef057e]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #667eea1a}.btn-scan[data-v-4fef057e]{padding:.8rem 1.2rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.95rem;transition:var(--transition);white-space:nowrap}.btn-scan[data-v-4fef057e]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.product-list[data-v-4fef057e]{display:flex;flex-direction:column;gap:.8rem}.product-item[data-v-4fef057e]{background:var(--bg-card);padding:1rem 1.2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;align-items:center;transition:var(--transition);border:1px solid var(--border)}.product-item[data-v-4fef057e]:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--primary-light)}.product-info h3[data-v-4fef057e]{margin:0 0 .3rem;color:var(--text-primary);font-size:1.05rem}.barcode[data-v-4fef057e]{color:var(--text-muted);font-size:.88rem;margin:0 0 .4rem}.product-details[data-v-4fef057e]{display:flex;flex-wrap:wrap;gap:.8rem;font-size:.82rem;color:var(--text-muted)}.product-stock[data-v-4fef057e]{text-align:right;flex-shrink:0}.stock-quantity[data-v-4fef057e]{font-size:1.4rem;font-weight:700;color:var(--primary);margin-bottom:.3rem}.stock-quantity.low[data-v-4fef057e]{color:var(--danger);animation:pulse 1.5s ease-in-out infinite}.stock-price[data-v-4fef057e]{font-size:.82rem;color:var(--text-secondary)}.purchase-form[data-v-4fef057e]{background:var(--bg-card);padding:1.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border)}.form-group[data-v-4fef057e]{margin-bottom:1rem}.form-group label[data-v-4fef057e]{display:block;margin-bottom:.5rem;color:var(--text-primary);font-weight:600;font-size:.92rem}.form-group input[data-v-4fef057e],.form-group textarea[data-v-4fef057e]{width:100%;padding:.8rem 1rem;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;transition:var(--transition);background:var(--bg-card)}.form-group input[data-v-4fef057e]:focus,.form-group textarea[data-v-4fef057e]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #667eea1a}.input-with-btn[data-v-4fef057e]{display:flex;gap:.5rem}.input-with-btn input[data-v-4fef057e]{flex:1}.btn-scan-small[data-v-4fef057e]{padding:.8rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:var(--transition)}.btn-scan-small[data-v-4fef057e]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.image-upload[data-v-4fef057e]{margin-top:.5rem}.image-preview[data-v-4fef057e]{position:relative;width:100%;max-width:300px;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md)}.image-preview img[data-v-4fef057e]{width:100%;height:auto;display:block}.btn-remove-image[data-v-4fef057e]{position:absolute;top:8px;right:8px;width:30px;height:30px;background:#0009;color:#fff;border:none;border-radius:50%;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.btn-remove-image[data-v-4fef057e]:hover{background:#000c;transform:scale(1.1)}.upload-btn[data-v-4fef057e]{display:block;cursor:pointer}.upload-placeholder[data-v-4fef057e]{border:2px dashed var(--border);border-radius:var(--radius-md);padding:2rem;text-align:center;transition:var(--transition);background:var(--bg)}.upload-placeholder[data-v-4fef057e]:hover{border-color:var(--primary);background:#667eea0d;transform:translateY(-2px)}.upload-icon[data-v-4fef057e]{font-size:3rem;margin-bottom:.5rem}.upload-text[data-v-4fef057e]{color:var(--text-muted);font-size:.95rem}.form-summary[data-v-4fef057e]{background:var(--bg);padding:1rem 1.2rem;border-radius:var(--radius-sm);margin:1rem 0;border:1px solid var(--border)}.summary-item[data-v-4fef057e]{display:flex;justify-content:space-between;font-size:1.05rem;color:var(--text-secondary)}.total[data-v-4fef057e]{color:var(--primary);font-weight:700;font-size:1.3rem}.btn-submit[data-v-4fef057e]{width:100%;padding:1rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:1.1rem;font-weight:600;cursor:pointer;transition:var(--transition);letter-spacing:.5px}.btn-submit[data-v-4fef057e]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-submit[data-v-4fef057e]:disabled{opacity:.6;cursor:not-allowed}.warning-list[data-v-4fef057e]{display:flex;flex-direction:column;gap:.8rem}.warning-item[data-v-4fef057e]{background:var(--bg-card);padding:1rem 1.2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:1rem;border-left:4px solid var(--danger);transition:var(--transition)}.warning-item[data-v-4fef057e]:hover{box-shadow:var(--shadow-md);transform:translate(4px)}.warning-icon[data-v-4fef057e]{font-size:2rem;flex-shrink:0}.warning-info[data-v-4fef057e]{flex:1}.warning-info h3[data-v-4fef057e]{margin:0 0 .3rem;color:var(--text-primary);font-size:1rem}.warning-info p[data-v-4fef057e]{margin:.2rem 0;color:var(--text-secondary);font-size:.88rem}.shortage[data-v-4fef057e]{color:var(--danger);font-weight:600}.btn-restock[data-v-4fef057e]{padding:.6rem 1.2rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.9rem;font-weight:500;transition:var(--transition);flex-shrink:0}.btn-restock[data-v-4fef057e]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}@media (min-width: 768px) and (max-width: 1023px){.header[data-v-4fef057e]{padding:1rem 1.5rem}.header h1[data-v-4fef057e]{font-size:1.4rem}.tabs[data-v-4fef057e]{top:60px}.tab-btn[data-v-4fef057e]{font-size:1rem;padding:1rem}.tab-content[data-v-4fef057e]{padding:1.2rem 1.5rem}.search-bar input[data-v-4fef057e]{flex:1}.search-bar button[data-v-4fef057e]{min-width:100px}.stock-card[data-v-4fef057e]{padding:1.2rem}.stock-header[data-v-4fef057e]{margin-bottom:.8rem}.stock-info[data-v-4fef057e]{grid-template-columns:1fr 1fr}}@media (min-width: 1024px){.header[data-v-4fef057e]{padding:1rem 2rem}.header h1[data-v-4fef057e]{font-size:1.5rem}.tabs[data-v-4fef057e]{top:64px;padding:.5rem 1rem 0;gap:.5rem}.tab-btn[data-v-4fef057e]{font-size:1rem;padding:1rem 1.5rem}.tab-content[data-v-4fef057e]{padding:1.5rem 2rem}.search-bar[data-v-4fef057e]{gap:1rem;margin-bottom:1.5rem}.search-bar input[data-v-4fef057e]{padding:.9rem 1.2rem;font-size:.95rem}.search-bar button[data-v-4fef057e]{padding:.9rem 1.5rem;font-size:.95rem}.stock-list[data-v-4fef057e]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.stock-card[data-v-4fef057e]{padding:1.5rem;border-radius:var(--radius-lg)}.stock-header[data-v-4fef057e]{margin-bottom:1rem;flex-wrap:nowrap}.stock-header .product-name[data-v-4fef057e]{font-size:1.05rem}.stock-info[data-v-4fef057e]{grid-template-columns:repeat(3,1fr);gap:.5rem}.info-label[data-v-4fef057e]{font-size:.88rem}.info-value[data-v-4fef057e]{font-size:1rem}.stock-footer[data-v-4fef057e]{margin-top:1rem;padding-top:.8rem;flex-wrap:nowrap}.btn-restock[data-v-4fef057e]{min-width:120px}}.sales-container[data-v-7b01216c]{min-height:100vh;background:var(--bg);padding-bottom:2rem}.page-header[data-v-7b01216c]{background:var(--bg-card);padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-left[data-v-7b01216c],.header-right[data-v-7b01216c]{min-width:100px}.page-title[data-v-7b01216c]{margin:0;font-size:1.2rem;font-weight:700;color:var(--text-primary);background:linear-gradient(135deg,var(--primary) 0%,#a78bfa 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn-back[data-v-7b01216c]{display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;border:1.5px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.btn-back[data-v-7b01216c]:hover{border-color:var(--primary);color:var(--primary);background:#667eea0d}.btn-export[data-v-7b01216c]{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.btn-export[data-v-7b01216c]:hover{opacity:.9;transform:translateY(-1px)}.stats-row[data-v-7b01216c]{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.5rem 2rem}@media (max-width: 768px){.stats-row[data-v-7b01216c]{grid-template-columns:repeat(2,1fr)}}.stat-card[data-v-7b01216c]{background:var(--bg-card);border-radius:16px;padding:1.5rem;border:1px solid var(--border);display:flex;align-items:flex-start;gap:1rem;position:relative;overflow:hidden;transition:all .3s;box-shadow:0 2px 8px #0000000a}.stat-card[data-v-7b01216c]:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000014}.stat-bg-icon[data-v-7b01216c]{font-size:2rem;line-height:1;opacity:.9}.stat-content[data-v-7b01216c]{flex:1}.stat-label[data-v-7b01216c]{font-size:.8rem;color:var(--text-muted);font-weight:500;margin-bottom:.3rem;text-transform:uppercase;letter-spacing:.5px}.stat-value[data-v-7b01216c]{font-size:1.5rem;font-weight:800;color:var(--text-primary);margin-bottom:.3rem}.stat-trend[data-v-7b01216c]{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:20px}.stat-trend.up[data-v-7b01216c]{color:#10b981;background:#10b9811a}.stat-trend.down[data-v-7b01216c]{color:#ef4444;background:#ef44441a}.stat-trend.neutral[data-v-7b01216c]{color:var(--text-muted);background:#9ca3af1a}.filter-bar[data-v-7b01216c]{margin:0 2rem 1rem;background:var(--bg-card);border-radius:12px;padding:12px 16px;border:1px solid var(--border);display:flex;align-items:center;gap:12px;flex-wrap:nowrap;box-shadow:0 1px 4px #0000000a}.search-box[data-v-7b01216c]{position:relative;flex:1;min-width:200px;display:flex;align-items:center}.search-icon[data-v-7b01216c]{position:absolute;left:10px;color:var(--text-muted);pointer-events:none}.search-box input[data-v-7b01216c]{width:100%;padding:8px 32px 8px 34px;border:1.5px solid var(--border);border-radius:8px;font-size:14px;color:var(--text-primary);background:var(--bg);transition:all .2s}.search-box input[data-v-7b01216c]:focus{outline:none;border-color:var(--primary);background:#fff}.clear-btn[data-v-7b01216c]{position:absolute;right:8px;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;display:flex;line-height:1}.clear-btn[data-v-7b01216c]:hover{color:var(--text-primary)}.date-range[data-v-7b01216c]{display:flex;align-items:center;gap:6px;flex-shrink:0}.range-label[data-v-7b01216c]{font-size:13px;color:var(--text-muted);font-weight:500;white-space:nowrap}.date-input[data-v-7b01216c]{padding:8px 10px;border:1.5px solid var(--border);border-radius:8px;font-size:13px;color:var(--text-primary);background:var(--bg);transition:all .2s;width:130px}.date-input[data-v-7b01216c]:focus{outline:none;border-color:var(--primary)}.date-sep[data-v-7b01216c]{color:var(--text-muted);font-size:13px;white-space:nowrap}.btn-reset[data-v-7b01216c]{padding:8px 16px;border:1.5px solid var(--border);border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:14px;font-weight:500;white-space:nowrap;transition:all .2s}.btn-reset[data-v-7b01216c]:hover{border-color:var(--text-muted);color:var(--text-primary)}.btn-query[data-v-7b01216c]{padding:8px 20px;background:var(--primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;white-space:nowrap;transition:all .2s}.btn-query[data-v-7b01216c]:hover{opacity:.9;transform:translateY(-1px)}@media (max-width: 640px){.filter-bar[data-v-7b01216c]{flex-wrap:wrap}.date-range[data-v-7b01216c]{width:100%;justify-content:flex-start}.search-box[data-v-7b01216c]{width:100%}}.table-container[data-v-7b01216c]{margin:0 2rem;background:var(--bg-card);border-radius:16px;border:1px solid var(--border);overflow:hidden;box-shadow:0 2px 8px #0000000a}.table-wrapper[data-v-7b01216c]{overflow-x:auto}.data-table[data-v-7b01216c]{width:100%;border-collapse:collapse}.data-table thead[data-v-7b01216c]{background:linear-gradient(135deg,#f8f9ff,#f0f2ff)}.data-table th[data-v-7b01216c]{padding:14px 16px;text-align:left;font-size:.78rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border);white-space:nowrap}.data-row[data-v-7b01216c]{cursor:pointer;transition:background .15s}.data-row[data-v-7b01216c]:hover{background:#667eea0a}.data-row td[data-v-7b01216c]{padding:14px 16px;border-bottom:1px solid var(--border)}.order-no[data-v-7b01216c]{font-weight:600;color:var(--primary);font-size:.9rem;font-family:monospace}.time-primary[data-v-7b01216c]{color:var(--text-secondary);font-size:.9rem}.operator-cell[data-v-7b01216c]{display:flex;align-items:center;gap:8px}.operator-avatar[data-v-7b01216c]{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#a78bfa);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;text-transform:uppercase}.payment-tag[data-v-7b01216c]{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.78rem;font-weight:600}.payment-微信[data-v-7b01216c],.payment-WECHAT[data-v-7b01216c]{background:#10b9811a;color:#10b981}.payment-支付宝[data-v-7b01216c],.payment-ALIPAY[data-v-7b01216c]{background:#3b82f61a;color:#3b82f6}.payment-现金[data-v-7b01216c],.payment-CASH[data-v-7b01216c]{background:#9ca3af26;color:#6b7280}.payment-银行卡[data-v-7b01216c],.payment-CARD[data-v-7b01216c]{background:#8b5cf61a;color:#8b5cf6}.amount-original[data-v-7b01216c]{color:var(--text-muted);text-decoration:line-through;font-size:.85rem}.discount-tag[data-v-7b01216c]{color:#f59e0b;font-weight:600;font-size:.85rem}.discount-none[data-v-7b01216c]{color:var(--text-muted)}.amount-actual[data-v-7b01216c]{font-weight:700;color:var(--text-primary);font-size:1rem}.status-badge[data-v-7b01216c]{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.78rem;font-weight:600}.status-completed[data-v-7b01216c],.status-1[data-v-7b01216c]{background:#10b9811a;color:#10b981}.status-pending[data-v-7b01216c],.status-0[data-v-7b01216c]{background:#f59e0b1a;color:#f59e0b}.status-cancelled[data-v-7b01216c]{background:#ef44441a;color:#ef4444}.loading-cell[data-v-7b01216c],.empty-cell[data-v-7b01216c]{text-align:center;padding:60px!important;color:var(--text-muted)}.loading-spinner[data-v-7b01216c]{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-7b01216c .8s linear infinite;margin:0 auto 12px}@keyframes spin-7b01216c{to{transform:rotate(360deg)}}.empty-icon[data-v-7b01216c]{font-size:3rem;margin-bottom:12px}.empty-text[data-v-7b01216c]{font-size:1rem;font-weight:600;margin-bottom:4px}.empty-hint[data-v-7b01216c]{font-size:.85rem;color:var(--text-muted)}.pagination[data-v-7b01216c]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-top:1px solid var(--border);flex-wrap:wrap;gap:1rem}.page-info[data-v-7b01216c]{color:var(--text-muted);font-size:.85rem}.page-info strong[data-v-7b01216c]{color:var(--primary)}.page-controls[data-v-7b01216c]{display:flex;align-items:center;gap:4px}.page-btn[data-v-7b01216c]{padding:6px 12px;border:1.5px solid var(--border);border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.85rem;font-weight:500;transition:all .15s}.page-btn[data-v-7b01216c]:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.page-btn[data-v-7b01216c]:disabled{opacity:.4;cursor:not-allowed}.page-numbers[data-v-7b01216c]{display:flex;gap:4px}.page-num[data-v-7b01216c]{width:34px;height:34px;border:1.5px solid var(--border);border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.85rem;font-weight:500;transition:all .15s}.page-num[data-v-7b01216c]:hover{border-color:var(--primary);color:var(--primary)}.page-num.active[data-v-7b01216c]{background:var(--primary);border-color:var(--primary);color:#fff}.modal-overlay[data-v-7b01216c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-box[data-v-7b01216c]{background:var(--bg-card);border-radius:20px;width:100%;max-width:520px;box-shadow:0 20px 60px #0003;overflow:hidden}.modal-header[data-v-7b01216c]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.modal-header h3[data-v-7b01216c]{margin:0;font-size:1.1rem;font-weight:700;color:var(--text-primary)}.modal-close[data-v-7b01216c]{width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.modal-close[data-v-7b01216c]:hover{background:#ef44441a;color:#ef4444}.modal-body[data-v-7b01216c]{padding:1.5rem}.detail-grid[data-v-7b01216c]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.detail-item[data-v-7b01216c]{display:flex;flex-direction:column;gap:4px}.detail-item.highlight[data-v-7b01216c]{grid-column:1 / -1;background:linear-gradient(135deg,#667eea14,#a78bfa14);padding:1rem;border-radius:12px;border:1px solid rgba(102,126,234,.2)}.detail-label[data-v-7b01216c]{font-size:.78rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.detail-value[data-v-7b01216c]{font-size:.95rem;color:var(--text-primary);font-weight:500}.detail-value.amount[data-v-7b01216c]{font-size:1.1rem;font-weight:700}.detail-value.discount[data-v-7b01216c]{color:#f59e0b;font-weight:600}.detail-value.actual[data-v-7b01216c]{font-size:1.5rem;font-weight:800;color:var(--primary)}@media (max-width: 768px){.page-header[data-v-7b01216c],.stats-row[data-v-7b01216c]{padding:1rem}.filter-panel[data-v-7b01216c]{margin:0 1rem 1rem;padding:1rem}.table-container[data-v-7b01216c]{margin:0 1rem}.pagination[data-v-7b01216c]{flex-direction:column;align-items:stretch}.page-controls[data-v-7b01216c]{justify-content:center;flex-wrap:wrap}.detail-grid[data-v-7b01216c]{grid-template-columns:1fr}.col-discount[data-v-7b01216c],.col-amount[data-v-7b01216c],.col-actual[data-v-7b01216c]{display:none}}.product-container[data-v-81add172]{min-height:100vh;background:var(--bg);animation:fadeIn .4s ease-out}.header[data-v-81add172]{background:var(--gradient-primary);color:#fff;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow-md);position:sticky;top:0;z-index:100;gap:.5rem}@media (min-width: 768px){.header[data-v-81add172]{padding:1rem 1.5rem}}@media (min-width: 1024px){.header[data-v-81add172]{padding:1rem 2rem}}.btn-back[data-v-81add172]{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .8rem;border:1px solid rgba(255,255,255,.4);border-radius:var(--radius-sm);background:#ffffff1a;color:#fff;font-size:.85rem;cursor:pointer;transition:all .2s ease}.btn-back[data-v-81add172]:hover{background:#fff3;border-color:#fff9}.btn-back[data-v-81add172]:active{transform:scale(.97)}.header h1[data-v-81add172]{margin:0;font-size:1.1rem;font-weight:600;flex:1;text-align:center}@media (min-width: 768px){.header h1[data-v-81add172]{font-size:1.3rem}}.placeholder[data-v-81add172]{width:60px;flex-shrink:0}@media (min-width: 768px){.placeholder[data-v-81add172]{width:80px}}.search-bar[data-v-81add172]{background:var(--bg-card);padding:.75rem;display:flex;flex-direction:column;gap:.5rem;box-shadow:var(--shadow-sm);position:sticky;top:52px;z-index:90}@media (min-width: 768px){.search-bar[data-v-81add172]{flex-direction:row;flex-wrap:wrap;align-items:center;padding:1rem;top:56px}}@media (min-width: 1024px){.search-bar[data-v-81add172]{padding:1rem 1.5rem}}.search-bar input[data-v-81add172]{flex:1;min-width:0;padding:.9rem 1rem;border:2px solid var(--border);border-radius:var(--radius-md);font-size:1rem;transition:var(--transition);background:var(--bg-card)}@media (min-width: 1024px){.search-bar input[data-v-81add172]{min-width:200px;padding:.6rem .8rem;font-size:.9rem}}.search-bar input[data-v-81add172]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #667eea1a}.search-bar select[data-v-81add172]{padding:.9rem;border:2px solid var(--border);border-radius:var(--radius-md);font-size:.95rem;background:var(--bg-card);color:var(--text-primary);transition:var(--transition);flex-shrink:0}@media (min-width: 768px){.search-bar select[data-v-81add172]{padding:.6rem .8rem;font-size:.88rem;flex:0 0 auto}}.search-bar select[data-v-81add172]:focus{outline:none;border-color:var(--primary)}.btn-scan[data-v-81add172],.btn-search[data-v-81add172],.btn-add[data-v-81add172]{padding:.9rem;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:1rem;font-weight:500;transition:var(--transition);text-align:center;min-height:48px}@media (min-width: 768px){.btn-scan[data-v-81add172],.btn-search[data-v-81add172],.btn-add[data-v-81add172]{padding:.6rem 1.2rem;font-size:.9rem;min-height:auto;flex:0 0 auto}}.btn-scan[data-v-81add172]{background:var(--gradient-warning);color:#fff}.btn-scan[data-v-81add172]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #f59e0b66}.btn-search[data-v-81add172]{background:var(--gradient-primary);color:#fff}.btn-search[data-v-81add172]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-add[data-v-81add172]{background:var(--gradient-success);color:#fff}.btn-add[data-v-81add172]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.product-list[data-v-81add172]{padding:.75rem;display:grid;grid-template-columns:1fr;gap:.75rem}@media (min-width: 768px){.product-list[data-v-81add172]{grid-template-columns:repeat(2,1fr);gap:1rem;padding:1rem}}@media (min-width: 1024px){.product-list[data-v-81add172]{grid-template-columns:repeat(3,1fr);gap:1.25rem;padding:1.5rem;max-height:none;overflow:visible}}.product-item[data-v-81add172]{background:var(--bg-card);border-radius:var(--radius-md);padding:1rem;box-shadow:var(--shadow-sm);transition:var(--transition);border:1px solid var(--border);display:flex;flex-direction:column}@media (min-width: 1024px){.product-item[data-v-81add172]{padding:1.25rem;border-radius:var(--radius-lg)}}.product-item[data-v-81add172]:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--primary-light)}.product-main[data-v-81add172]{display:flex;gap:.75rem;align-items:flex-start;flex:1}@media (min-width: 1024px){.product-main[data-v-81add172]{gap:1rem}}.product-image[data-v-81add172]{width:70px;height:70px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;box-shadow:var(--shadow-sm)}@media (min-width: 768px){.product-image[data-v-81add172]{width:80px;height:80px}}@media (min-width: 1024px){.product-image[data-v-81add172]{width:90px;height:90px}}.product-image img[data-v-81add172]{width:100%;height:100%;object-fit:cover}.product-image-placeholder[data-v-81add172]{width:70px;height:70px;border-radius:var(--radius-sm);background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;font-size:1.8rem;flex-shrink:0}@media (min-width: 768px){.product-image-placeholder[data-v-81add172]{width:80px;height:80px;font-size:2rem}}@media (min-width: 1024px){.product-image-placeholder[data-v-81add172]{width:90px;height:90px;font-size:2.2rem}}.product-info[data-v-81add172]{flex:1;min-width:0}.product-info h3[data-v-81add172]{margin:0 0 .3rem;color:var(--text-primary);font-size:1rem;font-weight:600;line-height:1.3;word-break:break-word}@media (min-width: 768px){.product-info h3[data-v-81add172]{font-size:1.1rem}}.barcode[data-v-81add172]{color:var(--text-muted);font-size:.82rem;font-weight:500;margin:0 0 .3rem;word-break:break-all}.product-meta .barcode[data-v-81add172]{cursor:pointer;color:var(--primary);font-weight:600;transition:all .2s}.product-meta .barcode[data-v-81add172]:hover{color:var(--primary-dark, #5a52d5);transform:scale(1.05)}.product-meta[data-v-81add172]{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.3rem}.meta-tag[data-v-81add172]{background:#f0f4ff;color:var(--primary);font-size:.72rem;padding:.15rem .5rem;border-radius:20px;font-weight:500;border:1px solid rgba(102,126,234,.15)}@media (min-width: 768px){.meta-tag[data-v-81add172]{font-size:.78rem;padding:.2rem .6rem}}.product-dates[data-v-81add172]{display:flex;gap:.5rem;font-size:.78rem;flex-wrap:wrap}.date-item[data-v-81add172]{color:var(--text-secondary);background:#f8f9fa;padding:.15rem .4rem;border-radius:4px;font-size:.78rem}.date-item.expired[data-v-81add172]{color:var(--danger);font-weight:600;background:#fff5f5;border:1px solid rgba(239,68,68,.2)}.date-item.warning[data-v-81add172]{color:var(--warning);font-weight:600;background:#fffbeb;border:1px solid rgba(245,158,11,.2)}.product-price-stock[data-v-81add172]{display:flex;flex-direction:column;gap:.3rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border)}@media (min-width: 768px){.product-price-stock[data-v-81add172]{flex-direction:row;justify-content:space-between;align-items:center;margin-top:.8rem;padding-top:.8rem}}.price[data-v-81add172]{font-size:.88rem;color:var(--text-secondary)}.purchase-price-wrapper[data-v-81add172]{display:flex;align-items:center;gap:.5rem;margin-bottom:.2rem}.btn-show-price[data-v-81add172]{background:none;border:1px solid var(--primary);color:var(--primary);padding:.15rem .5rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.75rem;transition:var(--transition);min-height:28px}.btn-show-price[data-v-81add172]:hover{background:var(--primary);color:#fff}.sale-price[data-v-81add172]{color:var(--danger);font-weight:600;font-size:.95rem}@media (min-width: 768px){.sale-price[data-v-81add172]{font-size:1rem}}.stock[data-v-81add172]{font-size:.95rem;font-weight:600;color:var(--success)}.stock.low[data-v-81add172]{color:var(--danger)}.product-footer[data-v-81add172]{display:flex;justify-content:space-between;align-items:flex-end;padding-top:.6rem;border-top:1px solid var(--border);gap:.5rem;flex-wrap:wrap}.product-time[data-v-81add172]{display:flex;flex-direction:column;gap:.1rem;color:var(--text-muted);font-size:.72rem;order:2}@media (min-width: 768px){.product-time[data-v-81add172]{font-size:.78rem;order:0;flex-direction:row;gap:.5rem}}.status-badge[data-v-81add172]{padding:.2rem .6rem;border-radius:20px;font-size:.75rem;font-weight:600}@media (min-width: 768px){.status-badge[data-v-81add172]{font-size:.8rem;padding:.25rem .8rem}}.status-online[data-v-81add172]{background:#d1fae5;color:#065f46}.status-offline[data-v-81add172]{background:#fee2e2;color:#991b1b}.status-outofstock[data-v-81add172]{background:#fef3c7;color:#92400e}.actions[data-v-81add172]{display:flex;gap:.4rem;order:1}@media (min-width: 768px){.actions[data-v-81add172]{order:0}}.btn-edit[data-v-81add172],.btn-delete[data-v-81add172]{padding:.5rem .8rem;background:var(--info);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.82rem;transition:var(--transition);min-height:36px;flex:1;text-align:center}@media (min-width: 768px){.btn-edit[data-v-81add172],.btn-delete[data-v-81add172]{flex:0 0 auto;font-size:.88rem;padding:.5rem 1rem}}.btn-delete[data-v-81add172]{background:var(--danger)}.btn-edit[data-v-81add172]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.btn-delete[data-v-81add172]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.empty-state[data-v-81add172]{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.btn-add-first[data-v-81add172]{margin-top:1rem;padding:1rem 2rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:1rem;font-weight:500;transition:var(--transition);min-height:48px}.btn-add-first[data-v-81add172]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.pagination[data-v-81add172]{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--bg-card);box-shadow:0 -4px 12px #0000001a;z-index:100;padding-bottom:max(.75rem,env(safe-area-inset-bottom))}@media (min-width: 768px){.pagination[data-v-81add172]{position:static;box-shadow:var(--shadow-sm);margin:1rem;border-radius:var(--radius-md);border:1px solid var(--border);padding:1rem;gap:1rem}}@media (min-width: 1024px){.pagination[data-v-81add172]{max-width:600px;margin:1rem auto}}.btn-page[data-v-81add172]{padding:.6rem 1rem;border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);color:var(--text-secondary);font-size:.88rem;min-height:40px}@media (min-width: 768px){.btn-page[data-v-81add172]{font-size:.9rem;padding:.5rem 1rem}}.btn-page[data-v-81add172]:hover:not(:disabled){background:var(--primary);color:#fff;border-color:var(--primary)}.btn-page[data-v-81add172]:disabled{opacity:.5;cursor:not-allowed}.page-info[data-v-81add172],.total-info[data-v-81add172]{font-size:.82rem;color:var(--text-muted);white-space:nowrap}@media (min-width: 768px){.page-info[data-v-81add172],.total-info[data-v-81add172]{font-size:.9rem}}.load-more-status[data-v-81add172]{text-align:center;padding:1rem;color:var(--text-muted);font-size:.9rem;margin-bottom:60px}@media (min-width: 768px){.load-more-status[data-v-81add172]{margin-bottom:1rem}}.loading-text[data-v-81add172]{color:var(--primary)}.no-more-text[data-v-81add172]{color:var(--text-muted)}.pull-hint[data-v-81add172]{color:var(--text-muted);font-style:italic}.loading-overlay[data-v-81add172]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.loading-spinner[data-v-81add172]{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-81add172 .8s linear infinite}@keyframes spin-81add172{to{transform:rotate(360deg)}}@media (min-width: 1024px){.product-container[data-v-81add172]{padding-bottom:20px}.product-list[data-v-81add172]{max-height:none;overflow:visible}}.product-form-container[data-v-81a28986]{min-height:100vh;background:var(--bg);padding-bottom:2rem;animation:fadeIn .4s ease-out}.header[data-v-81a28986]{background:var(--gradient-primary);color:#fff;padding:1rem 1.2rem;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow-md);position:sticky;top:0;z-index:10}.btn-back[data-v-81a28986]{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .8rem;border:1px solid rgba(255,255,255,.4);border-radius:var(--radius-sm);background:#ffffff1a;color:#fff;font-size:.85rem;cursor:pointer;transition:all .2s ease}.btn-back[data-v-81a28986]:hover{background:#fff3;border-color:#fff9}.btn-back[data-v-81a28986]:active{transform:scale(.97)}.header h1[data-v-81a28986]{margin:0;font-size:1.3rem;font-weight:600}.placeholder[data-v-81a28986]{width:80px}.form-container[data-v-81a28986]{max-width:800px;margin:1rem auto;padding:0 1rem}.form-section[data-v-81a28986]{background:var(--bg-card);border-radius:var(--radius-lg);padding:1.2rem 1.5rem;margin-bottom:1rem;box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:var(--transition)}.form-section[data-v-81a28986]:hover{box-shadow:var(--shadow-md)}.section-title[data-v-81a28986]{margin:0 0 1.2rem;color:var(--text-primary);font-size:1.05rem;padding-bottom:.5rem;border-bottom:2px solid var(--primary);font-weight:600}.form-group[data-v-81a28986]{margin-bottom:1rem}.form-group label[data-v-81a28986]{display:block;margin-bottom:.4rem;color:var(--text-primary);font-weight:600;font-size:.92rem}.form-group label.required[data-v-81a28986]:after{content:" *";color:var(--danger)}.form-group input[data-v-81a28986],.form-group select[data-v-81a28986],.form-group textarea[data-v-81a28986]{width:100%;padding:.8rem 1rem;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;transition:var(--transition);background:var(--bg-card);color:var(--text-primary)}.form-group input[data-v-81a28986]:focus,.form-group select[data-v-81a28986]:focus,.form-group textarea[data-v-81a28986]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #667eea1a}.form-group input[data-v-81a28986]:disabled{background:var(--bg);cursor:not-allowed;opacity:.7}.input-with-btn[data-v-81a28986]{display:flex;gap:.5rem}.input-with-btn input[data-v-81a28986]{flex:1}.btn-scan[data-v-81a28986]{padding:.8rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:var(--transition)}.btn-scan[data-v-81a28986]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.hint[data-v-81a28986]{display:block;margin-top:.3rem;color:var(--text-muted);font-size:.82rem}.debug-info[data-v-81a28986]{color:var(--danger);font-weight:600;background:#fff3cd;padding:4px 8px;border-radius:var(--radius-sm);margin-top:8px}.image-upload[data-v-81a28986]{margin-top:.5rem}.image-preview[data-v-81a28986]{position:relative;width:100%;max-width:300px;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md)}.image-preview img[data-v-81a28986]{width:100%;height:auto;display:block}.btn-remove-image[data-v-81a28986]{position:absolute;top:8px;right:8px;width:30px;height:30px;background:#0009;color:#fff;border:none;border-radius:50%;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.btn-remove-image[data-v-81a28986]:hover{background:#000c;transform:scale(1.1)}.upload-btn[data-v-81a28986]{display:block;cursor:pointer}.upload-placeholder[data-v-81a28986]{border:2px dashed var(--border);border-radius:var(--radius-md);padding:2rem;text-align:center;transition:var(--transition);background:var(--bg)}.upload-placeholder[data-v-81a28986]:hover{border-color:var(--primary);background:#667eea0d;transform:translateY(-2px)}.upload-icon[data-v-81a28986]{font-size:3rem;margin-bottom:.5rem}.upload-text[data-v-81a28986]{color:var(--text-muted);font-size:.95rem}.form-row[data-v-81a28986]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group.half[data-v-81a28986]{margin-bottom:1rem}.radio-group[data-v-81a28986]{display:flex;gap:1.5rem}.radio-item[data-v-81a28986]{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.3rem .6rem;border-radius:var(--radius-sm);transition:var(--transition)}.radio-item[data-v-81a28986]:hover{background:#667eea0d}.radio-item input[type=radio][data-v-81a28986]{width:auto;cursor:pointer}.form-actions[data-v-81a28986]{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.btn-cancel[data-v-81a28986],.btn-submit[data-v-81a28986]{padding:.8rem 2rem;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:1rem;font-weight:600;transition:var(--transition);min-width:120px}.btn-cancel[data-v-81a28986]{background:var(--bg);color:var(--text-secondary);border:1px solid var(--border)}.btn-cancel[data-v-81a28986]:hover{background:var(--border);transform:translateY(-2px)}.btn-submit[data-v-81a28986]{background:var(--gradient-primary);color:#fff}.btn-submit[data-v-81a28986]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-submit[data-v-81a28986]:disabled{opacity:.6;cursor:not-allowed}.loading-overlay[data-v-81a28986]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.loading-spinner[data-v-81a28986]{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-81a28986 .8s linear infinite}@keyframes spin-81a28986{to{transform:rotate(360deg)}}@media (max-width: 768px){.form-row[data-v-81a28986]{grid-template-columns:1fr}.form-actions[data-v-81a28986]{flex-direction:column}.btn-cancel[data-v-81a28986],.btn-submit[data-v-81a28986]{width:100%}}@media (min-width: 768px) and (max-width: 1023px){.form-container[data-v-81a28986]{padding:0 1.5rem}.form-section[data-v-81a28986]{padding:1.5rem}.form-row[data-v-81a28986]{gap:1.5rem}.image-preview[data-v-81a28986]{max-width:280px}}@media (min-width: 1024px){.header[data-v-81a28986]{padding:1rem 2rem}.header h1[data-v-81a28986]{font-size:1.5rem}.form-container[data-v-81a28986]{max-width:900px;padding:0 2rem}.form-section[data-v-81a28986]{padding:1.5rem 2rem}.form-row[data-v-81a28986]{grid-template-columns:1fr 1fr 1fr;gap:1.5rem}.form-group.half[data-v-81a28986]{margin-bottom:0}.image-preview[data-v-81a28986]{float:right;margin-left:1rem;max-width:250px}.form-actions[data-v-81a28986]{gap:2rem;margin-top:2.5rem}.btn-cancel[data-v-81a28986],.btn-submit[data-v-81a28986]{min-width:160px}}.order-page[data-v-87a61b1b]{min-height:100vh;background:var(--bg);padding-bottom:90px;animation:fadeIn .4s ease-out}.header[data-v-87a61b1b]{background:var(--gradient-primary);color:#fff;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-md);gap:.5rem}@media (min-width: 768px){.header[data-v-87a61b1b]{padding:1rem 1.5rem}}.btn-back[data-v-87a61b1b]{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .8rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.4);border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease;flex-shrink:0}.btn-back[data-v-87a61b1b]:hover{background:#fff3;border-color:#fff9;transform:translate(-3px)}.btn-back[data-v-87a61b1b]:active{transform:scale(.97)}@media (max-width: 767px){.btn-back[data-v-87a61b1b]{padding:.5rem .75rem;font-size:0}.btn-back[data-v-87a61b1b]:before{content:"←";font-size:1.2rem}}.header h2[data-v-87a61b1b]{margin:0;font-size:1.1rem;font-weight:600;flex:1;text-align:center}@media (min-width: 768px){.header h2[data-v-87a61b1b]{font-size:1.3rem}}.header-right[data-v-87a61b1b]{width:60px;flex-shrink:0}@media (min-width: 768px){.header-right[data-v-87a61b1b]{width:80px}}.cart-section[data-v-87a61b1b]{padding:.75rem}@media (min-width: 768px){.cart-section[data-v-87a61b1b]{padding:1rem}}.section-title[data-v-87a61b1b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-size:1rem;font-weight:600;color:var(--text-primary)}@media (min-width: 768px){.section-title[data-v-87a61b1b]{font-size:1.1rem;margin-bottom:1rem}}.btn-clear[data-v-87a61b1b]{background:var(--danger);color:#fff;border:none;padding:.4rem .8rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.82rem;transition:var(--transition);min-height:36px}@media (min-width: 768px){.btn-clear[data-v-87a61b1b]{font-size:.88rem;padding:.4rem .8rem}}.btn-clear[data-v-87a61b1b]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.empty-cart[data-v-87a61b1b]{text-align:center;padding:2rem 1rem;color:var(--text-muted)}.empty-cart .hint[data-v-87a61b1b]{font-size:.88rem;margin-top:.5rem;color:var(--text-muted)}.cart-list[data-v-87a61b1b]{display:flex;flex-direction:column;gap:.75rem}@media (min-width: 1024px){.cart-list[data-v-87a61b1b]{gap:.8rem}}.cart-item[data-v-87a61b1b]{background:var(--bg-card);padding:.875rem 1rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:var(--transition);border:1px solid var(--border)}@media (min-width: 768px){.cart-item[data-v-87a61b1b]{padding:1rem 1.2rem}}.cart-item[data-v-87a61b1b]:hover{box-shadow:var(--shadow-md);border-color:var(--primary-light)}@media (max-width: 767px){.cart-item[data-v-87a61b1b]{display:flex;flex-direction:column;gap:.5rem}}@media (min-width: 768px){.cart-item[data-v-87a61b1b]{display:flex;justify-content:space-between;align-items:center;gap:1rem}}.item-info[data-v-87a61b1b]{flex:1;min-width:0}.item-info h3[data-v-87a61b1b]{margin:0 0 .2rem;font-size:.95rem;color:var(--text-primary);word-break:break-word}@media (min-width: 768px){.item-info h3[data-v-87a61b1b]{font-size:1rem}}.item-barcode[data-v-87a61b1b]{margin:0 0 .2rem;font-size:.78rem;color:var(--text-muted);word-break:break-all}.item-price[data-v-87a61b1b]{margin:0;font-size:.85rem;color:var(--text-secondary)}.item-actions[data-v-87a61b1b]{display:flex;align-items:center;gap:.5rem;flex-shrink:0}@media (min-width: 768px){.item-actions[data-v-87a61b1b]{gap:.8rem}}@media (max-width: 767px){.item-actions[data-v-87a61b1b]{flex-wrap:wrap;justify-content:space-between}.item-subtotal[data-v-87a61b1b]{order:-1;width:100%;text-align:left;margin-bottom:.3rem}}.quantity-control[data-v-87a61b1b]{display:flex;align-items:center;gap:.4rem;background:var(--bg);padding:.25rem;border-radius:var(--radius-sm);border:1px solid var(--border)}.btn-qty[data-v-87a61b1b]{width:32px;height:32px;border:none;background:var(--gradient-primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;transition:var(--transition)}@media (min-width: 768px){.btn-qty[data-v-87a61b1b]{width:28px;height:28px}}.btn-qty[data-v-87a61b1b]:hover{transform:scale(1.1)}.item-subtotal[data-v-87a61b1b]{font-size:1rem;font-weight:600;color:var(--primary);margin:0}@media (min-width: 768px){.item-subtotal[data-v-87a61b1b]{flex:1;text-align:right;font-size:1.1rem}}.btn-remove[data-v-87a61b1b]{background:none;border:none;font-size:1.2rem;cursor:pointer;opacity:.5;transition:var(--transition);padding:.3rem;min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center}.btn-remove[data-v-87a61b1b]:hover{opacity:1;transform:scale(1.2)}.btn-speak[data-v-87a61b1b]{background:none;border:none;font-size:1.2rem;cursor:pointer;opacity:.6;transition:var(--transition);padding:.3rem;min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center}.btn-speak[data-v-87a61b1b]:hover{opacity:1;transform:scale(1.2)}.order-summary[data-v-87a61b1b]{background:var(--bg-card);padding:1rem;margin:.75rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border)}@media (min-width: 768px){.order-summary[data-v-87a61b1b]{padding:1.25rem;margin:1rem}}@media (min-width: 1024px){.order-summary[data-v-87a61b1b]{max-width:500px;margin:1rem auto}}.summary-row[data-v-87a61b1b]{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.95rem;color:var(--text-secondary)}@media (min-width: 768px){.summary-row[data-v-87a61b1b]{font-size:1rem;padding:.6rem 0}}.summary-row.discount[data-v-87a61b1b]{border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.discount-input[data-v-87a61b1b]{width:100px;padding:.5rem .75rem;border:2px solid var(--border);border-radius:var(--radius-sm);text-align:right;font-size:1rem;transition:var(--transition);background:var(--bg);min-height:40px}@media (min-width: 768px){.discount-input[data-v-87a61b1b]{width:120px;padding:.4rem .6rem}}.discount-input[data-v-87a61b1b]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #667eea1a}.summary-row.total[data-v-87a61b1b]{font-size:1.1rem;font-weight:600;color:var(--text-primary)}@media (min-width: 768px){.summary-row.total[data-v-87a61b1b]{font-size:1.2rem}}.amount[data-v-87a61b1b]{font-size:1.1rem;color:var(--primary);font-weight:600}@media (min-width: 768px){.amount[data-v-87a61b1b]{font-size:1.3rem}}.total-amount[data-v-87a61b1b]{font-size:1.3rem;color:var(--danger);font-weight:700}@media (min-width: 768px){.total-amount[data-v-87a61b1b]{font-size:1.5rem}}.payment-method[data-v-87a61b1b]{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-top:1px solid var(--border);margin-top:.5rem;flex-wrap:wrap}@media (min-width: 768px){.payment-method[data-v-87a61b1b]{gap:1rem;padding:.8rem 0}}.payment-method label[data-v-87a61b1b]{font-size:.95rem;color:var(--text-secondary);white-space:nowrap}.payment-method select[data-v-87a61b1b]{flex:1;min-width:120px;padding:.6rem .8rem;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:.95rem;background:var(--bg-card);color:var(--text-primary);transition:var(--transition);min-height:40px}@media (min-width: 768px){.payment-method select[data-v-87a61b1b]{padding:.5rem .8rem;font-size:.9rem}}.payment-method select[data-v-87a61b1b]:focus{outline:none;border-color:var(--primary)}.btn-checkout[data-v-87a61b1b]{width:100%;padding:1rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:1.1rem;font-weight:600;cursor:pointer;margin-top:.75rem;transition:var(--transition);letter-spacing:.5px;min-height:52px}@media (min-width: 768px){.btn-checkout[data-v-87a61b1b]{font-size:1.2rem;padding:.875rem 1rem}}.btn-checkout[data-v-87a61b1b]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-checkout[data-v-87a61b1b]:disabled{opacity:.6;cursor:not-allowed}.scan-button-container[data-v-87a61b1b]{position:fixed;bottom:0;left:0;right:0;padding:.75rem 1rem;padding-bottom:max(.75rem,env(safe-area-inset-bottom));background:var(--bg-card);box-shadow:0 -4px 20px #0000001a;z-index:99}@media (min-width: 768px){.scan-button-container[data-v-87a61b1b]{padding:1rem}}@media (min-width: 1024px){.scan-button-container[data-v-87a61b1b]{max-width:500px;left:50%;transform:translate(-50%);border-radius:var(--radius-lg) var(--radius-lg) 0 0}}.btn-scan-large[data-v-87a61b1b]{width:100%;padding:1rem;background:var(--gradient-secondary);color:#fff;border:none;border-radius:var(--radius-md);font-size:1.1rem;font-weight:600;cursor:pointer;box-shadow:0 4px 15px #f5576c66;transition:var(--transition);letter-spacing:.5px;min-height:52px}@media (min-width: 768px){.btn-scan-large[data-v-87a61b1b]{font-size:1.2rem;padding:.875rem 1rem}}.btn-scan-large[data-v-87a61b1b]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f5576c80}.member-bar[data-v-87a61b1b]{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;cursor:pointer;font-size:.9rem;transition:background .2s}.member-bar[data-v-87a61b1b]:active{opacity:.85}.member-icon[data-v-87a61b1b]{font-size:1.2rem}.member-info[data-v-87a61b1b]{display:flex;flex-direction:column;flex:1}.member-name[data-v-87a61b1b]{font-weight:600;font-size:.95rem}.member-phone[data-v-87a61b1b]{font-size:.8rem;opacity:.85}.member-hint[data-v-87a61b1b]{flex:1;font-size:.85rem;opacity:.8}.member-arrow[data-v-87a61b1b]{font-size:1.2rem;opacity:.7}.member-badge[data-v-87a61b1b]{background:#ffffff40;border-radius:20px;padding:2px 10px;font-size:.75rem;font-weight:600}.btn-unbind[data-v-87a61b1b]{background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;border-radius:6px;padding:3px 10px;font-size:.75rem;cursor:pointer}.btn-unbind[data-v-87a61b1b]:active{background:#ffffff59}.member-modal[data-v-87a61b1b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:999;display:flex;align-items:center;justify-content:center;padding:1rem}.member-modal-content[data-v-87a61b1b]{background:#fff;border-radius:16px;width:100%;max-width:400px;overflow:hidden;animation:slideUp-87a61b1b .3s ease}@keyframes slideUp-87a61b1b{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header[data-v-87a61b1b]{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-header h3[data-v-87a61b1b]{margin:0;font-size:1.05rem}.btn-close[data-v-87a61b1b]{background:#fff3;border:none;color:#fff;width:28px;height:28px;border-radius:50%;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.modal-body[data-v-87a61b1b]{padding:1.2rem}.search-box[data-v-87a61b1b]{display:flex;gap:.5rem;margin-bottom:1rem}.search-box input[data-v-87a61b1b]{flex:1;padding:.6rem .8rem;border:1.5px solid #ddd;border-radius:10px;font-size:.95rem;outline:none;transition:border-color .2s}.search-box input[data-v-87a61b1b]:focus{border-color:#764ba2}.btn-search[data-v-87a61b1b]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;padding:.6rem 1rem;font-size:.9rem;cursor:pointer;white-space:nowrap;font-weight:600}.btn-search[data-v-87a61b1b]:disabled{opacity:.6;cursor:not-allowed}.search-result[data-v-87a61b1b]{margin-top:.5rem}.result-card[data-v-87a61b1b]{background:#f8f6ff;border:1.5px solid #764ba2;border-radius:12px;padding:.8rem;margin-bottom:.8rem}.result-name[data-v-87a61b1b]{font-weight:700;font-size:1rem;color:#333}.result-phone[data-v-87a61b1b]{font-size:.85rem;color:#666;margin-top:2px}.result-points[data-v-87a61b1b]{font-size:.8rem;color:#764ba2;margin-top:4px;font-weight:600}.btn-bind-confirm[data-v-87a61b1b]{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;padding:.7rem;font-size:.95rem;font-weight:600;cursor:pointer}.search-error[data-v-87a61b1b]{color:#e53e3e;font-size:.85rem;text-align:center;padding:.5rem}.order-list-page[data-v-1b5dc252]{min-height:100vh;background:var(--bg);padding-bottom:80px;animation:fadeIn .4s ease-out}.header[data-v-1b5dc252]{background:var(--gradient-primary);color:#fff;padding:1rem 1.2rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-md)}.btn-back[data-v-1b5dc252]{display:flex;align-items:center;gap:.3rem;padding:.4rem .8rem;border:1px solid rgba(255,255,255,.4);border-radius:var(--radius-sm);background:#ffffff1a;color:#fff;font-size:.85rem;cursor:pointer;transition:all .2s ease}.btn-back[data-v-1b5dc252]:hover{background:#fff3;border-color:#fff9}.btn-back[data-v-1b5dc252]:active{transform:scale(.97)}.header h2[data-v-1b5dc252]{margin:0;font-size:1.3rem;font-weight:600}.header-right[data-v-1b5dc252]{width:80px}.filter-section[data-v-1b5dc252]{background:var(--bg-card);padding:1rem 1.2rem;margin:1rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border)}.filter-row[data-v-1b5dc252]{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;width:100%}.filter-item[data-v-1b5dc252]{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.filter-item label[data-v-1b5dc252]{font-size:.85rem;color:var(--text-secondary);font-weight:500;white-space:nowrap}.filter-item select[data-v-1b5dc252],.filter-item input[data-v-1b5dc252]{padding:.45rem .6rem;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:.85rem;min-width:110px;max-width:140px;width:100%;transition:var(--transition);background:var(--bg-card);color:var(--text-primary)}.filter-item select[data-v-1b5dc252]:focus,.filter-item input[data-v-1b5dc252]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #667eea1a}.btn-search[data-v-1b5dc252]{padding:.45rem 1rem;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;background:var(--gradient-primary);color:#fff;transition:var(--transition);flex-shrink:0}.btn-search[data-v-1b5dc252]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-reset[data-v-1b5dc252]{padding:.45rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;background:var(--bg);color:var(--text-secondary);transition:var(--transition);flex-shrink:0}.btn-reset[data-v-1b5dc252]:hover{background:var(--border)}.order-list-container[data-v-1b5dc252]{padding:0 1rem}.loading[data-v-1b5dc252],.empty-state[data-v-1b5dc252]{text-align:center;padding:3rem;color:var(--text-muted)}.order-list[data-v-1b5dc252]{display:flex;flex-direction:column;gap:.8rem}.order-card[data-v-1b5dc252]{background:var(--bg-card);border-radius:var(--radius-md);padding:1rem 1.2rem;box-shadow:var(--shadow-sm);cursor:pointer;transition:var(--transition);border:1px solid var(--border)}.order-card[data-v-1b5dc252]:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary-light)}.order-header[data-v-1b5dc252]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem;padding-bottom:.8rem;border-bottom:1px solid var(--border)}.order-no[data-v-1b5dc252]{font-size:1rem;font-weight:600;color:var(--text-primary)}.order-status[data-v-1b5dc252]{padding:.25rem .8rem;border-radius:20px;font-size:.82rem;font-weight:600}.order-source-tag[data-v-1b5dc252]{padding:.2rem .6rem;border-radius:20px;font-size:.78rem;font-weight:600;margin-left:.4rem}.order-source-tag.online[data-v-1b5dc252]{background:#dbeafe;color:#1d4ed8}.order-source-tag.offline[data-v-1b5dc252],.status-completed[data-v-1b5dc252]{background:#d1fae5;color:#065f46}.status-cancelled[data-v-1b5dc252]{background:#fee2e2;color:#991b1b}.status-refunding[data-v-1b5dc252]{background:#fef3c7;color:#92400e}.status-refunded[data-v-1b5dc252]{background:#fce4ec;color:#ad1457}.order-body[data-v-1b5dc252]{display:flex;flex-direction:column;gap:.4rem}.order-info-row[data-v-1b5dc252]{display:flex;justify-content:space-between;font-size:.88rem}.order-info-row .label[data-v-1b5dc252]{color:var(--text-secondary)}.order-info-row .amount[data-v-1b5dc252]{color:var(--primary);font-weight:500}.order-info-row .discount[data-v-1b5dc252]{color:var(--danger)}.order-info-row.total[data-v-1b5dc252]{margin-top:.4rem;padding-top:.4rem;border-top:1px dashed var(--border);font-size:.95rem}.order-info-row.total .label[data-v-1b5dc252]{font-weight:600;color:var(--text-primary)}.total-amount[data-v-1b5dc252]{font-size:1.2rem;font-weight:700;color:var(--danger)}.order-footer[data-v-1b5dc252]{display:flex;gap:.6rem;margin-top:.8rem;padding-top:.8rem;border-top:1px solid var(--border)}.btn-detail[data-v-1b5dc252],.btn-cancel[data-v-1b5dc252],.btn-delete[data-v-1b5dc252]{flex:1;padding:.6rem;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.88rem;transition:var(--transition);font-weight:500}.btn-detail[data-v-1b5dc252]{background:var(--gradient-primary);color:#fff}.btn-detail[data-v-1b5dc252]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-cancel[data-v-1b5dc252]{background:var(--warning);color:#fff}.btn-cancel[data-v-1b5dc252]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #f59e0b66}.btn-delete[data-v-1b5dc252]{background:var(--danger);color:#fff}.btn-delete[data-v-1b5dc252]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.pagination[data-v-1b5dc252]{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1rem 1.5rem;background:var(--bg-card);margin:1rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border)}.btn-page[data-v-1b5dc252]{padding:.5rem 1rem;border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);color:var(--text-secondary);font-size:.9rem}.btn-page[data-v-1b5dc252]:hover:not(:disabled){background:var(--primary);color:#fff;border-color:var(--primary)}.btn-page[data-v-1b5dc252]:disabled{opacity:.5;cursor:not-allowed}.page-info[data-v-1b5dc252],.total-info[data-v-1b5dc252]{font-size:.88rem;color:var(--text-muted)}@media (max-width: 768px){.filter-row[data-v-1b5dc252]{flex-direction:row;flex-wrap:wrap;gap:.5rem}.filter-item[data-v-1b5dc252]{flex:1 1 calc(50% - .5rem);min-width:calc(50% - .5rem)}.filter-item label[data-v-1b5dc252]{font-size:.75rem;display:block;margin-bottom:.2rem}.filter-item select[data-v-1b5dc252],.filter-item input[data-v-1b5dc252]{width:100%;font-size:.85rem;padding:.4rem}.btn-search[data-v-1b5dc252],.btn-reset[data-v-1b5dc252]{flex:1}.order-footer[data-v-1b5dc252]{flex-direction:column}}@media (min-width: 768px) and (max-width: 1023px){.header[data-v-1b5dc252]{padding:1rem 1.5rem}.filter-section[data-v-1b5dc252]{padding:1.2rem 1.5rem}.filter-row[data-v-1b5dc252]{flex-wrap:nowrap}.filter-item select[data-v-1b5dc252],.filter-item input[data-v-1b5dc252]{min-width:120px}.btn-search[data-v-1b5dc252],.btn-reset[data-v-1b5dc252]{min-width:auto}}@media (min-width: 1024px){.header[data-v-1b5dc252]{padding:1rem 2rem}.header h2[data-v-1b5dc252]{font-size:1.5rem}.action-bar[data-v-1b5dc252]{padding:1.2rem 2rem;margin:1rem 2rem;border-radius:var(--radius-lg)}.btn-add[data-v-1b5dc252],.btn-refresh[data-v-1b5dc252]{max-width:200px}.filter-section[data-v-1b5dc252]{margin:1rem 2rem;padding:1.2rem 1.5rem;border-radius:var(--radius-lg)}.filter-row[data-v-1b5dc252]{flex-wrap:nowrap;align-items:center}.filter-item[data-v-1b5dc252]{flex-direction:row;align-items:center;gap:.5rem}.filter-item label[data-v-1b5dc252]{font-size:.95rem;min-width:60px}.filter-item select[data-v-1b5dc252],.filter-item input[data-v-1b5dc252]{min-width:160px}.btn-search[data-v-1b5dc252],.btn-reset[data-v-1b5dc252]{white-space:nowrap;min-width:100px}.user-list-container[data-v-1b5dc252]{padding:0 2rem}.user-card[data-v-1b5dc252]{padding:1.5rem}.pagination[data-v-1b5dc252]{margin:1rem 2rem;padding:1.5rem}}.order-detail-page[data-v-ac487c9d]{min-height:100vh;background:var(--bg);padding-bottom:80px;animation:fadeIn .4s ease-out}.header[data-v-ac487c9d]{background:var(--gradient-primary);color:#fff;padding:1rem 1.2rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-md)}.btn-back[data-v-ac487c9d]{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:.5rem 1rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.95rem;transition:var(--transition)}.btn-back[data-v-ac487c9d]:hover{background:#ffffff4d;transform:translate(-2px)}.header h2[data-v-ac487c9d]{margin:0;font-size:1.3rem;font-weight:600}.header-right[data-v-ac487c9d]{width:80px}.loading-container[data-v-ac487c9d],.error-container[data-v-ac487c9d]{text-align:center;padding:3rem;color:var(--text-muted)}.btn-back-home[data-v-ac487c9d]{margin-top:1rem;padding:.8rem 2rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:1rem;transition:var(--transition)}.btn-back-home[data-v-ac487c9d]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.detail-container[data-v-ac487c9d]{padding:1rem;display:flex;flex-direction:column;gap:1rem}.section-card[data-v-ac487c9d]{background:var(--bg-card);border-radius:var(--radius-lg);padding:1.2rem 1.5rem;box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:var(--transition)}.section-card[data-v-ac487c9d]:hover{box-shadow:var(--shadow-md)}.section-title[data-v-ac487c9d]{margin:0 0 1rem;font-size:1.05rem;color:var(--text-primary);padding-bottom:.8rem;border-bottom:2px solid var(--primary);font-weight:600}.info-grid[data-v-ac487c9d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.8rem}.info-item[data-v-ac487c9d]{display:flex;align-items:center;padding:.6rem .8rem;background:var(--bg);border-radius:var(--radius-sm)}.info-item.full-width[data-v-ac487c9d]{grid-column:1 / -1}.info-item .label[data-v-ac487c9d]{font-weight:500;color:var(--text-secondary);min-width:90px;font-size:.9rem}.info-item .value[data-v-ac487c9d]{color:var(--text-primary);flex:1;font-size:.9rem}.status-badge[data-v-ac487c9d]{display:inline-block;padding:.25rem .8rem;border-radius:20px;font-size:.82rem;font-weight:600}.status-completed[data-v-ac487c9d]{background:#d1fae5;color:#065f46}.status-cancelled[data-v-ac487c9d]{background:#fee2e2;color:#991b1b}.status-refunding[data-v-ac487c9d]{background:#fef3c7;color:#92400e}.status-refunded[data-v-ac487c9d]{background:#fce4ec;color:#ad1457}.empty-items[data-v-ac487c9d]{text-align:center;padding:2rem;color:var(--text-muted)}.items-list[data-v-ac487c9d]{display:flex;flex-direction:column;gap:.8rem}.item-card[data-v-ac487c9d]{display:flex;gap:1rem;padding:1rem;background:var(--bg);border-radius:var(--radius-md);border-left:4px solid var(--primary);transition:var(--transition)}.item-card[data-v-ac487c9d]:hover{box-shadow:var(--shadow-sm);transform:translate(4px)}.item-index[data-v-ac487c9d]{width:30px;height:30px;background:var(--gradient-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0}.item-image-wrapper[data-v-ac487c9d]{width:80px;height:80px;flex-shrink:0;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border);background:var(--bg-card);display:flex;align-items:center;justify-content:center}.item-image[data-v-ac487c9d]{width:100%;height:100%;object-fit:cover}.item-content[data-v-ac487c9d]{flex:1}.item-header[data-v-ac487c9d]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.item-name[data-v-ac487c9d]{margin:0;font-size:1rem;color:var(--text-primary);font-weight:600}.item-spec[data-v-ac487c9d]{font-size:.82rem;color:var(--text-muted);background:var(--bg-card);padding:.2rem .6rem;border-radius:var(--radius-sm)}.item-details[data-v-ac487c9d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.4rem}.detail-row[data-v-ac487c9d]{display:flex;justify-content:space-between;font-size:.88rem}.detail-row .label[data-v-ac487c9d]{color:var(--text-secondary)}.detail-row .highlight[data-v-ac487c9d]{color:var(--primary);font-weight:600}.detail-row .subtotal[data-v-ac487c9d]{color:var(--danger);font-weight:600}.detail-row .profit[data-v-ac487c9d]{color:var(--success);font-weight:600}.amount-summary[data-v-ac487c9d]{background:var(--gradient-primary);color:#fff;border:none}.amount-summary .section-title[data-v-ac487c9d]{color:#fff;border-bottom-color:#ffffff4d}.amount-details[data-v-ac487c9d]{display:flex;flex-direction:column;gap:.6rem}.amount-row[data-v-ac487c9d]{display:flex;justify-content:space-between;align-items:center;padding:.6rem .8rem;background:#ffffff1a;border-radius:var(--radius-sm)}.amount-row .label[data-v-ac487c9d]{font-size:.95rem}.amount-row .value[data-v-ac487c9d]{font-size:1rem;font-weight:500}.amount-row.discount .value[data-v-ac487c9d]{color:gold}.amount-row.total[data-v-ac487c9d]{background:#fff3;margin-top:.3rem}.amount-row.total .label[data-v-ac487c9d]{font-size:1.1rem;font-weight:600}.total-value[data-v-ac487c9d]{font-size:1.5rem;font-weight:700;color:gold}.action-buttons[data-v-ac487c9d]{display:flex;gap:.8rem;flex-wrap:wrap}.btn-action[data-v-ac487c9d]{flex:1;min-width:120px;padding:.8rem;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:.95rem;font-weight:500;transition:var(--transition)}.btn-cancel[data-v-ac487c9d]{background:var(--warning);color:#fff}.btn-cancel[data-v-ac487c9d]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #f59e0b66}.btn-delete[data-v-ac487c9d]{background:var(--danger);color:#fff}.btn-delete[data-v-ac487c9d]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.btn-print[data-v-ac487c9d]{background:var(--gradient-primary);color:#fff}.btn-print[data-v-ac487c9d]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}@media print{.header[data-v-ac487c9d],.action-buttons[data-v-ac487c9d]{display:none}.order-detail-page[data-v-ac487c9d]{background:#fff;padding:0}.section-card[data-v-ac487c9d]{box-shadow:none;border:1px solid var(--border);page-break-inside:avoid}}@media (max-width: 768px){.info-grid[data-v-ac487c9d],.item-details[data-v-ac487c9d]{grid-template-columns:1fr}.action-buttons[data-v-ac487c9d]{flex-direction:column}.btn-action[data-v-ac487c9d]{width:100%}}@media (min-width: 768px) and (max-width: 1023px){.header[data-v-ac487c9d]{padding:1rem 1.5rem}.detail-container[data-v-ac487c9d]{padding:1.2rem 1.5rem;gap:1.2rem}.section-card[data-v-ac487c9d]{padding:1.5rem}.info-grid[data-v-ac487c9d]{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.header[data-v-ac487c9d]{padding:1rem 2rem}.header h2[data-v-ac487c9d]{font-size:1.5rem}.detail-container[data-v-ac487c9d]{padding:1.5rem 2rem;max-width:1200px;margin:0 auto;gap:1.5rem}.section-card[data-v-ac487c9d]{padding:2rem;border-radius:var(--radius-xl)}.section-title[data-v-ac487c9d]{font-size:1.2rem;margin-bottom:1.5rem}.info-grid[data-v-ac487c9d]{grid-template-columns:repeat(3,1fr);gap:1rem}.info-item[data-v-ac487c9d]{padding:.8rem 1rem}.info-item .label[data-v-ac487c9d]{min-width:100px;font-size:.95rem}.info-item .value[data-v-ac487c9d]{font-size:.95rem}.items-list[data-v-ac487c9d]{gap:1rem}.item-card[data-v-ac487c9d]{padding:1.2rem}.item-image-wrapper[data-v-ac487c9d]{width:90px;height:90px}.action-buttons[data-v-ac487c9d]{gap:1rem}.btn-action[data-v-ac487c9d]{min-width:140px;padding:1rem;font-size:1rem}}.user-list-page[data-v-43453aac]{min-height:100vh;background:var(--bg);padding-bottom:80px;animation:fadeIn .4s ease-out}.header[data-v-43453aac]{background:var(--gradient-primary);color:#fff;padding:1rem 1.2rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-md)}.btn-back[data-v-43453aac]{display:flex;align-items:center;gap:.3rem;padding:.4rem .8rem;border:1px solid rgba(255,255,255,.4);border-radius:var(--radius-sm);background:#ffffff1a;color:#fff;font-size:.85rem;cursor:pointer;transition:all .2s ease}.btn-back[data-v-43453aac]:hover{background:#fff3;border-color:#fff9}.btn-back[data-v-43453aac]:active{transform:scale(.97)}.header h2[data-v-43453aac]{margin:0;font-size:1.3rem;font-weight:600}.header-right[data-v-43453aac]{width:80px}.action-bar[data-v-43453aac]{display:flex;gap:.8rem;padding:1rem;background:var(--bg-card);margin:1rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border)}.btn-add[data-v-43453aac]{flex:1;padding:.8rem;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:.95rem;font-weight:500;background:var(--gradient-primary);color:#fff;transition:var(--transition)}.btn-add[data-v-43453aac]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-refresh[data-v-43453aac]{flex:1;padding:.8rem;border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;font-size:.95rem;font-weight:500;background:var(--bg);color:var(--text-secondary);transition:var(--transition)}.btn-refresh[data-v-43453aac]:hover{background:var(--border);transform:translateY(-2px)}.user-list-container[data-v-43453aac]{padding:0 1rem}.loading[data-v-43453aac],.empty-state[data-v-43453aac]{text-align:center;padding:3rem;color:var(--text-muted)}.user-list[data-v-43453aac]{display:flex;flex-direction:column;gap:.8rem}.user-card[data-v-43453aac]{background:var(--bg-card);border-radius:var(--radius-md);padding:1rem 1.2rem;box-shadow:var(--shadow-sm);transition:var(--transition);border:1px solid var(--border)}.user-card[data-v-43453aac]:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary-light)}.user-header[data-v-43453aac]{display:flex;align-items:center;gap:1rem;margin-bottom:.8rem;padding-bottom:.8rem;border-bottom:1px solid var(--border)}.user-avatar[data-v-43453aac]{width:50px;height:50px;background:var(--gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;overflow:hidden}.avatar-img[data-v-43453aac]{width:100%;height:100%;object-fit:cover}.user-basic[data-v-43453aac]{flex:1}.user-badges[data-v-43453aac]{display:flex;flex-direction:column;gap:.3rem;align-items:flex-end}.role-badge[data-v-43453aac],.status-badge[data-v-43453aac]{padding:.2rem .6rem;border-radius:20px;font-size:.72rem;font-weight:600;white-space:nowrap}.role-admin[data-v-43453aac]{background:var(--gradient-primary);color:#fff}.role-operator[data-v-43453aac],.status-enabled[data-v-43453aac]{background:#d1fae5;color:#065f46}.status-disabled[data-v-43453aac]{background:#fee2e2;color:#991b1b}.user-name[data-v-43453aac]{margin:0 0 .2rem;font-size:1.05rem;color:var(--text-primary);font-weight:600}.user-id[data-v-43453aac]{margin:0;font-size:.82rem;color:var(--text-muted)}.user-info[data-v-43453aac]{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.8rem}.info-row[data-v-43453aac]{display:flex;justify-content:space-between;font-size:.88rem}.info-row .label[data-v-43453aac]{color:var(--text-secondary)}.info-row .password-value[data-v-43453aac]{display:flex;align-items:center;gap:4px}.eye-btn[data-v-43453aac]{background:none;border:none;cursor:pointer;font-size:.9rem;padding:1px 4px;vertical-align:middle}.user-actions[data-v-43453aac]{display:flex;gap:.6rem;padding-top:.8rem;border-top:1px solid var(--border)}.btn-edit[data-v-43453aac],.btn-delete[data-v-43453aac]{flex:1;padding:.6rem;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.88rem;transition:var(--transition);font-weight:500}.btn-edit[data-v-43453aac]{background:var(--warning);color:#fff}.btn-edit[data-v-43453aac]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #f59e0b66}.admin-notice[data-v-43453aac]{margin-top:8px;padding:8px 12px;background:#667eea1a;border:1px solid rgba(102,126,234,.3);border-radius:6px;color:var(--primary);font-size:.82rem;font-weight:500;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.btn-admin-edit[data-v-43453aac]{padding:4px 14px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-admin-edit[data-v-43453aac]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b98166;opacity:.9}.btn-delete[data-v-43453aac]{background:var(--danger);color:#fff}.btn-delete[data-v-43453aac]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.admin-badge[data-v-43453aac]{flex:1;padding:.6rem;text-align:center;background:var(--gradient-primary);color:#fff;border-radius:var(--radius-sm);font-size:.88rem;font-weight:500}@media (max-width: 768px){.action-bar[data-v-43453aac]{flex-direction:column}}@media (min-width: 768px) and (max-width: 1023px){.header[data-v-43453aac]{padding:1rem 1.5rem}.action-bar[data-v-43453aac]{padding:1.2rem 1.5rem}.user-list-container[data-v-43453aac]{padding:0 1.5rem}.user-card[data-v-43453aac]{padding:1.2rem}}@media (min-width: 1024px){.header[data-v-43453aac]{padding:1rem 2rem}.header h2[data-v-43453aac]{font-size:1.5rem}.action-bar[data-v-43453aac]{margin:1rem 2rem;padding:1.2rem 2rem;border-radius:var(--radius-lg)}.btn-add[data-v-43453aac],.btn-refresh[data-v-43453aac]{max-width:200px}.user-list-container[data-v-43453aac]{padding:0 2rem}.user-card[data-v-43453aac]{padding:1.5rem 2rem;border-radius:var(--radius-lg)}.user-header[data-v-43453aac]{margin-bottom:1rem;padding-bottom:1rem}.user-avatar[data-v-43453aac]{width:56px;height:56px;font-size:1.6rem}.user-basic[data-v-43453aac]{flex-direction:row;align-items:center;gap:1rem}.user-name[data-v-43453aac]{font-size:1.15rem}.user-id[data-v-43453aac]{font-size:.9rem}.user-info[data-v-43453aac]{margin-bottom:1rem}.info-row[data-v-43453aac]{font-size:.95rem}.user-actions[data-v-43453aac]{padding-top:1rem}.btn-edit[data-v-43453aac],.btn-delete[data-v-43453aac]{max-width:160px}.admin-badge[data-v-43453aac]{max-width:180px}}.user-form-page[data-v-b09dea53]{min-height:100vh;background:var(--bg);padding-bottom:80px;animation:fadeIn-b09dea53 .4s ease-out}.header[data-v-b09dea53]{background:var(--gradient-primary);color:#fff;padding:1rem 1.2rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-md)}.btn-back[data-v-b09dea53]{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .8rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.4);border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease}.btn-back[data-v-b09dea53]:hover{background:#fff3;border-color:#fff9;transform:translate(-3px)}.btn-back[data-v-b09dea53]:active{transform:scale(.97)}.header h2[data-v-b09dea53]{margin:0;font-size:1.3rem;font-weight:600}.header-right[data-v-b09dea53]{width:80px}.form-container[data-v-b09dea53]{padding:1rem}.form-card[data-v-b09dea53]{background:var(--bg-card);border-radius:var(--radius-xl);padding:2rem;box-shadow:0 20px 60px #00000026;border:2px solid var(--primary)}.avatar-group[data-v-b09dea53]{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.avatar-upload-wrapper[data-v-b09dea53]{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;background:var(--bg);border:2px dashed var(--border);border-radius:var(--radius-lg);transition:var(--transition)}.avatar-upload-wrapper.drag-over[data-v-b09dea53]{border-color:var(--primary);background:#667eea0d}.avatar-preview[data-v-b09dea53]{width:100px;height:100px;border-radius:50%;background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;overflow:hidden;border:3px solid white;box-shadow:0 4px 12px #00000026}.avatar-preview.has-avatar[data-v-b09dea53]{background:none}.avatar-preview img[data-v-b09dea53]{width:100%;height:100%;object-fit:cover}.avatar-placeholder[data-v-b09dea53]{display:flex;flex-direction:column;align-items:center;gap:.3rem;color:#fff}.avatar-icon[data-v-b09dea53]{font-size:2.5rem;line-height:1}.upload-hint[data-v-b09dea53]{font-size:.7rem;opacity:.9;text-align:center;max-width:80px}.avatar-actions[data-v-b09dea53]{display:flex;gap:.8rem}.btn-upload[data-v-b09dea53],.btn-remove[data-v-b09dea53]{padding:.5rem 1rem;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:.85rem;font-weight:500;transition:var(--transition)}.btn-upload[data-v-b09dea53]{background:var(--gradient-primary);color:#fff}.btn-upload[data-v-b09dea53]:hover{opacity:.9;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-remove[data-v-b09dea53]{background:var(--bg);color:var(--danger);border:1px solid var(--danger)}.btn-remove[data-v-b09dea53]:hover{background:#fff0f3}.avatar-upload-wrapper .hint[data-v-b09dea53]{font-size:.75rem;color:var(--text-muted);text-align:center}.form-group[data-v-b09dea53]{margin-bottom:1.2rem}.form-group label[data-v-b09dea53]{display:block;margin-bottom:.4rem;color:var(--text-primary);font-weight:600;font-size:.92rem}.required[data-v-b09dea53]{color:var(--danger)}.form-input[data-v-b09dea53]{width:100%;padding:.8rem 1rem;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;transition:var(--transition);background:var(--bg-card);color:var(--text-primary)}.form-input[data-v-b09dea53]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #667eea1a}.form-input[data-v-b09dea53]:disabled,.form-input[disabled][data-v-b09dea53]{background:#f5f5f5!important;color:#999!important;border-color:#ddd!important;cursor:not-allowed!important;opacity:1!important}.hint[data-v-b09dea53]{margin-top:.3rem;font-size:.82rem;color:var(--text-muted)}.hint-warning[data-v-b09dea53]{color:#d97706;background:#fef3c7;padding:.3rem .5rem;border-radius:var(--radius-sm);margin-top:.3rem}.hint-info[data-v-b09dea53]{color:#0369a1;background:#e0f2fe;padding:.3rem .5rem;border-radius:var(--radius-sm);margin-top:.3rem}.field-disabled[data-v-b09dea53]{background:var(--bg)!important;opacity:.7}.password-input-wrapper[data-v-b09dea53]{position:relative;display:flex;align-items:center}.password-input-wrapper .form-input[data-v-b09dea53]{padding-right:3rem}.eye-button[data-v-b09dea53]{position:absolute;right:.8rem;background:none;border:none;cursor:pointer;font-size:1.2rem;padding:.3rem;transition:var(--transition);line-height:1}.eye-button[data-v-b09dea53]:hover{transform:scale(1.2)}.error-message[data-v-b09dea53]{color:var(--danger);background:#fff0f3;padding:.8rem 1rem;border-radius:var(--radius-sm);font-size:.88rem;margin-bottom:1rem;border:1px solid rgba(239,68,68,.2)}.form-actions[data-v-b09dea53]{display:flex;gap:1rem;margin-top:2rem}.btn-cancel[data-v-b09dea53],.btn-submit[data-v-b09dea53]{flex:1;padding:.8rem;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:1rem;font-weight:500;transition:var(--transition)}.btn-cancel[data-v-b09dea53]{background:var(--bg);color:var(--text-secondary);border:1px solid var(--border)}.btn-cancel[data-v-b09dea53]:hover{background:var(--hover-bg)}.btn-submit[data-v-b09dea53]{background:var(--gradient-primary);color:#fff}.btn-submit[data-v-b09dea53]:hover:not(:disabled){opacity:.9;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-submit[data-v-b09dea53]:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.form-actions[data-v-b09dea53]{flex-direction:column}}.image-preview-overlay[data-v-b09dea53]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;z-index:9999;display:flex;align-items:center;justify-content:center;cursor:zoom-out;animation:fadeIn-b09dea53 .2s ease-out}.image-preview-content[data-v-b09dea53]{position:relative;max-width:90vw;max-height:90vh;cursor:default;animation:scaleIn-b09dea53 .25s ease-out}.image-preview-content img[data-v-b09dea53]{max-width:100%;max-height:85vh;border-radius:var(--radius-lg);box-shadow:0 20px 60px #00000080;object-fit:contain;display:block}.preview-close[data-v-b09dea53]{position:absolute;top:-12px;right:-12px;width:36px;height:36px;background:var(--danger);color:#fff;border:none;border-radius:50%;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s;line-height:1}.preview-close[data-v-b09dea53]:hover{transform:scale(1.15)}.avatar-clickable[data-v-b09dea53]{cursor:zoom-in;transition:transform .2s}.avatar-clickable[data-v-b09dea53]:hover{transform:scale(1.08)}@keyframes fadeIn-b09dea53{0%{opacity:0}to{opacity:1}}@keyframes scaleIn-b09dea53{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}@media (min-width: 768px) and (max-width: 1023px){.header[data-v-b09dea53]{padding:1rem 1.5rem}.form-container[data-v-b09dea53]{padding:1.2rem 1.5rem}.form-card[data-v-b09dea53]{padding:2rem}}@media (min-width: 1024px){.header[data-v-b09dea53]{padding:1rem 2rem}.header h2[data-v-b09dea53]{font-size:1.5rem}.form-container[data-v-b09dea53]{padding:1.5rem 2rem;max-width:600px;margin:0 auto}.form-card[data-v-b09dea53]{padding:2.5rem;border-radius:var(--radius-xl)}.form-group[data-v-b09dea53]{margin-bottom:1.5rem}.form-group label[data-v-b09dea53]{font-size:1rem;margin-bottom:.5rem}.form-input[data-v-b09dea53]{padding:.9rem 1.2rem;font-size:1rem}.form-actions[data-v-b09dea53]{gap:2rem}.btn-cancel[data-v-b09dea53],.btn-submit[data-v-b09dea53]{min-width:150px;padding:1rem 2rem;font-size:1.05rem}}.operation-log-page[data-v-a872db13]{min-height:100vh;background:var(--bg);padding-bottom:80px;animation:fadeIn-a872db13 .4s ease-out}.header[data-v-a872db13]{background:var(--gradient-primary);color:#fff;padding:1rem 1.2rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-md)}.btn-back[data-v-a872db13]{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease}.btn-back[data-v-a872db13]:hover{background:var(--hover-bg);border-color:var(--primary);transform:translate(-3px)}.header h2[data-v-a872db13]{margin:0;font-size:1.3rem;font-weight:600}.header-right[data-v-a872db13]{width:80px}.filter-section[data-v-a872db13]{background:var(--bg-card);padding:1rem 1.2rem;margin:1rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border)}.filter-row[data-v-a872db13]{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;width:100%}.filter-item[data-v-a872db13]{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.filter-item label[data-v-a872db13]{font-size:.85rem;color:var(--text-secondary);font-weight:500;white-space:nowrap}.filter-item select[data-v-a872db13],.filter-item input[data-v-a872db13]{padding:.45rem .6rem;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:.85rem;min-width:110px;max-width:140px;width:100%;transition:var(--transition);background:var(--bg-card);color:var(--text-primary)}.filter-item select[data-v-a872db13]:focus,.filter-item input[data-v-a872db13]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #667eea1a}.btn-search[data-v-a872db13]{padding:.45rem 1rem;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;background:var(--gradient-primary);color:#fff;transition:var(--transition);flex-shrink:0}.btn-search[data-v-a872db13]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-reset[data-v-a872db13]{padding:.45rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;background:var(--bg);color:var(--text-secondary);transition:var(--transition);flex-shrink:0}.btn-reset[data-v-a872db13]:hover{background:var(--border)}.log-list-container[data-v-a872db13]{padding:0 1rem;height:calc(100vh - 200px);overflow-y:auto;-webkit-overflow-scrolling:touch}.loading[data-v-a872db13],.empty-state[data-v-a872db13]{text-align:center;padding:3rem;color:var(--text-muted)}.loading-more[data-v-a872db13]{text-align:center;padding:1.2rem;color:var(--text-muted);font-size:.9rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.no-more[data-v-a872db13]{text-align:center;padding:1.2rem;color:var(--text-muted);font-size:.85rem}.spinner[data-v-a872db13]{display:inline-block;width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-a872db13 .8s linear infinite}@keyframes spin-a872db13{to{transform:rotate(360deg)}}.log-list[data-v-a872db13]{padding-bottom:1rem}.log-card[data-v-a872db13]{background:var(--bg-card);border-radius:var(--radius-md);padding:1rem;margin-bottom:.8rem;box-shadow:var(--shadow-sm);border:1px solid var(--border);cursor:pointer;transition:var(--transition)}.log-card[data-v-a872db13]:active{transform:scale(.98)}.log-header[data-v-a872db13]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.log-info[data-v-a872db13]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.log-type[data-v-a872db13]{font-size:.75rem;padding:.2rem .5rem;border-radius:4px;font-weight:600;color:#fff}.type-create[data-v-a872db13]{background:linear-gradient(135deg,#4caf50,#2e7d32)}.type-update[data-v-a872db13]{background:linear-gradient(135deg,#2196f3,#0d47a1)}.type-delete[data-v-a872db13]{background:linear-gradient(135deg,#f44336,#b71c1c)}.type-login[data-v-a872db13]{background:linear-gradient(135deg,#9c27b0,#4a148c)}.type-logout[data-v-a872db13]{background:linear-gradient(135deg,#607d8b,#263238)}.type-query[data-v-a872db13]{background:linear-gradient(135deg,#ff9800,#e65100)}.type-other[data-v-a872db13]{background:linear-gradient(135deg,#795548,#3e2723)}.log-module[data-v-a872db13]{font-size:.8rem;color:var(--text-secondary)}.log-result[data-v-a872db13]{font-size:.75rem;padding:.15rem .4rem;border-radius:4px}.result-success[data-v-a872db13]{background:#e8f5e9;color:#2e7d32}.result-fail[data-v-a872db13]{background:#ffebee;color:#c62828}.log-time[data-v-a872db13]{font-size:.75rem;color:var(--text-muted);white-space:nowrap}.log-body[data-v-a872db13]{display:flex;flex-direction:column;gap:.3rem}.log-info-row[data-v-a872db13]{display:flex;font-size:.85rem;color:var(--text-primary)}.log-info-row .label[data-v-a872db13]{color:var(--text-muted);margin-right:.3rem;flex-shrink:0}.log-info-row .desc[data-v-a872db13]{color:var(--text-primary)}.log-info-row.error .label[data-v-a872db13]{color:#c62828}.log-info-row.error span[data-v-a872db13]:last-child{color:#c62828}.log-footer[data-v-a872db13]{margin-top:.6rem;display:flex;justify-content:flex-end}.btn-detail[data-v-a872db13]{font-size:.8rem;color:var(--primary);background:none;border:1px solid var(--primary);padding:.25rem .8rem;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition)}.btn-detail[data-v-a872db13]:hover{background:var(--primary);color:#fff}.modal-overlay[data-v-a872db13]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200;animation:fadeIn-a872db13 .2s ease}.modal-content[data-v-a872db13]{background:var(--bg-card);border-radius:var(--radius-lg);width:90%;max-width:420px;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:slideUp-a872db13 .3s ease}.modal-header[data-v-a872db13]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.2rem;border-bottom:1px solid var(--border);background:var(--gradient-primary);color:#fff;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.modal-header h3[data-v-a872db13]{margin:0;font-size:1.1rem}.btn-close[data-v-a872db13]{background:#fff3;border:none;color:#fff;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:1.2rem;line-height:1;transition:var(--transition)}.btn-close[data-v-a872db13]:hover{background:#fff6}.modal-body[data-v-a872db13]{padding:1rem 1.2rem}.detail-item[data-v-a872db13]{display:flex;margin-bottom:.8rem;font-size:.9rem}.detail-item label[data-v-a872db13]{width:90px;flex-shrink:0;color:var(--text-muted);font-weight:500}.detail-item span[data-v-a872db13]{color:var(--text-primary);word-break:break-all}.text-success[data-v-a872db13]{color:#2e7d32}.text-fail[data-v-a872db13]{color:#c62828}.detail-json[data-v-a872db13]{background:var(--bg);padding:.6rem;border-radius:var(--radius-sm);font-size:.8rem;overflow-x:auto;white-space:pre-wrap;word-break:break-all;color:var(--text-primary);width:100%;box-sizing:border-box}@keyframes fadeIn-a872db13{0%{opacity:0}to{opacity:1}}@keyframes slideUp-a872db13{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.permission-page[data-v-99f08598]{padding:20px;max-width:1400px;margin:0 auto;min-height:100vh}.page-header[data-v-99f08598]{margin-bottom:20px;display:flex;align-items:center;gap:16px}.page-header h1[data-v-99f08598]{color:var(--text-primary);font-size:1.5rem;margin:0}.btn-back[data-v-99f08598]{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease}.btn-back[data-v-99f08598]:hover{background:var(--hover-bg);border-color:var(--primary);transform:translate(-3px)}.tabs[data-v-99f08598]{display:flex;gap:8px;margin-bottom:20px;border-bottom:1px solid var(--border);padding-bottom:8px}.tab-btn[data-v-99f08598]{padding:10px 24px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;transition:var(--transition);font-weight:500}.tab-btn[data-v-99f08598]:hover{background:var(--hover-bg)}.tab-btn.active[data-v-99f08598]{background:var(--gradient-primary);color:#fff;border-color:transparent}.split-layout[data-v-99f08598]{display:grid;grid-template-columns:280px 1fr;gap:20px;min-height:500px}.left-panel[data-v-99f08598],.right-panel[data-v-99f08598]{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:20px;border:1px solid var(--border)}.panel-header[data-v-99f08598]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.panel-header h3[data-v-99f08598]{margin:0;color:var(--text-primary);font-size:1rem}.btn-add[data-v-99f08598]{padding:6px 12px;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem}.role-list[data-v-99f08598]{display:flex;flex-direction:column;gap:8px}.role-item[data-v-99f08598]{display:flex;align-items:center;justify-content:space-between;padding:12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:var(--transition)}.role-item[data-v-99f08598]:hover{border-color:var(--primary)}.role-item.active[data-v-99f08598]{border-color:var(--primary);background:#667eea1a}.role-info[data-v-99f08598]{display:flex;flex-direction:column;gap:2px}.role-name[data-v-99f08598]{color:var(--text-primary);font-weight:500}.role-key[data-v-99f08598]{color:var(--text-secondary);font-size:.8rem}.role-code-badge[data-v-99f08598]{padding:2px 8px;background:var(--bg);color:var(--text-secondary);border:1px solid var(--border);border-radius:4px;font-size:.75rem;font-family:monospace}.system-badge[data-v-99f08598]{padding:2px 8px;background:var(--warning);color:#fff;border-radius:4px;font-size:.75rem}.btn-delete[data-v-99f08598]{width:24px;height:24px;background:var(--danger);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;line-height:1}.menu-assign h3[data-v-99f08598]{margin:0 0 16px;color:var(--text-primary)}.menu-tree[data-v-99f08598]{max-height:400px;overflow-y:auto;margin-bottom:20px}.menu-node[data-v-99f08598]{margin-bottom:4px}.menu-node.child[data-v-99f08598]{margin-left:24px;padding-left:16px;border-left:2px solid var(--border)}.menu-label[data-v-99f08598]{display:flex;align-items:center;gap:8px;padding:8px;cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition)}.menu-label[data-v-99f08598]:hover{background:var(--hover-bg)}.menu-icon[data-v-99f08598]{font-size:1rem}.expand-toggle[data-v-99f08598]{margin-left:auto;color:var(--text-secondary);cursor:pointer;font-size:.8rem;-webkit-user-select:none;user-select:none;padding:2px 6px}.expand-toggle[data-v-99f08598]:hover{color:var(--primary)}.menu-name[data-v-99f08598]{color:var(--text-primary)}.menu-children[data-v-99f08598]{margin-top:4px}.permission-btns[data-v-99f08598]{display:flex;gap:12px;margin-left:28px;padding:8px;flex-wrap:wrap}.permission-label[data-v-99f08598]{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg);border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;color:var(--text-secondary)}.action-buttons[data-v-99f08598]{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--border)}.no-selection[data-v-99f08598]{display:flex;align-items:center;justify-content:center;height:300px;color:var(--text-secondary)}.btn[data-v-99f08598]{padding:10px 20px;border:none;border-radius:var(--radius);cursor:pointer;font-weight:500;transition:var(--transition)}.btn-cancel[data-v-99f08598]{background:var(--bg);color:var(--text-secondary);border:1px solid var(--border)}.btn-cancel[data-v-99f08598]:hover{background:var(--hover-bg)}.btn-save[data-v-99f08598],.btn-confirm[data-v-99f08598]{background:var(--gradient-primary);color:#fff}.btn-save[data-v-99f08598]:hover,.btn-confirm[data-v-99f08598]:hover{opacity:.9}.btn[data-v-99f08598]:disabled{opacity:.6;cursor:not-allowed}.user-list-container[data-v-99f08598]{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:20px;border:1px solid var(--border);overflow-x:auto}.data-table[data-v-99f08598]{width:100%;border-collapse:collapse}.data-table th[data-v-99f08598],.data-table td[data-v-99f08598]{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border)}.data-table th[data-v-99f08598]{background:var(--bg);color:var(--text-secondary);font-weight:500;font-size:.85rem}.data-table td[data-v-99f08598]{color:var(--text-primary)}.data-table tr:hover td[data-v-99f08598]{background:var(--hover-bg)}.role-tag[data-v-99f08598]{display:inline-block;padding:4px 10px;background:var(--primary);color:#fff;border-radius:4px;font-size:.8rem;margin-right:6px}.no-role[data-v-99f08598]{color:var(--text-secondary);font-style:italic}.btn-assign[data-v-99f08598]{padding:6px 12px;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem}.modal-overlay[data-v-99f08598]{position:fixed;top:0;left:0;right:0;bottom:0;background:#667eea26;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-container[data-v-99f08598]{background:var(--bg-card);border-radius:var(--radius-lg);width:90%;max-width:450px;border:1px solid var(--border);box-shadow:0 20px 60px #00000026;overflow:hidden}.assign-role-modal[data-v-99f08598]{border:2px solid var(--primary);border-radius:var(--radius-xl);box-shadow:0 20px 60px #667eea33}.assign-role-modal .modal-header[data-v-99f08598]{background:var(--gradient-primary);padding:16px 20px;display:flex;justify-content:space-between;align-items:center}.assign-role-modal .modal-header h2[data-v-99f08598]{margin:0;color:#fff;font-size:1.1rem;font-weight:600}.assign-role-modal .modal-header .btn-close[data-v-99f08598]{color:#fff;opacity:.8;background:none;border:none;font-size:1.5rem;cursor:pointer;line-height:1;padding:0;width:28px;height:28px}.assign-role-modal .modal-header .btn-close[data-v-99f08598]:hover{opacity:1}.assign-role-modal .modal-subtitle[data-v-99f08598]{padding:10px 20px;background:#667eea14;color:var(--text-secondary);font-size:.9rem;border-bottom:1px solid var(--border);font-weight:500}.assign-role-modal .modal-body[data-v-99f08598]{padding:20px}.assign-role-modal .modal-footer[data-v-99f08598]{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid var(--border)}.assign-role-modal .btn-confirm[data-v-99f08598]{padding:10px 20px;border:none;border-radius:var(--radius);background:var(--gradient-primary);color:#fff;font-weight:500;transition:var(--transition);cursor:pointer;font-size:.9rem}.assign-role-modal .btn-confirm[data-v-99f08598]:hover:not(:disabled){opacity:.9;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.assign-role-modal .btn-confirm[data-v-99f08598]:disabled{opacity:.6;cursor:not-allowed}.assign-role-modal .btn-cancel[data-v-99f08598]{padding:10px 20px;background:var(--bg);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius);font-weight:500;transition:var(--transition);cursor:pointer;font-size:.9rem}.assign-role-modal .btn-cancel[data-v-99f08598]:hover{background:var(--hover-bg)}.admin-role-notice[data-v-99f08598]{padding:12px 16px;background:#667eea14;border:1px solid rgba(102,126,234,.25);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.85rem;margin-bottom:12px;display:flex;align-items:center;gap:8px}.modal-header[data-v-99f08598]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-header h2[data-v-99f08598]{margin:0;color:var(--text-primary);font-size:1.1rem}.btn-close[data-v-99f08598]{width:28px;height:28px;background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;line-height:1}.btn-close[data-v-99f08598]:hover{color:var(--text-primary)}.modal-body[data-v-99f08598]{padding:20px}.modal-footer[data-v-99f08598]{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid var(--border)}.form-group[data-v-99f08598]{margin-bottom:16px}.form-group label[data-v-99f08598]{display:block;margin-bottom:6px;color:var(--text-secondary);font-size:.9rem}.form-group input[data-v-99f08598],.form-group select[data-v-99f08598]{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:.95rem;box-sizing:border-box}.form-group input[data-v-99f08598]:focus,.form-group select[data-v-99f08598]:focus{outline:none;border-color:var(--primary)}.error-message[data-v-99f08598]{color:var(--danger);font-size:.85rem;margin-top:8px}@media (max-width: 900px){.split-layout[data-v-99f08598]{grid-template-columns:1fr}.left-panel[data-v-99f08598]{max-height:300px;overflow-y:auto}}.no-permission-page[data-v-be34d488]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.content-wrapper[data-v-be34d488]{text-align:center;max-width:500px;animation:fadeIn-be34d488 .5s ease-out}@keyframes fadeIn-be34d488{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.icon-area[data-v-be34d488]{margin-bottom:30px}.icon-circle[data-v-be34d488]{width:120px;height:120px;border-radius:50%;background:#fff3;display:inline-flex;align-items:center;justify-content:center;font-size:60px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 40px #0003}.main-title[data-v-be34d488]{font-size:2.5rem;font-weight:700;color:#fff;margin:0 0 20px;text-shadow:0 2px 10px rgba(0,0,0,.2)}.subtitle[data-v-be34d488]{font-size:1.1rem;color:#ffffffe6;line-height:1.8;margin:0 0 40px}.button-group[data-v-be34d488]{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.btn[data-v-be34d488]{padding:16px 40px;border:none;border-radius:30px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px}.btn-primary[data-v-be34d488]{background:#fff;color:#667eea;box-shadow:0 8px 30px #0003}.btn-primary[data-v-be34d488]:hover{transform:translateY(-4px) scale(1.05);box-shadow:0 12px 40px #0000004d}.btn-secondary[data-v-be34d488]{background:#ffffff26;color:#fff;border:2px solid rgba(255,255,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary[data-v-be34d488]:hover{background:#ffffff40;border-color:#fff9;transform:translateY(-4px)}.help-text[data-v-be34d488]{margin-top:40px;font-size:.9rem;color:#fff9}@media (max-width: 480px){.main-title[data-v-be34d488]{font-size:2rem}.subtitle[data-v-be34d488]{font-size:1rem}.btn[data-v-be34d488]{padding:14px 30px;font-size:1rem}.button-group[data-v-be34d488]{flex-direction:column;gap:15px}.icon-circle[data-v-be34d488]{width:100px;height:100px;font-size:50px}}:root{--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .12)}.responsive-container{width:100%;padding-left:var(--space-md);padding-right:var(--space-md)}@media (min-width: 768px){.responsive-container{padding-left:var(--space-lg);padding-right:var(--space-lg)}}@media (min-width: 1024px){.responsive-container{max-width:1200px;margin:0 auto;padding-left:var(--space-xl);padding-right:var(--space-xl)}}.responsive-grid{display:grid;grid-template-columns:1fr;gap:var(--space-md)}@media (min-width: 768px){.responsive-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}}@media (min-width: 1024px){.responsive-grid{grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}}.responsive-grid-3{display:grid;grid-template-columns:1fr;gap:var(--space-md)}@media (min-width: 768px){.responsive-grid-3{grid-template-columns:repeat(2,1fr);gap:var(--space-md)}}@media (min-width: 1024px){.responsive-grid-3{grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}}.responsive-grid-4{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}@media (min-width: 768px){.responsive-grid-4{grid-template-columns:repeat(2,1fr);gap:var(--space-md)}}@media (min-width: 1024px){.responsive-grid-4{grid-template-columns:repeat(4,1fr);gap:var(--space-lg)}}.responsive-card{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:var(--transition)}@media (min-width: 768px){.responsive-card{padding:var(--space-lg);border-radius:var(--radius-lg)}}@media (min-width: 1024px){.responsive-card{padding:var(--space-xl)}}.responsive-form .form-group{margin-bottom:var(--space-md)}@media (min-width: 1024px){.responsive-form .form-group{margin-bottom:var(--space-lg)}}.responsive-form-row{display:flex;flex-direction:column;gap:var(--space-md)}@media (min-width: 768px){.responsive-form-row{flex-direction:row;gap:var(--space-lg)}.responsive-form-row>*{flex:1}}@media (max-width: 767px){.touch-input input,.touch-input select,.touch-input textarea{padding:1rem;font-size:16px;min-height:48px;border-radius:var(--radius-md)}}@media (min-width: 1024px){.compact-input input,.compact-input select,.compact-input textarea{padding:.5rem .75rem;font-size:.875rem}}.btn-group-fixed-bottom{position:fixed;bottom:0;left:0;right:0;padding:var(--space-md);background:var(--bg-card);box-shadow:0 -4px 12px #0000001a;display:flex;gap:var(--space-md);z-index:100;padding-bottom:max(var(--space-md),env(safe-area-inset-bottom))}@media (min-width: 1024px){.btn-group-fixed-bottom{position:static;box-shadow:none;padding:var(--space-lg) 0}}.btn-touch{min-height:48px;min-width:48px;font-size:var(--text-base);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md)}@media (min-width: 1024px){.btn-touch{min-height:auto;padding:var(--space-sm) var(--space-md);font-size:var(--text-sm)}}.header-mobile{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);background:var(--gradient-primary);color:#fff}@media (min-width: 1024px){.header-mobile{flex-direction:row;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-xl)}}@media (min-width: 1024px){.layout-with-sidebar{display:flex}.sidebar-nav{width:240px;min-height:100vh;background:var(--bg-card);border-right:1px solid var(--border);padding:var(--space-lg);position:sticky;top:0}.main-content-with-sidebar{flex:1;min-width:0}}.table-responsive{overflow-x:auto}@media (max-width: 767px){.table-responsive table{display:none}.table-responsive .card-list{display:flex;flex-direction:column;gap:var(--space-md)}}@media (min-width: 768px){.table-responsive table{display:table;width:100%;border-collapse:collapse}.table-responsive .card-list{display:none}}.modal-drawer{position:fixed;bottom:0;left:0;right:0;background:var(--bg-card);border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:90vh;overflow-y:auto;z-index:1000;transform:translateY(100%);transition:transform .3s ease}.modal-drawer.active{transform:translateY(0)}@media (min-width: 1024px){.modal-drawer{position:fixed;top:50%;left:50%;bottom:auto;transform:translate(-50%,-50%);max-width:600px;width:90%;max-height:80vh;border-radius:var(--radius-xl)}.modal-drawer.active{transform:translate(-50%,-50%)}}.pagination-simple{display:flex;justify-content:center;gap:var(--space-sm);padding:var(--space-md)}@media (max-width: 767px){.pagination-full{display:none}}@media (min-width: 768px){.pagination-simple{display:none}.pagination-full{display:flex;justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-lg)}}.list-cards{display:flex;flex-direction:column;gap:var(--space-md)}@media (min-width: 768px){.list-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}}@media (min-width: 1024px){.list-cards{grid-template-columns:repeat(3,1fr)}}.show-mobile,.show-tablet,.show-pc{display:none}@media (max-width: 767px){.show-mobile{display:block}.hide-mobile{display:none!important}}@media (min-width: 768px) and (max-width: 1023px){.show-tablet{display:block}.hide-tablet{display:none!important}}@media (min-width: 1024px){.show-pc{display:block}.hide-pc{display:none!important}}.text-center-mobile{text-align:center}@media (min-width: 768px){.text-center-mobile{text-align:left}}.mt-mobile{margin-top:var(--space-md)}@media (min-width: 768px){.mt-mobile{margin-top:var(--space-lg)}}@media (min-width: 1024px){.mt-mobile{margin-top:var(--space-xl)}}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}@media (min-width: 1024px){.safe-area-bottom{padding-bottom:0}}@keyframes slideUpMobile{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slideUpMobile .3s ease-out}@media (min-width: 1024px){.animate-slide-up{animation:none}}
