.drawer-overlay[data-v-bda80d6d]{background:#00000080;left:0;z-index:999}.drawer[data-v-bda80d6d],.drawer-overlay[data-v-bda80d6d]{bottom:0;position:fixed;right:0;top:0}.drawer[data-v-bda80d6d]{background:#fff;box-shadow:-2px 0 8px #00000026;display:flex;flex-direction:column;max-width:90vw;width:400px;z-index:1000}.drawer-header[data-v-bda80d6d]{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e0e0e0;color:#fff;display:flex;justify-content:space-between;padding:20px}.drawer-header h2[data-v-bda80d6d]{font-size:1.5rem;font-weight:600;margin:0}.close-btn[data-v-bda80d6d]{align-items:center;background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:2rem;height:32px;justify-content:center;padding:0;transition:background .2s;width:32px}.close-btn[data-v-bda80d6d]:hover{background:#fff3}.drawer-content[data-v-bda80d6d]{flex:1;overflow-y:auto;padding:20px}.search-box[data-v-bda80d6d]{margin-bottom:16px}.search-input[data-v-bda80d6d]{border:1px solid #ddd;border-radius:6px;font-size:14px;outline:none;padding:10px 12px;transition:border-color .2s;width:100%}.search-input[data-v-bda80d6d]:focus{border-color:#667eea}.actions[data-v-bda80d6d]{display:flex;gap:8px;margin-bottom:16px}.action-btn[data-v-bda80d6d]{background:#f5f5f5;border:1px solid #ddd;border-radius:6px;cursor:pointer;flex:1;font-size:13px;padding:8px 12px;transition:all .2s}.action-btn[data-v-bda80d6d]:hover{background:#e0e0e0}.repo-groups[data-v-bda80d6d]{display:flex;flex-direction:column;gap:8px}.repo-group[data-v-bda80d6d]{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.repo-header[data-v-bda80d6d]{align-items:center;background:#f9f9f9;cursor:pointer;display:flex;gap:8px;padding:12px;transition:background .2s}.repo-header[data-v-bda80d6d]:hover{background:#f0f0f0}.expand-icon[data-v-bda80d6d]{color:#999;flex-shrink:0;font-size:12px;transition:transform .2s}.expand-icon.expanded[data-v-bda80d6d]{transform:rotate(90deg)}.repo-name[data-v-bda80d6d]{color:#333;flex:1;font-size:14px;font-weight:600}.module-count[data-v-bda80d6d]{color:#666;font-size:13px}.progress-bar[data-v-bda80d6d]{height:3px;width:100%}.module-list[data-v-bda80d6d]{background:#fff;display:flex;flex-direction:column;padding:8px 12px 12px}.module-item[data-v-bda80d6d]{align-items:center;border-radius:4px;cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px;transition:background .2s}.module-item[data-v-bda80d6d]:hover{background:#f5f5f5}.module-item input[type=checkbox][data-v-bda80d6d]{cursor:pointer;flex-shrink:0;height:18px;width:18px}.status-dot[data-v-bda80d6d]{border-radius:50%;flex-shrink:0;height:10px;width:10px}.module-name[data-v-bda80d6d]{color:#333;flex:1}.status-badge[data-v-bda80d6d]{background:#e0e0e0;border-radius:12px;color:#666;flex-shrink:0;font-size:11px;padding:2px 8px;text-transform:lowercase}.oos-badge[data-v-bda80d6d]{background:#ffeb3b;border-radius:4px;color:#333;font-size:10px;font-weight:600;margin-left:4px;padding:2px 6px}.summary[data-v-bda80d6d]{background:#f5f5f5;border-radius:8px;display:flex;flex-direction:column;gap:8px;margin-top:20px;padding:16px}.summary-item[data-v-bda80d6d]{color:#333;display:flex;font-size:14px;justify-content:space-between}.drawer-footer[data-v-bda80d6d]{background:#fff;border-top:1px solid #e0e0e0;padding:16px 20px}.apply-btn[data-v-bda80d6d]{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px;transition:transform .2s,box-shadow .2s;width:100%}.apply-btn[data-v-bda80d6d]:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.apply-btn[data-v-bda80d6d]:active{transform:translateY(0)}.fade-enter-active[data-v-bda80d6d],.fade-leave-active[data-v-bda80d6d]{transition:opacity .3s}.fade-enter-from[data-v-bda80d6d],.fade-leave-to[data-v-bda80d6d]{opacity:0}.slide-enter-active[data-v-bda80d6d],.slide-leave-active[data-v-bda80d6d]{transition:transform .3s}.slide-enter-from[data-v-bda80d6d],.slide-leave-to[data-v-bda80d6d]{transform:translate(100%)}.expand-enter-active[data-v-bda80d6d],.expand-leave-active[data-v-bda80d6d]{overflow:hidden;transition:all .2s}.expand-enter-from[data-v-bda80d6d],.expand-leave-to[data-v-bda80d6d]{max-height:0;opacity:0}.expand-enter-to[data-v-bda80d6d],.expand-leave-from[data-v-bda80d6d]{max-height:2000px;opacity:1}.graph-container[data-v-4a4621a3]{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;height:100vh;left:0;overflow:hidden;padding:0;position:fixed;top:0;width:100vw}.header[data-v-4a4621a3]{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin:20px 0;padding:0 20px}.title-section[data-v-4a4621a3]{display:flex;flex-direction:column;gap:4px}h1[data-v-4a4621a3]{color:#fff;font-size:2rem;font-weight:600;line-height:1.2;margin:0}.version-label[data-v-4a4621a3],h1[data-v-4a4621a3]{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.version-label[data-v-4a4621a3]{color:#fffc;font-size:.875rem;font-weight:400}.header-controls[data-v-4a4621a3]{align-items:center;display:flex;gap:12px}.graph-selector[data-v-4a4621a3]{background:#fff;border:none;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#333;cursor:pointer;font-size:16px;font-weight:500;outline:none;padding:10px 20px;transition:all .3s ease}.graph-selector[data-v-4a4621a3]:hover{box-shadow:0 6px 16px #0003;transform:translateY(-2px)}.graph-selector[data-v-4a4621a3]:focus{box-shadow:0 0 0 3px #ffffff4d}.filter-btn[data-v-4a4621a3]{align-items:center;background:#fff;border:none;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#333;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:8px;outline:none;padding:10px 20px;transition:all .3s ease}.filter-btn[data-v-4a4621a3]:hover{box-shadow:0 6px 16px #0003;transform:translateY(-2px)}.filter-btn.active[data-v-4a4621a3]{background:#4caf50;color:#fff}.filter-btn svg[data-v-4a4621a3]{transition:transform .2s}.filter-btn:hover svg[data-v-4a4621a3]{transform:scale(1.1)}.logout-btn[data-v-4a4621a3]{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:8px;outline:none;padding:10px 20px;transition:all .3s ease}.logout-btn[data-v-4a4621a3]:hover{box-shadow:0 6px 16px #667eea80;transform:translateY(-2px)}.logout-btn svg[data-v-4a4621a3]{transition:transform .2s}.logout-btn:hover svg[data-v-4a4621a3]{transform:translate(2px)}.svg-container[data-v-4a4621a3]{display:flex;flex:1;min-height:0;padding:0 20px 20px;position:relative}svg[data-v-4a4621a3]{background:#fff;border-radius:10px;box-shadow:0 10px 30px #0003;height:100%;width:100%}.legend[data-v-4a4621a3]{background:#fff;border-radius:8px;bottom:40px;box-shadow:0 4px 12px #00000026;flex-direction:column;padding:15px;position:absolute;right:40px}.legend[data-v-4a4621a3],.legend-item[data-v-4a4621a3]{display:flex;gap:10px}.legend-item[data-v-4a4621a3]{align-items:center;color:#333;font-size:14px}.legend-circle[data-v-4a4621a3]{border:2px solid #fff;border-radius:50%;box-shadow:0 1px 3px #0003;display:inline-block;height:16px;width:16px}.overall-progress-section[data-v-4a4621a3]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid hsla(0,0%,100%,.2);border-radius:8px;flex:1;max-width:650px;min-width:400px;padding:12px 16px}.overall-progress-header[data-v-4a4621a3]{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.overall-progress-label[data-v-4a4621a3]{color:#fff;font-size:13px;font-weight:600}.progress-tabs[data-v-4a4621a3]{background:#0003;border-radius:6px;display:flex;gap:4px;padding:2px}.progress-tab[data-v-4a4621a3]{background:transparent;border:none;border-radius:4px;color:#ffffffb3;cursor:pointer;font-size:11px;font-weight:500;outline:none;padding:4px 12px;transition:all .2s ease}.progress-tab[data-v-4a4621a3]:hover{background:#ffffff1a;color:#ffffffe6}.progress-tab.active[data-v-4a4621a3]{background:#fff3;color:#fff;font-weight:600}.overall-progress-bar[data-v-4a4621a3]{border-radius:3px;box-shadow:0 2px 4px #0000001a;height:6px;margin-bottom:10px;width:100%}.overall-progress-stats[data-v-4a4621a3]{display:flex;flex-wrap:wrap;font-size:12px;gap:12px}.progress-stat[data-v-4a4621a3]{align-items:center;color:#fff;display:flex;font-weight:500;gap:5px}.progress-dot[data-v-4a4621a3]{border-radius:50%;box-shadow:0 1px 2px #0003;flex-shrink:0;height:8px;width:8px}
