.login-container[data-v-523e64ef]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-box[data-v-523e64ef]{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000001a;padding:40px;width:100%;max-width:400px}.login-header[data-v-523e64ef]{text-align:center;margin-bottom:30px}.login-header h1[data-v-523e64ef]{font-size:32px;color:#667eea;margin:0 0 8px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-header p[data-v-523e64ef]{color:#666;font-size:14px;margin:0}.login-form[data-v-523e64ef]{display:flex;flex-direction:column;gap:20px}.form-group[data-v-523e64ef]{display:flex;flex-direction:column;gap:8px}.form-group label[data-v-523e64ef]{font-size:14px;color:#333;font-weight:500}.form-group input[data-v-523e64ef]{padding:12px 16px;border:1px solid #ddd;border-radius:8px;font-size:14px;transition:all .3s;outline:none}.form-group input[data-v-523e64ef]:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.error-message[data-v-523e64ef]{padding:12px;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;font-size:14px;text-align:center}.login-btn[data-v-523e64ef]{padding:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;margin-top:10px}.login-btn[data-v-523e64ef]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px #667eea66}.login-btn[data-v-523e64ef]:disabled{opacity:.6;cursor:not-allowed}@media(max-width:480px){.login-box[data-v-523e64ef]{padding:30px 20px}.login-header h1[data-v-523e64ef]{font-size:28px}}.admin-layout[data-v-6d39bc1f]{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.admin-header[data-v-6d39bc1f]{height:60px;background:#fff;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:100}.header-left .logo[data-v-6d39bc1f]{font-size:20px;font-weight:600;color:#333;margin:0}.header-left .logo .subtitle[data-v-6d39bc1f]{font-size:16px;font-weight:400;color:#999;margin-left:8px}.header-right[data-v-6d39bc1f]{display:flex;align-items:center;gap:16px}.user-info[data-v-6d39bc1f]{color:#666;font-size:14px}.logout-btn[data-v-6d39bc1f]{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:all .3s}.logout-btn[data-v-6d39bc1f]:hover{background:#5568d3}.admin-content[data-v-6d39bc1f]{display:flex;flex:1}.admin-sidebar[data-v-6d39bc1f]{width:200px;background:#fff;box-shadow:2px 0 8px #0000000d;padding:20px 0}.sidebar-nav[data-v-6d39bc1f]{display:flex;flex-direction:column}.nav-item[data-v-6d39bc1f]{padding:12px 24px;color:#666;text-decoration:none;transition:all .3s;border-left:3px solid transparent}.nav-item[data-v-6d39bc1f]:hover{background:#f5f5f5;color:#667eea}.nav-item.router-link-active[data-v-6d39bc1f]{background:#f0f0ff;color:#667eea;border-left-color:#667eea;font-weight:500}.nav-item[data-v-6d39bc1f]{position:relative}.unread-badge[data-v-6d39bc1f]{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:#ff4d4f;color:#fff;border-radius:10px;padding:2px 6px;font-size:12px;font-weight:600;min-width:18px;text-align:center;line-height:1.4}.admin-main[data-v-6d39bc1f]{flex:1;padding:24px;overflow-y:auto}@media(max-width:768px){.admin-sidebar[data-v-6d39bc1f]{width:180px}.admin-header[data-v-6d39bc1f]{padding:0 16px}.admin-main[data-v-6d39bc1f]{padding:16px}}.product-category[data-v-77bd2040]{padding:0}.page-header[data-v-77bd2040]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h2[data-v-77bd2040]{font-size:24px;color:#333;margin:0}.btn-primary[data-v-77bd2040]{padding:10px 20px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-primary[data-v-77bd2040]:hover{background:#5568d3}.search-bar[data-v-77bd2040]{display:flex;gap:8px;margin-bottom:20px;padding:10px;background:#fff;border-radius:8px}.search-input[data-v-77bd2040]{width:300px;padding:6px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px}.btn-search[data-v-77bd2040],.btn-reset[data-v-77bd2040]{padding:6px 14px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer;font-size:13px}.btn-search[data-v-77bd2040]:hover{background:#f5f5f5}.table-container[data-v-77bd2040]{background:#fff;border-radius:8px;overflow:hidden}.data-table[data-v-77bd2040]{width:100%;border-collapse:collapse}.data-table th[data-v-77bd2040],.data-table td[data-v-77bd2040]{padding:14px 16px;text-align:left;border-bottom:1px solid #eee}.data-table th[data-v-77bd2040]{background:#f5f5f5;font-weight:600;color:#333}.data-table th.text-center[data-v-77bd2040],.data-table td.text-center[data-v-77bd2040]{text-align:center}.data-table tbody tr[data-v-77bd2040]:hover{background:#f9f9f9}.empty-data[data-v-77bd2040]{text-align:center;color:#999;padding:40px}.status-badge[data-v-77bd2040]{padding:4px 12px;border-radius:12px;font-size:12px}.status-badge.active[data-v-77bd2040]{background:#e6f7e6;color:#52c41a}.status-badge.inactive[data-v-77bd2040]{background:#fff1f0;color:#ff4d4f}.btn-edit[data-v-77bd2040],.btn-delete[data-v-77bd2040]{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:12px;margin-right:8px}.btn-edit[data-v-77bd2040]{background:#667eea;color:#fff}.btn-edit[data-v-77bd2040]:hover{background:#5568d3}.btn-delete[data-v-77bd2040]{background:#ff4d4f;color:#fff}.btn-delete[data-v-77bd2040]:hover{background:#ff7875}.batch-actions[data-v-77bd2040]{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#f0f0f0;border-radius:6px;margin-top:20px}.pagination[data-v-77bd2040]{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px;padding:15px}.pagination button[data-v-77bd2040]{padding:8px 16px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer}.pagination button[data-v-77bd2040]:disabled{opacity:.5;cursor:not-allowed}.pagination button[data-v-77bd2040]:hover:not(:disabled){background:#f5f5f5}.dialog-overlay[data-v-77bd2040]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.dialog-content[data-v-77bd2040]{background:#fff;border-radius:8px;width:500px;max-width:90%}.dialog-header[data-v-77bd2040]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.dialog-header h3[data-v-77bd2040]{margin:0;font-size:18px}.btn-close[data-v-77bd2040]{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.dialog-body[data-v-77bd2040]{padding:20px}.form-group[data-v-77bd2040]{margin-bottom:20px}.form-group label[data-v-77bd2040]{display:block;margin-bottom:8px;color:#333;font-size:14px}.required[data-v-77bd2040]{color:#ff4d4f}.form-group input[data-v-77bd2040],.form-group select[data-v-77bd2040]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.form-group input[data-v-77bd2040]:focus,.form-group select[data-v-77bd2040]:focus{outline:none;border-color:#667eea}.dialog-footer[data-v-77bd2040]{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #eee}.btn-cancel[data-v-77bd2040],.btn-confirm[data-v-77bd2040]{padding:8px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-cancel[data-v-77bd2040]{background:#f5f5f5;color:#333}.btn-confirm[data-v-77bd2040]{background:#667eea;color:#fff}.btn-confirm[data-v-77bd2040]:disabled{opacity:.5;cursor:not-allowed}.product[data-v-50601dad]{padding:0}.page-header[data-v-50601dad]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h2[data-v-50601dad]{font-size:24px;color:#333;margin:0}.btn-primary[data-v-50601dad]{padding:10px 20px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-primary[data-v-50601dad]:hover{background:#5568d3}.search-bar[data-v-50601dad]{display:flex;gap:8px;margin-bottom:20px;padding:10px;background:#fff;border-radius:8px}.search-input[data-v-50601dad]{width:300px;padding:6px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px}.search-select[data-v-50601dad]{padding:6px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px;min-width:120px}.btn-search[data-v-50601dad],.btn-reset[data-v-50601dad]{padding:6px 14px;border:none;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.btn-search[data-v-50601dad]{background:#667eea;color:#fff}.btn-search[data-v-50601dad]:hover{background:#5568d3}.btn-reset[data-v-50601dad]{background:#f5f5f5;color:#666;border:1px solid #ddd}.btn-reset[data-v-50601dad]:hover{background:#e8e8e8;border-color:#bbb}.table-container[data-v-50601dad]{background:#fff;border-radius:8px;overflow:hidden}.data-table[data-v-50601dad]{width:100%;border-collapse:collapse}.data-table th[data-v-50601dad],.data-table td[data-v-50601dad]{padding:14px 16px;text-align:left;border-bottom:1px solid #eee}.data-table th[data-v-50601dad]{background:#f5f5f5;font-weight:600;color:#333}.data-table th.text-center[data-v-50601dad],.data-table td.text-center[data-v-50601dad]{text-align:center}.product-thumb[data-v-50601dad]{width:60px;height:60px;object-fit:cover;border-radius:4px}.no-image[data-v-50601dad]{color:#999;font-size:12px}.tag-item[data-v-50601dad]{display:inline-block;padding:2px 8px;margin-right:6px;margin-bottom:4px;background:#f0f0f0;border-radius:4px;font-size:12px;color:#666}.status-badge[data-v-50601dad]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.active[data-v-50601dad]{background:#e6f7e6;color:#52c41a}.status-badge.inactive[data-v-50601dad]{background:#fff2e6;color:#fa8c16}.status-badge.status-clickable[data-v-50601dad]{cursor:pointer;transition:all .2s}.status-badge.status-clickable[data-v-50601dad]:hover{opacity:.8;transform:scale(1.05)}.btn-top[data-v-50601dad],.btn-edit[data-v-50601dad],.btn-delete[data-v-50601dad]{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:12px;margin-right:8px}.btn-top[data-v-50601dad]{background:#52c41a;color:#fff;font-weight:700;font-size:14px}.btn-top[data-v-50601dad]:hover{background:#73d13d}.btn-edit[data-v-50601dad]{background:#667eea;color:#fff}.btn-edit[data-v-50601dad]:hover{background:#5568d3}.btn-delete[data-v-50601dad]{background:#ff4d4f;color:#fff}.btn-delete[data-v-50601dad]:hover{background:#ff7875}.empty-data[data-v-50601dad]{text-align:center;padding:40px;color:#999}.batch-actions[data-v-50601dad]{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f5f5f5;border-radius:6px;margin-top:20px}.pagination[data-v-50601dad]{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px}.pagination button[data-v-50601dad]{padding:8px 16px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer}.pagination button[data-v-50601dad]:disabled{opacity:.5;cursor:not-allowed}.pagination button[data-v-50601dad]:hover:not(:disabled){background:#f5f5f5}.dialog-overlay[data-v-50601dad]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.dialog-content[data-v-50601dad]{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.dialog-large[data-v-50601dad]{max-width:900px}.dialog-header[data-v-50601dad]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #eee}.dialog-header h3[data-v-50601dad]{margin:0;font-size:18px;color:#333}.btn-close[data-v-50601dad]{width:24px;height:24px;border:none;background:transparent;font-size:24px;color:#999;cursor:pointer;line-height:1}.btn-close[data-v-50601dad]:hover{color:#666}.dialog-body[data-v-50601dad]{padding:24px;overflow-y:auto;flex:1}.form-group[data-v-50601dad]{margin-bottom:20px}.form-group.form-row[data-v-50601dad]{display:flex;gap:16px}.form-group.form-row .form-col[data-v-50601dad]{flex:1}.form-group label[data-v-50601dad]{display:block;margin-bottom:8px;font-size:14px;color:#333;font-weight:500}.required[data-v-50601dad]{color:#ff4d4f}.form-group input[data-v-50601dad],.form-group select[data-v-50601dad],.form-group textarea[data-v-50601dad]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit}.form-group textarea[data-v-50601dad]{resize:vertical}.tags-input[data-v-50601dad]{border:1px solid #ddd;border-radius:6px;padding:8px}.tags-list[data-v-50601dad]{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.tag-item[data-v-50601dad]{display:inline-flex;align-items:center;padding:4px 10px;background:#f0f0f0;border-radius:4px;font-size:13px;color:#666}.tag-remove[data-v-50601dad]{margin-left:6px;border:none;background:transparent;color:#999;cursor:pointer;font-size:16px;line-height:1;padding:0;width:16px;height:16px}.tag-remove[data-v-50601dad]:hover{color:#666}.tag-add[data-v-50601dad]{display:flex;gap:8px}.tag-add input[data-v-50601dad]{flex:1;border:none;padding:4px 8px}.tag-add button[data-v-50601dad]{padding:4px 12px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;font-size:13px}.tag-add button[data-v-50601dad]:hover{background:#f5f5f5}.images-upload[data-v-50601dad]{border:1px solid #ddd;border-radius:6px;padding:12px}.images-list[data-v-50601dad]{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.image-item[data-v-50601dad]{position:relative;width:120px;height:120px;border:2px solid #ddd;border-radius:6px;overflow:hidden;cursor:move}.image-item img[data-v-50601dad]{width:100%;height:100%;object-fit:cover}.image-overlay[data-v-50601dad]{position:absolute;inset:0;background:#00000080;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:8px;opacity:0;transition:opacity .2s}.image-item:hover .image-overlay[data-v-50601dad]{opacity:1}.image-index[data-v-50601dad]{color:#fff;font-size:12px;font-weight:500}.image-remove[data-v-50601dad]{padding:4px 8px;border:none;background:#ff4d4f;color:#fff;border-radius:4px;cursor:pointer;font-size:12px}.image-remove[data-v-50601dad]:hover{background:#ff7875}.image-placeholder[data-v-50601dad]{width:120px;height:120px;border:2px dashed #ddd;border-radius:6px;display:flex;align-items:center;justify-content:center}.btn-upload[data-v-50601dad]{padding:8px 16px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer;font-size:13px}.btn-upload[data-v-50601dad]:hover{background:#f5f5f5}.image-actions[data-v-50601dad]{display:flex;align-items:center;gap:12px}.image-tip[data-v-50601dad]{margin:0;font-size:12px;color:#999}.dialog-footer[data-v-50601dad]{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #eee}.btn-cancel[data-v-50601dad],.btn-confirm[data-v-50601dad]{padding:10px 24px;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-cancel[data-v-50601dad]{background:#f5f5f5;color:#666}.btn-cancel[data-v-50601dad]:hover{background:#e8e8e8}.btn-confirm[data-v-50601dad]{background:#667eea;color:#fff}.btn-confirm[data-v-50601dad]:hover:not(:disabled){background:#5568d3}.btn-confirm[data-v-50601dad]:disabled{opacity:.6;cursor:not-allowed}.contact-message[data-v-73bb3a89]{background:#fff;border-radius:8px;padding:24px}.page-header[data-v-73bb3a89]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h2[data-v-73bb3a89]{margin:0;font-size:20px;font-weight:600;color:#333}.search-bar[data-v-73bb3a89]{display:flex;gap:8px;margin-bottom:16px;padding:10px;background:#f5f5f5;border-radius:6px}.search-select[data-v-73bb3a89]{padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:13px;background:#fff}.btn-search[data-v-73bb3a89],.btn-reset[data-v-73bb3a89]{padding:6px 14px;border:none;border-radius:4px;cursor:pointer;font-size:13px}.btn-search[data-v-73bb3a89]{background:#667eea;color:#fff}.btn-search[data-v-73bb3a89]:hover{background:#5568d3}.btn-reset[data-v-73bb3a89]{background:#999;color:#fff}.btn-reset[data-v-73bb3a89]:hover{background:#777}.table-container[data-v-73bb3a89]{overflow-x:auto;margin-bottom:16px}.data-table[data-v-73bb3a89]{width:100%;border-collapse:collapse;background:#fff}.data-table th[data-v-73bb3a89],.data-table td[data-v-73bb3a89]{padding:14px 16px;text-align:left;border-bottom:1px solid #eee}.data-table th[data-v-73bb3a89]{background:#f5f5f5;font-weight:600;color:#333}.data-table th.text-center[data-v-73bb3a89],.data-table td.text-center[data-v-73bb3a89]{text-align:center}.description-text[data-v-73bb3a89]{display:inline-block;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge[data-v-73bb3a89]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.unread[data-v-73bb3a89]{background:#fff2e6;color:#fa8c16}.status-badge.read[data-v-73bb3a89]{background:#e6f7e6;color:#52c41a}.status-badge.status-clickable[data-v-73bb3a89]{cursor:pointer;transition:all .2s}.status-badge.status-clickable[data-v-73bb3a89]:hover{opacity:.8;transform:scale(1.05)}.btn-edit[data-v-73bb3a89],.btn-delete[data-v-73bb3a89]{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:12px;margin-right:8px}.btn-edit[data-v-73bb3a89]{background:#667eea;color:#fff}.btn-edit[data-v-73bb3a89]:hover{background:#5568d3}.btn-delete[data-v-73bb3a89]{background:#ff4d4f;color:#fff}.btn-delete[data-v-73bb3a89]:hover{background:#ff7875}.empty-data[data-v-73bb3a89]{text-align:center;padding:40px;color:#999}.batch-actions[data-v-73bb3a89]{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f5f5f5;border-radius:6px;margin-bottom:16px}.pagination[data-v-73bb3a89]{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:20px}.pagination button[data-v-73bb3a89]{padding:8px 16px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer}.pagination button[data-v-73bb3a89]:disabled{opacity:.5;cursor:not-allowed}.pagination button[data-v-73bb3a89]:not(:disabled):hover{background:#f5f5f5}.dialog-overlay[data-v-73bb3a89]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.dialog-content[data-v-73bb3a89]{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:80vh;overflow-y:auto}.dialog-large[data-v-73bb3a89]{max-width:800px}.dialog-header[data-v-73bb3a89]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee}.dialog-header h3[data-v-73bb3a89]{margin:0;font-size:18px;font-weight:600}.btn-close[data-v-73bb3a89]{background:none;border:none;font-size:24px;cursor:pointer;color:#999;line-height:1}.btn-close[data-v-73bb3a89]:hover{color:#333}.dialog-body[data-v-73bb3a89]{padding:20px}.detail-item[data-v-73bb3a89]{margin-bottom:16px}.detail-item label[data-v-73bb3a89]{display:inline-block;width:100px;font-weight:600;color:#666}.detail-item span[data-v-73bb3a89]{color:#333}.description-content[data-v-73bb3a89]{margin-top:8px;padding:12px;background:#f5f5f5;border-radius:4px;white-space:pre-wrap;word-break:break-word;line-height:1.6}.dialog-footer[data-v-73bb3a89]{padding:16px 20px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:12px}.btn-primary[data-v-73bb3a89]{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:4px;cursor:pointer}.btn-primary[data-v-73bb3a89]:hover{background:#5568d3}.contact[data-v-dcb68c79]{padding:0}.page-header[data-v-dcb68c79]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h2[data-v-dcb68c79]{font-size:24px;color:#333;margin:0}.btn-primary[data-v-dcb68c79]{padding:10px 20px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-primary[data-v-dcb68c79]:hover{background:#5568d3}.search-bar[data-v-dcb68c79]{display:flex;gap:8px;margin-bottom:20px;padding:10px;background:#fff;border-radius:8px}.search-input[data-v-dcb68c79]{width:300px;padding:6px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px}.btn-search[data-v-dcb68c79],.btn-reset[data-v-dcb68c79]{padding:6px 14px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer;font-size:13px;transition:all .3s ease}.btn-search[data-v-dcb68c79]{background:#667eea;color:#fff;border-color:#667eea}.btn-search[data-v-dcb68c79]:hover{background:#5568d3;border-color:#5568d3}.btn-reset[data-v-dcb68c79]{background:#fff;color:#666}.btn-reset[data-v-dcb68c79]:hover{background:#f5f5f5;border-color:#bbb}.table-container[data-v-dcb68c79]{background:#fff;border-radius:8px;overflow:hidden}.data-table[data-v-dcb68c79]{width:100%;border-collapse:collapse}.data-table th[data-v-dcb68c79],.data-table td[data-v-dcb68c79]{padding:14px 16px;text-align:left;border-bottom:1px solid #eee}.data-table th[data-v-dcb68c79]{background:#f5f5f5;font-weight:600;color:#333}.data-table th.text-center[data-v-dcb68c79],.data-table td.text-center[data-v-dcb68c79]{text-align:center}.data-table tbody tr[data-v-dcb68c79]:hover{background:#f9f9f9}.empty-data[data-v-dcb68c79]{text-align:center;color:#999;padding:40px}.status-badge[data-v-dcb68c79]{padding:4px 12px;border-radius:12px;font-size:12px}.status-badge.active[data-v-dcb68c79]{background:#e6f7e6;color:#52c41a}.status-badge.inactive[data-v-dcb68c79]{background:#fff1f0;color:#ff4d4f}.btn-edit[data-v-dcb68c79],.btn-delete[data-v-dcb68c79]{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:12px;margin-right:8px}.btn-edit[data-v-dcb68c79]{background:#667eea;color:#fff}.btn-edit[data-v-dcb68c79]:hover{background:#5568d3}.btn-delete[data-v-dcb68c79]{background:#ff4d4f;color:#fff}.btn-delete[data-v-dcb68c79]:hover{background:#ff7875}.batch-actions[data-v-dcb68c79]{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#f0f0f0;border-radius:6px;margin-top:20px}.pagination[data-v-dcb68c79]{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px;padding:15px}.pagination button[data-v-dcb68c79]{padding:8px 16px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer}.pagination button[data-v-dcb68c79]:disabled{opacity:.5;cursor:not-allowed}.pagination button[data-v-dcb68c79]:hover:not(:disabled){background:#f5f5f5}.dialog-overlay[data-v-dcb68c79]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.dialog-content[data-v-dcb68c79]{background:#fff;border-radius:8px;width:500px;max-width:90%}.dialog-header[data-v-dcb68c79]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.dialog-header h3[data-v-dcb68c79]{margin:0;font-size:18px}.btn-close[data-v-dcb68c79]{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.dialog-body[data-v-dcb68c79]{padding:20px}.form-group[data-v-dcb68c79]{margin-bottom:20px}.form-group label[data-v-dcb68c79]{display:block;margin-bottom:8px;color:#333;font-size:14px}.required[data-v-dcb68c79]{color:#ff4d4f}.form-group input[data-v-dcb68c79],.form-group select[data-v-dcb68c79]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box}.form-group input[data-v-dcb68c79]:focus,.form-group select[data-v-dcb68c79]:focus{outline:none;border-color:#667eea}.dialog-footer[data-v-dcb68c79]{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #eee}.btn-cancel[data-v-dcb68c79],.btn-confirm[data-v-dcb68c79]{padding:8px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-cancel[data-v-dcb68c79]{background:#f5f5f5;color:#333}.btn-confirm[data-v-dcb68c79]{background:#667eea;color:#fff}.btn-confirm[data-v-dcb68c79]:disabled{opacity:.5;cursor:not-allowed}.message-container[data-v-29aff5f5]{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:12px;pointer-events:none}.message-item[data-v-29aff5f5]{display:flex;align-items:center;gap:12px;min-width:300px;max-width:500px;padding:14px 16px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;pointer-events:auto;animation:slideIn-29aff5f5 .3s ease-out}.message-icon[data-v-29aff5f5]{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px;font-weight:700}.message-success .message-icon[data-v-29aff5f5]{background:#f0f9ff;color:#10b981}.message-error .message-icon[data-v-29aff5f5]{background:#fef2f2;color:#ef4444}.message-warning .message-icon[data-v-29aff5f5]{background:#fffbeb;color:#f59e0b}.message-info .message-icon[data-v-29aff5f5]{background:#eff6ff;color:#3b82f6}.message-item.message-info[data-v-29aff5f5]{border-left:4px solid #3b82f6;animation:slideInWithBounce-29aff5f5 .4s ease-out}@keyframes slideInWithBounce-29aff5f5{0%{transform:translate(120%);opacity:0}60%{transform:translate(-5%)}to{transform:translate(0);opacity:1}}.message-content[data-v-29aff5f5]{flex:1;min-width:0}.message-text[data-v-29aff5f5]{font-size:14px;color:#333;line-height:1.5;word-break:break-word}.message-close[data-v-29aff5f5]{flex-shrink:0;width:20px;height:20px;border:none;background:transparent;color:#999;font-size:20px;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:color .2s}.message-close[data-v-29aff5f5]:hover{color:#666}@keyframes slideIn-29aff5f5{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.message-enter-active[data-v-29aff5f5],.message-leave-active[data-v-29aff5f5]{transition:all .3s ease}.message-enter-from[data-v-29aff5f5],.message-leave-to[data-v-29aff5f5]{transform:translate(100%);opacity:0}@media(max-width:768px){.message-container[data-v-29aff5f5]{right:10px;left:10px}.message-item[data-v-29aff5f5]{min-width:auto;max-width:100%}}.confirm-overlay[data-v-80ac7c1e]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10001;padding:20px}.confirm-dialog[data-v-80ac7c1e]{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;min-width:400px;max-width:500px;overflow:hidden;animation:dialogSlideIn-80ac7c1e .3s ease-out}.confirm-header[data-v-80ac7c1e]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #eee}.confirm-title[data-v-80ac7c1e]{margin:0;font-size:18px;font-weight:600;color:#333}.confirm-close[data-v-80ac7c1e]{width:24px;height:24px;border:none;background:transparent;color:#999;font-size:24px;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:color .2s}.confirm-close[data-v-80ac7c1e]:hover{color:#666}.confirm-body[data-v-80ac7c1e]{padding:24px}.confirm-message[data-v-80ac7c1e]{margin:0;font-size:14px;color:#666;line-height:1.6}.confirm-footer[data-v-80ac7c1e]{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #eee}.confirm-btn[data-v-80ac7c1e]{padding:10px 24px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.confirm-btn-cancel[data-v-80ac7c1e]{background:#f5f5f5;color:#666}.confirm-btn-cancel[data-v-80ac7c1e]:hover{background:#e8e8e8}.confirm-btn-ok[data-v-80ac7c1e]{background:#667eea;color:#fff}.confirm-btn-ok[data-v-80ac7c1e]:hover{background:#5568d3}@keyframes dialogSlideIn-80ac7c1e{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.dialog-enter-active[data-v-80ac7c1e],.dialog-leave-active[data-v-80ac7c1e]{transition:all .3s ease}.dialog-enter-from[data-v-80ac7c1e],.dialog-leave-to[data-v-80ac7c1e]{opacity:0}.dialog-enter-from .confirm-dialog[data-v-80ac7c1e],.dialog-leave-to .confirm-dialog[data-v-80ac7c1e]{transform:scale(.9)}@media(max-width:768px){.confirm-dialog[data-v-80ac7c1e]{min-width:auto;width:calc(100% - 40px);max-width:100%}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{min-height:100vh}
