@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.auth-card[data-v-da4de60e]{background:#fff;width:100%;max-width:420px;padding:40px;border-radius:12px;box-shadow:0 10px 40px #00000014;border:1px solid #ebeef5}.auth-header[data-v-da4de60e]{text-align:center;margin-bottom:32px}.auth-header h2[data-v-da4de60e]{font-size:24px;font-weight:700;color:#1a1a1a;margin-bottom:8px}.auth-header p[data-v-da4de60e]{color:#909399;font-size:14px;line-height:1.5}.standard-form[data-v-da4de60e]{display:flex;flex-direction:column;gap:24px}.standard-form .form-group[data-v-da4de60e]{display:flex;flex-direction:column;gap:8px}.standard-form .form-group label[data-v-da4de60e]{font-weight:600;font-size:13px;color:#1a1a1a}.standard-form .form-group input[data-v-da4de60e]{padding:12px 16px;border:1px solid #ebeef5;border-radius:8px;font-size:14px;transition:all .2s}.standard-form .form-group input[data-v-da4de60e]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.password-input-wrapper[data-v-da4de60e]{position:relative;display:flex}.password-input-wrapper input[data-v-da4de60e]{width:100%;padding-right:48px!important}.password-input-wrapper .password-toggle[data-v-da4de60e]{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;padding:8px;cursor:pointer;color:#909399;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.password-input-wrapper .password-toggle[data-v-da4de60e]:hover{background:#f8f9fa;color:#1a1a1a}.password-input-wrapper .password-toggle .toggle-icon[data-v-da4de60e]{width:24px;height:24px;stroke:currentColor}.login-btn[data-v-da4de60e]{width:100%;height:48px;justify-content:center;font-size:16px}.form-footer[data-v-da4de60e]{text-align:center}.form-footer .link-btn[data-v-da4de60e]{background:none;border:none;color:#3b82f6;font-size:13px;font-weight:500;cursor:pointer}.form-footer .link-btn[data-v-da4de60e]:hover{text-decoration:underline}.login-page[data-v-bbf75f33]{min-height:100vh;display:flex;justify-content:center;align-items:center;background-color:#f8f9fa;position:relative;overflow:hidden}.auth-background[data-v-bbf75f33]{position:absolute;top:-10%;right:-10%;width:50%;height:50%;background:radial-gradient(circle,rgba(59,130,246,.05) 0%,transparent 70%);z-index:0}.auth-container[data-v-bbf75f33]{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;width:100%;padding:20px}.branding[data-v-bbf75f33]{display:flex;align-items:center;gap:16px;margin-bottom:40px}.branding .logo[data-v-bbf75f33]{width:48px;height:48px;color:#3b82f6}.branding h1[data-v-bbf75f33]{font-size:32px;font-weight:800;color:#1a1a1a;letter-spacing:-1px;margin:0}.error-alert[data-v-bbf75f33]{margin-top:24px;background:#fff1f0;border:1px solid #ffa39e;padding:12px 20px;border-radius:8px;display:flex;align-items:center;gap:12px;max-width:420px;width:100%}.error-alert .error-icon[data-v-bbf75f33]{background:#f56c6c;color:#fff;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.error-alert p[data-v-bbf75f33]{margin:0;color:#a8071a;font-size:14px;font-weight:500}.fade-enter-active[data-v-bbf75f33],.fade-leave-active[data-v-bbf75f33]{transition:opacity .3s,transform .3s}.fade-enter-from[data-v-bbf75f33],.fade-leave-to[data-v-bbf75f33]{opacity:0;transform:translateY(-10px)}.auth-layout[data-v-3930af8a]{min-height:100vh;min-width:100vw;align-items:center}.sidebar-branding[data-v-4b408695]{height:64px;display:flex;align-items:center;padding:0 20px;gap:16px;border-bottom:1px solid rgba(255,255,255,.05)}.sidebar-branding.is-collapsed[data-v-4b408695]{justify-content:center;padding:0}.sidebar-branding .burger-btn[data-v-4b408695]{background:none;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;transition:background .2s}.sidebar-branding .burger-btn[data-v-4b408695]:hover{background:#ffffff1a}.sidebar-branding .burger-btn svg[data-v-4b408695]{width:24px;height:24px}.sidebar-branding .logo-wrapper[data-v-4b408695]{display:flex;align-items:center;gap:12px}.sidebar-branding .logo-wrapper .logo-icon[data-v-4b408695]{width:28px;height:28px}.sidebar-branding .logo-wrapper .logo-text[data-v-4b408695]{font-weight:700;font-size:18px;letter-spacing:-.5px}.sidebar-navigation[data-v-1b695cd9]{flex:1;padding:12px 0;display:flex;flex-direction:column;gap:4px}.nav-item[data-v-1b695cd9]{display:flex;color:#83a7e1;text-decoration:none;transition:all .2s ease;position:relative}.nav-item .nav-icon[data-v-1b695cd9]{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:2}.nav-item[data-v-1b695cd9]:hover{background:#ffffff14;color:#fff}.nav-item.active[data-v-1b695cd9]{background:#ffffff1f;color:#fff}.nav-item.active[data-v-1b695cd9]:before{content:"";position:absolute;background:#3b82f6;left:0;top:0;bottom:0;width:4px;border-radius:0 4px 4px 0}.nav-item.active .nav-icon[data-v-1b695cd9]{color:#3b82f6}.nav-item .icon-wrapper[data-v-1b695cd9]{display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-navigation:not(.is-collapsed) .nav-item[data-v-1b695cd9]{flex-direction:row;align-items:center;padding:12px 20px;gap:16px}.sidebar-navigation:not(.is-collapsed) .nav-item .nav-text[data-v-1b695cd9]{font-size:15px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-navigation.is-collapsed .nav-item[data-v-1b695cd9]{flex-direction:column;align-items:center;padding:10px 4px;gap:6px;min-height:72px;justify-content:center}.sidebar-navigation.is-collapsed .nav-item .nav-text[data-v-1b695cd9]{font-size:11px;font-weight:500;text-align:center;line-height:1.2;white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word;display:block;width:100%}.sidebar-navigation.is-collapsed .nav-item .nav-icon[data-v-1b695cd9]{width:24px;height:24px;flex-shrink:0}.sidebar-navigation.is-collapsed .nav-item.active[data-v-1b695cd9]:before{width:100%;height:3px;top:auto;bottom:0;border-radius:4px 4px 0 0}.sidebar-profile[data-v-6a80ae0e]{padding:16px 12px;border-top:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;gap:16px}.sidebar-profile .user-info[data-v-6a80ae0e]{display:flex;align-items:center;gap:12px;padding:0 8px}.sidebar-profile .user-info .user-avatar[data-v-6a80ae0e]{width:36px;height:36px;background:#3b82f6;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:#fff;flex-shrink:0}.sidebar-profile .user-info .user-details[data-v-6a80ae0e]{display:flex;flex-direction:column;overflow:hidden}.sidebar-profile .user-info .user-details .user-name[data-v-6a80ae0e]{font-size:14px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-profile .user-info .user-details .user-role[data-v-6a80ae0e]{font-size:12px;color:#83a7e1}.sidebar-profile .logout-btn[data-v-6a80ae0e]{display:flex;align-items:center;width:100%;background:#f56c6c1a;border:1px solid rgba(245,108,108,.1);color:#f89c9c;cursor:pointer;padding:10px 12px;border-radius:8px;transition:all .2s ease}.sidebar-profile .logout-btn[data-v-6a80ae0e]:hover{background:#f56c6c33;border-color:#f56c6c4d;color:#fff;transform:translateY(-1px)}.sidebar-profile .logout-btn[data-v-6a80ae0e]:active{transform:translateY(0);background:#f56c6c4d}.sidebar-profile .logout-btn .icon-wrapper[data-v-6a80ae0e]{display:flex;align-items:center;justify-content:center}.sidebar-profile .logout-btn .logout-icon[data-v-6a80ae0e]{width:24px;height:24px;stroke:currentColor}.sidebar-profile .logout-btn .logout-text[data-v-6a80ae0e]{margin-left:12px;font-size:14px;font-weight:600;white-space:nowrap}.sidebar-profile.is-collapsed[data-v-6a80ae0e]{align-items:center;padding:16px 8px}.sidebar-profile.is-collapsed .logout-btn[data-v-6a80ae0e]{justify-content:center;padding:12px 0;width:44px;height:44px}.sidebar-profile.is-collapsed .logout-btn .icon-wrapper[data-v-6a80ae0e]{width:100%}.app-sidebar[data-v-0d388ca3]{width:240px;background:#09295c;color:#fff;display:flex;flex-direction:column;position:fixed;height:100vh;left:0;top:0;transition:width .3s cubic-bezier(.4,0,.2,1);z-index:1000;overflow:hidden}.app-sidebar.is-collapsed[data-v-0d388ca3]{width:72px}.app-sidebar.is-mobile[data-v-0d388ca3]{transform:translate(-100%);width:240px}.app-sidebar.is-mobile.is-collapsed[data-v-0d388ca3]{transform:translate(-100%)}.app-sidebar.is-mobile[data-v-0d388ca3]:not(.is-collapsed){transform:translate(0)}.sidebar-overlay[data-v-0d388ca3]{position:fixed;inset:0;background:#00000080;z-index:999}.app-header[data-v-9a50492c]{height:64px;background:#fff;border-bottom:1px solid #ebeef5;display:flex;justify-content:space-between;align-items:center;padding:0 24px;position:sticky;top:0;z-index:10}.app-header .header-left[data-v-9a50492c]{display:flex;align-items:center;gap:16px}.app-header .header-left .page-title[data-v-9a50492c]{font-size:18px;font-weight:700;color:#1a1a1a;margin:0}.app-header .mobile-burger-btn[data-v-9a50492c]{display:none;background:none;border:none;cursor:pointer;color:#1a1a1a;padding:4px}.app-header .mobile-burger-btn svg[data-v-9a50492c]{width:24px;height:24px}.app-header .header-right[data-v-9a50492c]{display:flex;align-items:center;gap:20px}.app-header .header-right .avatar-circle[data-v-9a50492c]{width:32px;height:32px;background:#fefeff;color:#3b82f6;border:1px solid #3b82f6;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}@media(max-width:768px){.app-header[data-v-9a50492c]{padding:0 16px}.app-header .mobile-burger-btn[data-v-9a50492c]{display:flex}.app-header .page-title[data-v-9a50492c]{font-size:16px}}.app-layout[data-v-5a9f9030]{display:flex;min-height:100vh}.main-container[data-v-5a9f9030]{flex:1;display:flex;flex-direction:column;padding-left:240px;transition:padding-left .3s cubic-bezier(.4,0,.2,1)}.main-container.is-sidebar-collapsed[data-v-5a9f9030]{padding-left:72px}@media(max-width:768px){.main-container[data-v-5a9f9030]{padding-left:0!important}}.content-view[data-v-5a9f9030]{padding:32px;background:#f8f9fa;flex:1}.page-layout{padding:24px;max-width:1400px;margin:0 auto}.section-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.section-header .header-title h2{margin:0;font-size:24px;color:#1a1a1a}.section-header .header-title .count-label{font-size:14px;color:#909399;margin-top:4px;display:block}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s}.btn-primary:hover{background-color:#629bf8;transform:translateY(-1px)}.btn-primary:disabled{background-color:#909399;cursor:not-allowed;transform:none}.btn-primary svg{width:18px;height:18px}.segmented-control{display:flex;gap:4px;background:#f8f9fa;padding:4px;border-radius:8px;border:1px solid #ebeef5;width:fit-content}.segmented-control .option-btn{padding:6px 12px;border:none;background:transparent;border-radius:4px;font-size:13px;font-weight:600;color:#606266;cursor:pointer;transition:all .2s}.segmented-control .option-btn:hover:not(.active){color:#3b82f6}.segmented-control .option-btn.active{background:#fff;color:#3b82f6;box-shadow:0 2px 6px #0000000d}.segmented-control .option-btn:disabled{opacity:.5;cursor:not-allowed}.table-container{background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000000d;border:1px solid #ebeef5;overflow:hidden}.table-container table{width:100%;border-collapse:collapse;text-align:left}.table-container table th{background:#f5f7fa;padding:16px;font-weight:600;color:#606266;font-size:13px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #ebeef5}.table-container table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.table-container table th.sortable:hover{background-color:#eff1f4}.table-container table th.sortable .sort-icon-wrapper{display:inline-flex;align-items:center;vertical-align:middle;margin-left:6px;width:14px;height:14px;color:#909399;transition:transform .3s ease,color .2s}.table-container table th.sortable .sort-icon-wrapper.active{color:#3b82f6}.table-container table th.sortable .sort-icon-wrapper.desc{transform:rotate(180deg)}.table-container table th.sortable .sort-icon-wrapper svg{width:100%;height:100%}.table-container table td{padding:16px;border-bottom:1px solid #ebeef5;vertical-align:middle;color:#1a1a1a;font-size:14px}.table-container table tr:last-child td{border-bottom:none}.table-container table tr:hover td{background-color:#f9f9fa}.table-container table tr.highlighted{background-color:#3b82f60a!important}.table-container table tr.highlighted td{border-bottom-color:#3b82f633!important}.header-tools{display:flex;align-items:center;gap:12px}.header-tools .search-wrapper{position:relative;flex:1;max-width:320px}.header-tools .search-wrapper .search-icon-svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#909399;width:18px;height:18px;pointer-events:none}.header-tools .search-wrapper input{width:100%;padding:10px 12px 10px 42px;border:1px solid #ebeef5;border-radius:8px;font-size:14px;background-color:#fff;outline:none;transition:all .2s}.header-tools .search-wrapper input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-group{position:relative}.filter-group .filter-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border:1px solid #ebeef5;border-radius:8px;font-size:14px;font-weight:500;color:#606266;cursor:pointer;transition:all .2s}.filter-group .filter-btn:hover{border-color:#3b82f6;color:#3b82f6}.filter-group .filter-btn.active{background:#3b82f60d;border-color:#3b82f6;color:#3b82f6}.filter-group .filter-btn .filter-badge{background:#3b82f6;color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:10px;min-width:18px}.filter-group .filter-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:260px;background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000001a;border:1px solid #ebeef5;z-index:100;padding:16px;display:flex;flex-direction:column;gap:20px}.filter-group .filter-dropdown .filter-section h4{margin:0 0 10px;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#909399}.filter-group .filter-dropdown .filter-section .options-list{display:flex;flex-direction:column;gap:8px;max-height:160px;overflow-y:auto}.filter-group .filter-dropdown .filter-footer{display:flex;justify-content:flex-end;padding-top:12px;border-top:1px solid #ebeef5}.filter-group .filter-dropdown .filter-footer .reset-link{background:none;border:none;color:#3b82f6;font-size:13px;font-weight:600;cursor:pointer}.filter-group .filter-dropdown .filter-footer .reset-link:hover{text-decoration:underline}.check-item{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;color:#1a1a1a;-webkit-user-select:none;user-select:none}.check-item input[type=checkbox]{width:16px;height:16px;cursor:pointer}.check-item:hover{color:#3b82f6}.action-btn-group{display:flex;justify-content:flex-end;gap:8px}.action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid #ebeef5;background-color:#fff;border-radius:8px;cursor:pointer;transition:all .2s;color:#606266}.action-btn svg{width:16px;height:16px;stroke-width:2}.action-btn:hover{border-color:#3b82f6;color:#3b82f6;background-color:#3b82f60d}.action-btn.delete:hover{border-color:#f56c6c;color:#f56c6c;background-color:#f56c6c0d}.action-btn.download:hover{border-color:#67c23a;color:#67c23a;background-color:#67c23a0d}.action-btn:disabled{opacity:.5;cursor:not-allowed}.table-filter-info{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:10px 16px;border-radius:8px;border:1px solid rgba(59,130,246,.2);margin-bottom:16px;animation:slideDown .3s ease}.table-filter-info .filter-text{font-size:13px;color:#0b63f3;font-weight:500}.table-filter-info .filter-text strong{font-weight:700;color:#3b82f6}.table-filter-info .reset-filter-btn{background:#3b82f6;color:#fff;border:none;border-radius:4px;padding:4px 12px;font-size:11px;font-weight:700;cursor:pointer;transition:opacity .2s}.table-filter-info .reset-filter-btn:hover{opacity:.9}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.text-right{text-align:right}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-card{background:#fff;border-radius:12px;padding:30px;width:100%;max-width:550px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 25px #0003}.modal-card .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;border-bottom:1px solid #ebeef5;padding-bottom:12px}.modal-card .modal-header h3{margin:0;font-size:1.5rem;color:#1a1a1a}.warning-box{background-color:#fff1f0;border:1px solid #ffa39e;color:#cf1322;padding:10px 14px;border-radius:8px;font-size:13px;font-weight:500}.btn-danger{padding:10px 20px;background-color:#f56c6c;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background .2s}.btn-danger:hover:not(:disabled){background-color:#f23c3c}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:10px 20px;background:#f4f4f5;border:none;border-radius:8px;cursor:pointer;font-weight:500;color:#606266;transition:background .2s}.btn-secondary:hover:not(:disabled){background:#e9e9eb}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#909399;line-height:1;transition:color .2s}.close-btn:hover{color:#1a1a1a}.close-btn:disabled{opacity:.6;cursor:not-allowed}html,body,#app{margin:0;padding:0;height:100%;width:100%}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:#f8f9fa;color:#1a1a1a;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:after,*:before{box-sizing:border-box}
