.icon-picker[data-v-37864a0c]{position:relative;width:100%}.selected-icon[data-v-37864a0c]{display:flex;align-items:center;gap:12px;padding:8px 12px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s}.selected-icon[data-v-37864a0c]:hover:not(.disabled){border-color:#007bff}.selected-icon.disabled[data-v-37864a0c]{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.icon-preview[data-v-37864a0c]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #e0e0e0;border-radius:4px;background:#f8f9fa}.icon-preview i[data-v-37864a0c]{font-size:20px;color:#333}.icon-preview .placeholder[data-v-37864a0c]{font-size:12px;color:#999}.icon-name[data-v-37864a0c]{flex:1;font-size:14px;color:#333;font-family:Courier New,monospace}.toggle-arrow[data-v-37864a0c]{font-size:16px;color:#666;transition:transform .2s}.toggle-arrow.open[data-v-37864a0c]{transform:rotate(180deg)}.icon-picker-panel[data-v-37864a0c]{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:1000;max-height:500px;display:flex;flex-direction:column}.picker-header[data-v-37864a0c]{display:flex;gap:8px;padding:12px;border-bottom:1px solid #e0e0e0}.search-input[data-v-37864a0c]{flex:1;padding:6px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.search-input[data-v-37864a0c]:focus{outline:none;border-color:#007bff}.btn-clear[data-v-37864a0c]{padding:6px 12px;border:1px solid #ddd;border-radius:4px;background:#fff;color:#666;font-size:14px;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-clear[data-v-37864a0c]:hover{background:#f8f9fa;border-color:#999}.category-tabs[data-v-37864a0c]{display:flex;gap:4px;padding:8px 12px;overflow-x:auto;border-bottom:1px solid #e0e0e0;background:#f8f9fa}.category-tabs[data-v-37864a0c]::-webkit-scrollbar{height:4px}.category-tabs[data-v-37864a0c]::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.category-tab[data-v-37864a0c]{display:flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid #e0e0e0;border-radius:16px;background:#fff;color:#666;font-size:12px;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.category-tab[data-v-37864a0c]:hover{border-color:#007bff;background:#f0f7ff;color:#007bff}.category-tab.active[data-v-37864a0c]{border-color:#007bff;background:#007bff;color:#fff}.category-tab i[data-v-37864a0c]{font-size:14px}.category-label[data-v-37864a0c]{font-weight:500}.icon-grid[data-v-37864a0c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:8px;padding:12px;overflow-y:auto;max-height:350px}.icon-item[data-v-37864a0c]{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;transition:all .2s;background:#fff}.icon-item[data-v-37864a0c]:hover{border-color:#007bff;background:#f0f7ff;transform:scale(1.1)}.icon-item.selected[data-v-37864a0c]{border-color:#007bff;background:#007bff}.icon-item i[data-v-37864a0c]{font-size:24px;color:#333}.icon-item.selected i[data-v-37864a0c]{color:#fff}.empty-state[data-v-37864a0c]{padding:40px 20px;text-align:center;color:#999;font-size:14px}.picker-overlay[data-v-37864a0c]{position:fixed;top:0;left:0;right:0;bottom:0;z-index:999}.modal-overlay[data-v-1b1cc762]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-dialog[data-v-1b1cc762]{background:#fff;border-radius:8px;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 6px rgba(0,0,0,.1)}.modal-header[data-v-1b1cc762]{padding:20px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.modal-title[data-v-1b1cc762]{margin:0;font-size:1.25rem;font-weight:600}.btn-close[data-v-1b1cc762]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.btn-close[data-v-1b1cc762]:hover{background-color:#f3f4f6;color:#374151}.modal-body[data-v-1b1cc762]{padding:20px;overflow-y:auto;flex:1}.modal-footer[data-v-1b1cc762]{padding:20px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:12px}.empty-state[data-v-1b1cc762],.loading-state[data-v-1b1cc762]{text-align:center;padding:40px 20px;color:#6b7280}.spin[data-v-1b1cc762]{animation:spin-1b1cc762 1s linear infinite}@keyframes spin-1b1cc762{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.search-box[data-v-1b1cc762]{margin-bottom:20px}.available-programs-list[data-v-1b1cc762]{display:flex;flex-direction:column;gap:12px}.available-program-item-wrapper[data-v-1b1cc762]{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.available-program-item[data-v-1b1cc762]{padding:16px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background-color .2s}.available-program-item[data-v-1b1cc762]:hover{background-color:#f9fafb}.available-program-item.selected[data-v-1b1cc762]{background-color:#eff6ff;border-color:#3b82f6}.program-icon[data-v-1b1cc762]{font-size:1.5rem;color:#6b7280}.program-details[data-v-1b1cc762]{flex:1}.program-name[data-v-1b1cc762]{font-weight:500;color:#111827;margin-bottom:4px}.program-meta[data-v-1b1cc762]{display:flex;gap:12px;font-size:.875rem;color:#6b7280}.permissions-selector[data-v-1b1cc762]{padding:16px;background-color:#f9fafb;border-top:1px solid #e5e7eb}.permissions-header[data-v-1b1cc762]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.permissions-label[data-v-1b1cc762]{font-weight:500;color:#374151}.btn-link[data-v-1b1cc762]{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:.875rem;padding:0;text-decoration:underline}.btn-link[data-v-1b1cc762]:hover{color:#2563eb}.btn-link.btn-sm[data-v-1b1cc762]{font-size:.8125rem}.permissions-checkboxes[data-v-1b1cc762]{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.permission-checkbox-label[data-v-1b1cc762]{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:.875rem}.permission-name[data-v-1b1cc762]{color:#374151}.permissions-hint[data-v-1b1cc762]{font-size:.8125rem;color:#6b7280;display:flex;align-items:center;gap:6px}.btn[data-v-1b1cc762]{padding:8px 16px;border-radius:6px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.btn-secondary[data-v-1b1cc762]{background-color:#f3f4f6;color:#374151}.btn-secondary[data-v-1b1cc762]:hover:not(:disabled){background-color:#e5e7eb}.btn-primary[data-v-1b1cc762]{background-color:#3b82f6;color:#fff}.btn-primary[data-v-1b1cc762]:hover:not(:disabled){background-color:#2563eb}.btn[data-v-1b1cc762]:disabled{opacity:.5;cursor:not-allowed}.create-module-container[data-v-31a6bc7a]{padding:0}.page-header[data-v-31a6bc7a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-title[data-v-31a6bc7a]{font-size:24px;font-weight:600;color:#333;margin:0}.form-container[data-v-31a6bc7a]{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px rgba(0,0,0,.05)}.form-section[data-v-31a6bc7a]{margin-bottom:32px}.section-title[data-v-31a6bc7a]{font-size:18px;font-weight:600;color:#333;margin:0 0 20px 0;padding-bottom:12px;border-bottom:2px solid #e9ecef}.form-row[data-v-31a6bc7a]{display:flex;gap:24px;margin-bottom:20px}.form-group[data-v-31a6bc7a]{flex:1;display:flex;flex-direction:column}.full-width[data-v-31a6bc7a]{flex:1 1 100%}.form-group label[data-v-31a6bc7a]{font-weight:500;color:#495057;margin-bottom:8px;font-size:14px}.form-group label.required[data-v-31a6bc7a]:after{content:"*";color:#dc3545;margin-left:4px}.form-control[data-v-31a6bc7a]{padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control[data-v-31a6bc7a]:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control[data-v-31a6bc7a]:disabled{background-color:#e9ecef;cursor:not-allowed}.form-control.is-valid[data-v-31a6bc7a]{border-color:#28a745}.form-control.is-invalid[data-v-31a6bc7a]{border-color:#dc3545}.form-hint[data-v-31a6bc7a]{font-size:12px;color:#6c757d;margin-top:4px;margin-bottom:0}.form-hint-important[data-v-31a6bc7a]{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:#856404;background-color:#fff3cd;border:1px solid #ffc107;border-radius:4px;padding:8px 12px;margin-top:8px;margin-bottom:0}.form-hint-important i[data-v-31a6bc7a]{font-size:16px;color:#ff9800;flex-shrink:0}.form-hint-important span[data-v-31a6bc7a]{line-height:1.4}.invalid-feedback[data-v-31a6bc7a]{display:block;color:#dc3545;font-size:14px;margin-top:6px}.validation-feedback[data-v-31a6bc7a]{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:14px}.validation-feedback.checking[data-v-31a6bc7a]{color:#6c757d}.validation-feedback.valid[data-v-31a6bc7a]{color:#28a745}.validation-feedback.invalid[data-v-31a6bc7a]{color:#dc3545}.validation-feedback .spin[data-v-31a6bc7a]{animation:spin-31a6bc7a 1s linear infinite}@keyframes spin-31a6bc7a{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.alert[data-v-31a6bc7a]{padding:12px 16px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert-danger[data-v-31a6bc7a]{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.form-actions[data-v-31a6bc7a]{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid #e9ecef}.btn[data-v-31a6bc7a]{padding:10px 20px;font-size:14px;font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:all .2s}.btn[data-v-31a6bc7a]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-31a6bc7a]{background-color:#007bff;color:#fff}.btn-primary[data-v-31a6bc7a]:hover:not(:disabled){background-color:#0056b3}.btn-secondary[data-v-31a6bc7a]{background-color:#6c757d;color:#fff}.btn-secondary[data-v-31a6bc7a]:hover:not(:disabled){background-color:#545b62}textarea.form-control[data-v-31a6bc7a]{resize:vertical;min-height:80px}select.form-control[data-v-31a6bc7a]{cursor:pointer}.programs-management[data-v-31a6bc7a]{margin-top:16px}.programs-header[data-v-31a6bc7a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.programs-description[data-v-31a6bc7a]{color:#6c757d;font-size:14px;margin:0}.empty-state[data-v-31a6bc7a],.loading-state[data-v-31a6bc7a]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#6c757d;font-size:14px}.empty-state i[data-v-31a6bc7a],.loading-state i[data-v-31a6bc7a]{font-size:48px;margin-bottom:12px;color:#adb5bd}.programs-list[data-v-31a6bc7a]{display:flex;flex-direction:column;gap:12px}.program-item[data-v-31a6bc7a]{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid #e9ecef;border-radius:6px;background:#f8f9fa;transition:all .2s}.program-item[data-v-31a6bc7a]:hover{border-color:#ced4da;background:#fff}.program-actions[data-v-31a6bc7a]{display:flex;gap:8px;align-items:center;flex-shrink:0}.btn-outline-primary[data-v-31a6bc7a]{background:#fff;color:#007bff;border:1px solid #007bff}.btn-outline-primary[data-v-31a6bc7a]:hover:not(:disabled){background:#007bff;color:#fff}.program-info[data-v-31a6bc7a]{display:flex;align-items:center;gap:12px;flex:1}.program-icon[data-v-31a6bc7a]{font-size:24px;color:#495057}.program-details[data-v-31a6bc7a]{flex:1}.program-name[data-v-31a6bc7a]{font-weight:500;color:#333;margin-bottom:4px}.program-meta[data-v-31a6bc7a]{display:flex;gap:12px;font-size:12px;color:#6c757d;align-items:center;flex-wrap:wrap}.program-code[data-v-31a6bc7a]{padding:2px 8px;background:#e9ecef;border-radius:3px;font-family:monospace}.program-path-small[data-v-31a6bc7a]{color:#868e96;font-size:11px}.program-description[data-v-31a6bc7a]{margin-top:6px;font-size:13px;color:#495057;line-height:1.5}.program-allowed-permissions[data-v-31a6bc7a]{margin-top:8px;width:100%}.allowed-perms[data-v-31a6bc7a]{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.perms-label[data-v-31a6bc7a]{font-size:12px;color:#495057;font-weight:500}.perm-badge[data-v-31a6bc7a]{display:inline-block;padding:3px 10px;background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb;border-radius:4px;font-size:11px;font-weight:500;white-space:nowrap}.all-perms-allowed[data-v-31a6bc7a]{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#d4edda;color:#155724;border:1px solid #c3e6cb;border-radius:4px;font-size:12px;font-weight:500;width:-moz-fit-content;width:fit-content}.all-perms-allowed i[data-v-31a6bc7a]{font-size:14px}.program-permissions-preview[data-v-31a6bc7a]{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.perm-badge-small[data-v-31a6bc7a]{padding:2px 6px;background:#667eea;color:#fff;border-radius:3px;font-size:10px;font-family:monospace}.program-permission[data-v-31a6bc7a]{padding:2px 8px;background:#d1ecf1;color:#0c5460;border-radius:3px}.btn-sm[data-v-31a6bc7a]{padding:6px 12px;font-size:13px}.modal-overlay[data-v-31a6bc7a]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-dialog[data-v-31a6bc7a]{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 20px rgba(0,0,0,.15)}.modal-header[data-v-31a6bc7a]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e9ecef}.modal-title[data-v-31a6bc7a]{font-size:18px;font-weight:600;color:#333;margin:0}.btn-close[data-v-31a6bc7a]{background:none;border:none;font-size:24px;color:#6c757d;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.btn-close[data-v-31a6bc7a]:hover{background:#f8f9fa;color:#333}.modal-body[data-v-31a6bc7a]{flex:1;overflow-y:auto;padding:20px 24px}.search-box[data-v-31a6bc7a]{margin-bottom:16px}.available-programs-list[data-v-31a6bc7a]{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.available-program-item-wrapper[data-v-31a6bc7a]{display:flex;flex-direction:column;gap:8px}.available-program-item[data-v-31a6bc7a]{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #e9ecef;border-radius:6px;cursor:pointer;transition:all .2s}.available-program-item[data-v-31a6bc7a]:hover{border-color:#007bff;background:#f8f9ff}.available-program-item.selected[data-v-31a6bc7a]{border-color:#007bff;background:#e7f3ff}.available-program-item input[type=checkbox][data-v-31a6bc7a]{cursor:pointer}.permissions-selector[data-v-31a6bc7a]{padding:12px;margin-left:36px;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;animation:slideDown-31a6bc7a .2s ease-out}@keyframes slideDown-31a6bc7a{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.permissions-header[data-v-31a6bc7a]{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #dee2e6}.permissions-label[data-v-31a6bc7a]{font-weight:600;color:#495057;font-size:14px}.btn-link[data-v-31a6bc7a]{background:none;border:none;color:#007bff;cursor:pointer;font-size:13px;padding:2px 8px;text-decoration:none;transition:color .2s}.btn-link[data-v-31a6bc7a]:hover{color:#0056b3;text-decoration:underline}.permissions-checkboxes[data-v-31a6bc7a]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin-bottom:12px}.permission-checkbox-label[data-v-31a6bc7a]{display:flex;align-items:center;gap:8px;padding:8px;background:#fff;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;transition:all .2s;font-size:14px}.permission-checkbox-label[data-v-31a6bc7a]:hover{border-color:#007bff;background:#f8f9ff}.permission-checkbox-label input[type=checkbox][data-v-31a6bc7a]{cursor:pointer;margin:0}.permission-name[data-v-31a6bc7a]{-webkit-user-select:none;-moz-user-select:none;user-select:none;color:#495057}.permissions-hint[data-v-31a6bc7a]{display:flex;align-items:center;gap:6px;font-size:12px;color:#6c757d;font-style:italic}.permissions-hint i[data-v-31a6bc7a]{font-size:14px}.program-path[data-v-31a6bc7a]{color:#6c757d;font-size:12px;margin-left:8px}.modal-footer[data-v-31a6bc7a]{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e9ecef}.btn-danger[data-v-31a6bc7a]{background-color:#dc3545;color:#fff}.btn-danger[data-v-31a6bc7a]:hover:not(:disabled){background-color:#c82333}.editing-program-info[data-v-31a6bc7a]{display:flex;flex-direction:column;gap:20px}.info-row[data-v-31a6bc7a]{display:flex;align-items:center;gap:16px;padding:16px;background:#f8f9fa;border-radius:8px}.program-icon-large[data-v-31a6bc7a]{font-size:32px;color:#007bff}.program-name-large[data-v-31a6bc7a]{font-size:18px;font-weight:600;color:#212529;margin-bottom:4px}.program-meta-large[data-v-31a6bc7a]{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.program-description-large[data-v-31a6bc7a]{margin-top:8px;font-size:14px;color:#495057;line-height:1.6}.permissions-editor[data-v-31a6bc7a]{display:flex;flex-direction:column;gap:12px}.no-permissions[data-v-31a6bc7a]{padding:24px;text-align:center;color:#6c757d;background:#f8f9fa;border-radius:6px;display:flex;align-items:center;justify-content:center;gap:8px}.no-permissions i[data-v-31a6bc7a]{font-size:20px}@media (max-width:768px){.form-row[data-v-31a6bc7a]{flex-direction:column}}