@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap";:root{--bg-primary:#090a10;--bg-secondary:#121420;--bg-tertiary:#1b1e32;--bg-card:#14172aa6;--primary-color:#0ea5e9;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--accent-purple:#0ea5e9;--accent-purple-glow:#0ea5e926;--accent-cyan:#06b6d4;--accent-cyan-glow:#06b6d459;--status-draft:#6b7280;--status-ready:#3b82f6;--status-progress:#f59e0b;--status-passed:#10b981;--status-failed:#ef4444;--status-blocked:#ec4899;--border-color:#ffffff0f;--border-focus:#0ea5e966;--shadow-sm:0 2px 8px #0003;--shadow-md:0 8px 24px #00000059;--shadow-lg:0 16px 40px #00000080;--font-family:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--transition-smooth:all .25s cubic-bezier(.4, 0, .2, 1);--sidebar-width:280px;--warning-card-bg:#f59e0b0a;--warning-card-border:#f59e0b1a;--warning-card-title:#fde047;--warning-card-desc:#fef08a;--info-card-bg:#38bdf80a;--info-card-border:#38bdf81a;--info-card-title:#bae6fd;--info-card-desc:#e0f2fe}.light-theme{--bg-primary:#f6f8fc;--bg-secondary:#fff;--bg-tertiary:#eff3f8;--bg-card:#ffffffd9;--primary-color:#0284c7;--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#64748b;--accent-purple:#0284c7;--accent-purple-glow:#0284c714;--accent-cyan:#0891b2;--accent-cyan-glow:#0891b214;--border-color:#0f172a14;--border-focus:#0284c74d;--shadow-sm:0 1px 3px #0000000d, 0 1px 2px #00000014;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-lg:0 10px 15px -3px #0000000d, 0 4px 6px -2px #00000005;--warning-card-bg:#f59e0b0f;--warning-card-border:#f59e0b40;--warning-card-title:#b45309;--warning-card-desc:#78350f;--info-card-bg:#0ea5e90f;--info-card-border:#0ea5e940;--info-card-title:#0369a1;--info-card-desc:#0c4a6e}*{box-sizing:border-box;font-family:var(--font-family);-webkit-font-smoothing:antialiased;margin:0;padding:0}html,body{height:100vh;margin:0;padding:0;overflow:hidden}body{background-color:var(--bg-primary);color:var(--text-primary)}#root{width:100vw;height:100vh;display:flex;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--accent-purple)}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;font-weight:700}.app-container{background-color:var(--bg-primary);width:100%;height:100%;color:var(--text-primary);display:flex}.sidebar{width:var(--sidebar-width);background-color:var(--bg-secondary);border-right:1px solid var(--border-color);z-index:10;flex-direction:column;flex-shrink:0;height:100%;display:flex}.sidebar-logo{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;padding:24px;display:flex}.logo-icon{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;padding:4px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 4px 12px #0000001a}.logo-icon:hover{box-shadow:0 6px 16px var(--accent-purple-glow);background:#ffffff1f;border-color:#fff3;transform:scale(1.08)rotate(5deg)}.logo-img{object-fit:contain;border-radius:6px;width:100%;height:100%;transition:transform .3s}.logo-text{color:#ea1c24;letter-spacing:-.5px;font-size:1.15rem;font-weight:800}.logo-tag{color:var(--accent-cyan);background:#06b6d426;border-radius:4px;padding:2px 6px;font-size:.65rem;font-weight:700}.sidebar-menu{flex-direction:column;flex:1;gap:4px;padding:16px 12px;display:flex;overflow-y:auto}.menu-group-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;opacity:.6;padding:14px 16px 6px;font-size:.65rem;font-weight:700}.menu-item{color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:10px 16px;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.menu-item:hover{color:var(--text-primary);background-color:#ffffff0a;transform:translate(2px)}.menu-item .menu-icon-wrapper{transition:transform .2s}.menu-item:hover .menu-icon-wrapper{color:var(--accent-cyan);transform:scale(1.1)rotate(3deg)}.menu-item.active{color:#fff;background:linear-gradient(90deg,#8b5cf626 0%,#8b5cf608 100%);border:1px solid #8b5cf633;box-shadow:inset 0 0 12px #8b5cf60d}.menu-item.active .menu-icon-wrapper{color:var(--accent-cyan)}.menu-item.active:before{content:"";background-color:var(--accent-purple);width:4px;height:50%;box-shadow:0 0 10px var(--accent-purple);border-radius:0 4px 4px 0;position:absolute;top:25%;left:0}.submenu-list{border-left:1px dashed #ffffff14;flex-direction:column;gap:2px;margin-top:2px;margin-bottom:6px;margin-left:24px;padding-left:12px;display:flex}.submenu-item{color:var(--text-muted);cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;font-size:.825rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.submenu-item:hover{color:var(--text-primary);background-color:#ffffff08;transform:translate(2px)}.submenu-item .submenu-icon-wrapper{color:var(--text-muted);align-items:center;transition:color .2s;display:flex}.submenu-item:hover .submenu-icon-wrapper{color:var(--accent-cyan)}.submenu-item.active{color:var(--accent-purple);background:var(--accent-purple-glow);border-left:2px solid var(--accent-purple);border-top-left-radius:0;border-bottom-left-radius:0;padding-left:10px;font-weight:600}.submenu-item.active .submenu-icon-wrapper{color:var(--accent-purple)}.desktop-sidebar-toggle{color:var(--text-secondary);cursor:pointer;background:#ffffff05;border:1px solid #ffffff14;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;margin-left:auto;padding:5px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.desktop-sidebar-toggle:hover{color:var(--accent-purple);background-color:#0ea5e91a;border-color:#0ea5e94d;transform:scale(1.08)}.light-theme .desktop-sidebar-toggle{color:var(--text-secondary);background:#0f172a05;border-color:#0f172a14}.light-theme .desktop-sidebar-toggle:hover{color:#0284c7!important;background-color:#0284c70f!important;border-color:#0284c733!important}.menu-badge{color:var(--text-secondary);background:#ffffff14;border-radius:99px;margin-left:auto;padding:2px 6px;font-size:.7rem}.menu-badge.active-badge{background:var(--accent-purple);color:#fff}.menu-badge.coming-soon{color:#fbbf24;background:#f59e0b26;font-size:.65rem}.sidebar-user{border-top:1px solid var(--border-color);align-items:center;gap:12px;padding:20px;display:flex}.avatar{color:#fff;background:linear-gradient(135deg,#ec4899,#8b5cf6);border:2px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-weight:700;display:flex}.user-info{flex-direction:column;display:flex}.user-name{font-size:.9rem;font-weight:600}.user-role{color:var(--text-secondary);font-size:.75rem}.main-content{background-color:var(--bg-primary);flex-direction:column;flex:1;height:100%;display:flex;overflow:hidden}.main-header{border-bottom:1px solid var(--border-color);background-color:var(--bg-secondary);flex-shrink:0;justify-content:space-between;align-items:center;height:76px;padding:0 32px;display:flex}.header-title-area{flex-direction:column;display:flex}.header-title{font-size:1.35rem;font-weight:800}.header-subtitle{color:var(--text-secondary);font-size:.8rem}.header-actions{align-items:center;gap:16px;display:flex}.splitter-layout{flex:1;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.splitter-left{border-right:1px solid var(--border-color);background-color:#090a1066;flex-direction:column;flex-shrink:0;width:340px;max-width:380px;display:flex;overflow:visible}.splitter-right{background-color:var(--bg-primary);flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.search-filter-panel{border-bottom:1px solid var(--border-color);background-color:#12142066;flex-direction:column;gap:12px;padding:20px;display:flex}.search-filter-panel label.form-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-weight:700;display:block;margin-bottom:5px!important;font-size:.65rem!important}.search-filter-panel select.form-control,.search-filter-panel select.filter-select{width:100%;color:var(--text-primary);cursor:pointer;transition:var(--transition-smooth);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-chevron-down'%3E%3Cpath d='m3 4 3 3 3-3'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;outline:none;padding:8px 10px;font-weight:600;border:1px solid var(--border-color)!important;background-color:#090a1099!important;border-radius:8px!important;padding-right:28px!important;font-size:.75rem!important}.search-filter-panel select.form-control:focus,.search-filter-panel select.filter-select:focus{box-shadow:0 0 8px #8b5cf633;border-color:var(--border-focus)!important}.search-filter-panel select.form-control:disabled{opacity:.5;cursor:not-allowed}.detail-container{flex-direction:column;flex:1;gap:20px;height:100%;min-height:0;padding:32px;display:flex;overflow-y:auto}.detail-scrollable-content{flex-direction:column;flex:1;gap:24px;min-height:0;padding-right:4px;display:flex;overflow-y:auto}@media (width>=1024px){.sidebar .logo-text,.sidebar .logo-tag,.sidebar .menu-group-title,.sidebar .menu-item span,.sidebar .submenu-item span,.sidebar .user-info,.sidebar .sidebar-user span,.sidebar .more-text{opacity:1;white-space:nowrap;transition:opacity .25s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1);transform:translate(0)}.sidebar .sidebar-logo,.sidebar .menu-item,.sidebar .submenu-item,.sidebar .sidebar-user{transition:padding .25s cubic-bezier(.4,0,.2,1),gap .25s cubic-bezier(.4,0,.2,1),background-color .25s}.sidebar-wrapper{z-index:100;flex-shrink:0;width:76px;height:100%;position:relative}.sidebar{width:260px;height:100%;transition:width .28s cubic-bezier(.4,0,.2,1),box-shadow .28s,background-color .28s;position:absolute;top:0;left:0;overflow-x:hidden;box-shadow:0 10px 40px #0000001a;background:var(--bg-secondary)!important;border-right:1px solid var(--border-color)!important}.sidebar.sidebar-collapsed{box-shadow:none;background:var(--bg-secondary)!important;width:76px!important}.sidebar.sidebar-collapsed .logo-tag,.sidebar.sidebar-collapsed .menu-group-title,.sidebar.sidebar-collapsed .menu-item span,.sidebar.sidebar-collapsed .submenu-item span,.sidebar.sidebar-collapsed .user-info,.sidebar.sidebar-collapsed .sidebar-user span,.sidebar.sidebar-collapsed .more-text,.sidebar.sidebar-collapsed .menu-badge,.sidebar.sidebar-collapsed .menu-item .lucide-chevron-right,.sidebar.sidebar-collapsed .menu-item .lucide-chevron-down,.sidebar.sidebar-collapsed .submenu-item .lucide-chevron-right,.sidebar.sidebar-collapsed .submenu-item .lucide-chevron-down{pointer-events:none;opacity:0!important;transform:translate(-15px)!important}.sidebar.sidebar-collapsed .logo-text{opacity:0!important;width:0!important;max-width:0!important;margin:0!important;display:none!important;overflow:hidden!important}.sidebar.sidebar-collapsed .sidebar-logo{justify-content:center;gap:0;padding:24px 0}.sidebar.sidebar-collapsed .menu-item,.sidebar.sidebar-collapsed .submenu-item{justify-content:center;gap:0;height:40px;padding:10px 0;position:relative}.sidebar.sidebar-collapsed .menu-item .menu-icon-wrapper,.sidebar.sidebar-collapsed .submenu-item .submenu-icon-wrapper{opacity:1!important;color:#ffffffb3!important;justify-content:center!important;align-items:center!important;margin:0!important;display:flex!important;position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)scale(1.08)!important}.sidebar.sidebar-collapsed .sidebar-logo .logo-icon{margin:0!important}.sidebar.sidebar-collapsed .submenu-list{border-left:none!important;margin-left:0!important;padding-left:0!important;display:none!important}.sidebar.sidebar-collapsed .sidebar-user{justify-content:center;gap:0!important;padding:12px 0!important}.sidebar.sidebar-collapsed .menu-item[data-tooltip],.sidebar.sidebar-collapsed .submenu-item[data-tooltip]{position:relative}.sidebar.sidebar-collapsed .menu-item[data-tooltip]:after,.sidebar.sidebar-collapsed .submenu-item[data-tooltip]:after{content:attr(data-tooltip);color:#fff;white-space:nowrap;pointer-events:none;opacity:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:99999;background:#0f172af5;border:1px solid #ffffff14;border-radius:8px;padding:6px 12px;font-size:.75rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);position:absolute;top:50%;left:100%;transform:translateY(-50%)translate(10px);box-shadow:0 4px 20px #0000004d,inset 0 1px #ffffff0d}.sidebar.sidebar-collapsed .menu-item[data-tooltip]:before,.sidebar.sidebar-collapsed .submenu-item[data-tooltip]:before{content:"";pointer-events:none;opacity:0;z-index:99999;border:5px solid #0000;border-right-color:#0f172af5;transition:all .2s cubic-bezier(.4,0,.2,1);position:absolute;top:50%;left:100%;transform:translateY(-50%)translate(4px)}.sidebar.sidebar-collapsed .menu-item[data-tooltip]:hover:after,.sidebar.sidebar-collapsed .submenu-item[data-tooltip]:hover:after{opacity:1;transform:translateY(-50%)translate(16px)}.sidebar.sidebar-collapsed .menu-item[data-tooltip]:hover:before,.sidebar.sidebar-collapsed .submenu-item[data-tooltip]:hover:before{opacity:1;transform:translateY(-50%)translate(10px)}.light-theme .sidebar.sidebar-collapsed .menu-item[data-tooltip]:after,.light-theme .sidebar.sidebar-collapsed .submenu-item[data-tooltip]:after{color:var(--text-primary);background:#fffffffa;border:1px solid #00000014;box-shadow:0 4px 20px #00000014,inset 0 1px #fff}.light-theme .sidebar.sidebar-collapsed .menu-item[data-tooltip]:before,.light-theme .sidebar.sidebar-collapsed .submenu-item[data-tooltip]:before{border-color:#0000 #fffffffa #0000 #0000}}.more-popover-item{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;transition:all .2s;display:flex}.more-popover-item:hover{color:var(--primary-color)!important;background-color:#ffffff0d!important}.light-theme .more-popover-item:hover{color:var(--primary-color)!important;background-color:#0f172a0d!important}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.custom-select-trigger:hover{box-shadow:0 0 15px #ffffff08,inset 0 1px 1px #ffffff0a;background:#0f172a99!important;border-color:#ffffff40!important}.custom-select-container.open .custom-select-trigger{border-color:var(--primary-color,#3b82f6)!important;box-shadow:0 0 0 3px #3b82f626,inset 0 1px 1px #ffffff05!important}.select-code-badge{color:var(--text-secondary);background:#ffffff14;border-radius:4px;padding:1px 6px;font-family:monospace;font-size:.65rem;font-weight:600}.custom-select-list::-webkit-scrollbar{width:4px}.custom-select-list::-webkit-scrollbar-track{background:0 0}.custom-select-list::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:10px}.custom-select-list::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.custom-select-search-container{background:#00000040;border:1px solid #ffffff0f;border-radius:8px;align-items:center;gap:8px;margin-bottom:6px;padding:6px 10px;transition:all .2s;display:flex}.custom-select-search-container:focus-within{border-color:var(--primary-color,#3b82f6);background:#00000059}.custom-select-search-input{color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:.8rem;font-weight:500}.custom-select-option{cursor:pointer;color:var(--text-primary);background:0 0;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;transition:all .15s;display:flex}.custom-select-option.selected{background:var(--primary-color,#3b82f6)!important;color:#fff!important}.custom-select-option:not(.selected):hover{background:#ffffff0d}.light-theme .custom-select-trigger{color:var(--text-primary)!important;background:#fffc!important;border:1px solid #00000014!important;box-shadow:0 2px 8px #00000005,inset 0 1px #fff!important}.light-theme .custom-select-trigger:hover{background:#fff!important;border-color:#00000026!important}.light-theme .custom-select-container.open .custom-select-trigger{border-color:var(--primary-color,#3b82f6)!important;box-shadow:0 0 0 3px #3b82f61a!important}.light-theme .custom-select-dropdown{color:var(--text-primary)!important;background:#fffffffa!important;border:1px solid #00000014!important;box-shadow:0 10px 30px #00000014,inset 0 1px #fff!important}.light-theme .custom-select-search-container{background:#00000008!important;border:1px solid #0000000f!important}.light-theme .custom-select-search-container:focus-within{box-shadow:0 0 0 2px #3b82f61a;border-color:var(--primary-color,#3b82f6)!important;background:#fff!important}.light-theme .custom-select-option:not(.selected):hover{background:#0000000a!important}.light-theme .select-code-badge{color:var(--text-secondary)!important;background:#0000000d!important}.light-theme .custom-select-list::-webkit-scrollbar-thumb{background:#0000001f!important}.light-theme .sidebar{background:#fff!important;border-right:1px solid #0f172a14!important;box-shadow:5px 0 25px #00000005!important}.light-theme .sidebar.sidebar-collapsed{background:#fff!important}.light-theme .menu-item{color:var(--text-secondary)!important}.light-theme .menu-item:hover,.light-theme .submenu-item:hover{color:var(--text-primary)!important;background-color:#0f172a0b!important}.light-theme .menu-item.active{color:var(--primary-color)!important;background:linear-gradient(90deg,#0284c714 0%,#0284c705 100%)!important;border:1px solid #0284c726!important;box-shadow:inset 0 0 12px #0284c705!important}.light-theme .menu-item.active .menu-icon-wrapper{color:var(--primary-color)!important}.light-theme .menu-item.active:before{background-color:var(--primary-color)!important;box-shadow:0 0 8px #0284c766!important}.light-theme .submenu-item.active,.light-theme .submenu-item.active .submenu-icon-wrapper{color:var(--primary-color)!important}.light-theme .sidebar-user{border-top:1px solid #0f172a14!important}.light-theme .logo-icon{background:#0f172a0d!important;border:1px solid #0f172a1a!important}.light-theme .sidebar.sidebar-collapsed .menu-item .menu-icon-wrapper,.light-theme .sidebar.sidebar-collapsed .submenu-item .submenu-icon-wrapper{color:var(--text-secondary)!important}.light-theme .sidebar.sidebar-collapsed .menu-item.active .menu-icon-wrapper,.light-theme .sidebar.sidebar-collapsed .submenu-item.active .submenu-icon-wrapper{color:var(--primary-color)!important}.app-container,.sidebar,.main-header,.main-content,.menu-item,.submenu-item,.avatar,.header-actions,.custom-select-trigger,.more-popover-item,.card,.stat-card,.table-container,th,td,.btn,.search-input,.workspace-selector-trigger{transition:background-color .45s cubic-bezier(.25,.8,.25,1),color .45s cubic-bezier(.25,.8,.25,1),border-color .45s cubic-bezier(.25,.8,.25,1),box-shadow .45s cubic-bezier(.25,.8,.25,1)!important}.sidebar{transition:width .28s cubic-bezier(.4,0,.2,1),background-color .45s cubic-bezier(.25,.8,.25,1),border-color .45s cubic-bezier(.25,.8,.25,1),box-shadow .45s cubic-bezier(.25,.8,.25,1)!important}.main-content-inner{opacity:1;flex-direction:column;flex:1;width:100%;min-height:0;transition:opacity .22s cubic-bezier(.25,.8,.25,1),transform .22s cubic-bezier(.25,.8,.25,1);display:flex;overflow:hidden;transform:translateY(0)}.main-content-inner.lang-changing{transform:translateY(8px);opacity:0!important}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.page-transition-wrapper{flex-direction:column;flex:1;width:100%;min-height:0;animation:.48s cubic-bezier(.215,.61,.355,1) forwards pageFadeIn;display:flex;overflow:hidden}.master-list-container{flex-direction:column;flex:1;gap:6px;padding:12px 16px;display:flex;overflow-y:auto}.project-card{cursor:pointer;background-color:#0000;border:1px solid #0000;border-radius:8px;flex-direction:column;flex-shrink:0;gap:6px;min-height:102px;padding:12px 14px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.project-card:hover{background-color:#ffffff0a}.project-card.selected{background-color:var(--accent-purple-glow);box-shadow:none;border-color:#0ea5e926}.project-card.selected:before{content:"";background:var(--accent-purple);border-radius:0 4px 4px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.card-header-row{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.card-title{color:var(--text-primary);align-items:center;gap:8px;font-size:.875rem;font-weight:600;line-height:1.4;display:flex}.card-desc{color:var(--text-secondary);-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;flex-grow:1;margin-bottom:4px;font-size:.775rem;line-height:1.4;display:-webkit-box;overflow:hidden}.card-footer-row{color:var(--text-muted);border-top:none;justify-content:space-between;align-items:center;padding-top:2px;font-size:.725rem;display:flex}.card-modules-count{color:var(--accent-cyan);align-items:center;gap:4px;font-weight:500;display:flex}.glass-panel{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:16px;padding:24px}.panel-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.panel-title{color:#fff;align-items:center;gap:8px;font-size:1.1rem;font-weight:700;display:flex}.search-box{width:100%;position:relative;overflow:visible}.search-box>svg{color:var(--text-muted);z-index:1;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-input{border:1px solid var(--border-color);color:#fff;width:100%;transition:var(--transition-smooth);background-color:#090a1099;border-radius:8px;padding:10px 12px 10px 38px;font-size:.875rem}.search-input:focus{border-color:var(--border-focus);outline:none;box-shadow:0 0 10px #0ea5e926}.filter-row{gap:8px;display:flex}.filter-pill{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);background-color:#ffffff08;border-radius:99px;padding:6px 12px;font-size:.75rem}.filter-pill:hover{color:var(--text-primary);background-color:#ffffff14}.filter-pill.active{background-color:var(--accent-purple);border-color:var(--accent-purple);color:#fff}.btn{cursor:pointer;transition:var(--transition-smooth);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:.875rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent-purple);color:#fff;box-shadow:0 4px 12px #0ea5e933}.btn-primary:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 6px 16px #0ea5e959}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-color);background:#ffffff0d}.btn-secondary:hover{background:#ffffff1a}.btn-danger{color:#f87171;background:#ef444426;border:1px solid #ef444433}.btn-danger:hover{color:#fff;background:#ef444440}.btn-xs{border-radius:6px;padding:4px 8px;font-size:.75rem}.btn-icon-only{border-radius:8px;width:36px;height:36px;padding:0}.badge{letter-spacing:.02em;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:.725rem;font-weight:600;display:inline-flex}.badge-draft{color:#9ca3af;background:#6b728026;border:1px solid #6b728040}.badge-ready{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f640}.badge-progress{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b40}.badge-passed{color:#34d399;background:#10b98126;border:1px solid #10b98140}.badge-failed{color:#f87171;background:#ef444426;border:1px solid #ef444440}.badge-blocked{color:#f472b6;background:#ec489926;border:1px solid #ec489940}.form-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.form-group-full{grid-column:span 2}.form-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:8px;font-size:.8rem;font-weight:600;display:block}.form-control{border:1px solid var(--border-color);color:#fff;width:100%;transition:var(--transition-smooth);background-color:#090a1099;border-radius:8px;padding:10px 14px;font-size:.9rem}.form-control:focus{border-color:var(--border-focus);outline:none;box-shadow:0 0 10px #8b5cf626}textarea.form-control{resize:vertical;min-height:100px}.custom-table-container{border:1px solid var(--border-color);background-color:#090a104d;border-radius:8px;overflow:hidden}.custom-table{border-collapse:collapse;text-align:left;width:100%}.custom-table th{text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border-color);background-color:#121420b3;padding:12px 16px;font-size:.75rem;font-weight:700}.custom-table td{color:var(--text-primary);border-bottom:1px solid #ffffff08;padding:14px 16px;font-size:.875rem}.custom-table tr:last-child td{border-bottom:none}.custom-table tr:hover td{background-color:#ffffff05}.action-cell{gap:8px;display:flex}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background-color:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-secondary);border:1px solid var(--border-color);width:90%;max-width:550px;box-shadow:var(--shadow-lg);border-radius:16px;animation:.3s cubic-bezier(.4,0,.2,1) modalFadeIn;overflow:hidden}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title{color:#fff;font-size:1.15rem;font-weight:700}.modal-close{color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none}.modal-close:hover{color:#fff}.modal-body{padding:24px}.modal-footer{border-top:1px solid var(--border-color);background-color:#090a1033;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.detail-empty-state{color:var(--text-secondary);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:20px;display:flex}.empty-icon-glow{width:80px;height:80px;color:var(--accent-purple);background:#8b5cf614;border:1px solid #8b5cf626;border-radius:20px;justify-content:center;align-items:center;display:flex;box-shadow:0 0 30px #8b5cf60d}.detail-header-panel{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;padding-bottom:24px;display:flex}.detail-title-group{flex-direction:column;gap:8px;display:flex}.detail-title{color:#fff;font-size:1.75rem;font-weight:800}.detail-meta-row{color:var(--text-secondary);gap:16px;font-size:.85rem;display:flex}.meta-item{align-items:center;gap:6px;display:flex}.coming-soon-screen{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.coming-soon-badge{color:#fbbf24;background:#f59e0b1a;border:1px solid #f59e0b33;border-radius:99px;margin-bottom:16px;padding:6px 14px;font-size:.8rem;font-weight:700}.coming-soon-title{color:#fff;margin-bottom:12px;font-size:2rem}.coming-soon-desc{max-width:450px;margin-bottom:24px;font-size:.95rem;line-height:1.5}.toast{border-left:4px solid var(--accent-purple);box-shadow:var(--shadow-lg);z-index:200;border-top:1px solid var(--border-color);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background-color:#121420;border-radius:8px;align-items:center;gap:12px;padding:16px 20px;animation:.3s cubic-bezier(.4,0,.2,1) toastSlideIn;display:flex;position:fixed;bottom:24px;right:24px}.toast-success{border-left-color:var(--status-passed)}.toast-error{border-left-color:var(--status-failed)}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(20px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.kanban-view-container{flex-direction:column;gap:16px;width:100%;height:100%;animation:.35s ease-out kanbanFadeIn;display:flex}.board-switcher{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;flex-shrink:0;padding:3px;display:flex}.switch-tab-btn{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.switch-tab-btn:hover{color:var(--text-primary);background:var(--bg-tertiary,#0000000a)}.switch-tab-btn.active{background:var(--accent-purple,#7c3aed);color:#fff;box-shadow:0 2px 8px #7c3aed40}.kanban-empty-project{text-align:center;background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:16px;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-icon-glow{background:var(--accent-purple-glow,#6d28d914);width:64px;height:64px;color:var(--accent-purple,#7c3aed);border-radius:16px;justify-content:center;align-items:center;margin-bottom:20px;display:flex}.kanban-empty-project h3{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:700}.kanban-empty-desc{max-width:400px;color:var(--text-secondary);margin-top:8px;font-size:.875rem;line-height:1.5}.project-selector-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;width:100%;max-width:800px;margin-top:28px;display:grid}.selector-project-btn{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;gap:6px;padding:16px;transition:all .2s;display:flex}.selector-project-btn:hover{border-color:var(--accent-purple,#7c3aed);transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.selector-project-btn strong{font-size:.95rem;font-weight:600;line-height:1.3}.selector-project-btn span{color:var(--text-secondary);background:var(--bg-tertiary,#00000008);border-radius:4px;padding:2px 8px;font-size:.775rem}.kanban-filter-panel{background:var(--bg-card);border:1px solid var(--border-color);z-index:50;border-radius:12px;align-items:center;gap:12px;padding:10px 16px;display:flex;position:relative}.filter-group{flex-wrap:nowrap;flex:1;align-items:center;gap:12px;min-width:0;display:flex}.kanban-filter-panel .search-box{flex:1;width:auto;min-width:200px;max-width:400px}.select-wrapper{align-items:center;display:flex;position:relative}.select-icon{color:var(--text-secondary);pointer-events:none;position:absolute;left:12px}.select-module{cursor:pointer;min-width:260px;font-size:.85rem;font-weight:600;transition:all .2s;background:var(--bg-secondary)!important;border:1px solid var(--border-color)!important;color:var(--text-primary)!important;border-radius:8px!important;padding-left:38px!important}.select-module:focus{border-color:var(--accent-purple,#7c3aed)!important;box-shadow:0 0 0 3px #7c3aed1a!important}.stats-indicator{color:var(--accent-cyan,#06b6d4);white-space:nowrap;background:#06b6d40f;border:1px solid #06b6d41f;border-radius:8px;flex-shrink:0;align-items:center;gap:8px;padding:8px 14px;font-size:.825rem;font-weight:600;display:flex}.kanban-board-grid{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:16px;width:100%;min-height:0;display:grid}.kanban-board-grid::-webkit-scrollbar{width:5px;height:5px}.column-body::-webkit-scrollbar{width:5px;height:5px}.kanban-board-grid::-webkit-scrollbar-track{background:0 0}.column-body::-webkit-scrollbar-track{background:0 0}.kanban-board-grid::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}.column-body::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}.kanban-board-grid::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.column-body::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media (width<=1200px){.kanban-board-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}.kanban-column{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;flex-direction:column;min-height:400px;max-height:calc(100vh - 260px);transition:all .25s;display:flex}.kanban-column.drag-over{border-color:var(--glow-color,var(--accent-purple,#7c3aed));transform:translateY(-1px);box-shadow:0 0 0 3px #7c3aed1a}.column-header{border-bottom:1px solid var(--border-color);flex-shrink:0;align-items:center;gap:10px;padding:14px 16px;display:flex}.column-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.column-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:.9rem;font-weight:700;overflow:hidden}.column-count-badge{color:var(--text-secondary);background:var(--bg-tertiary,#0000000a);border:1px solid var(--border-color);border-radius:12px;flex-shrink:0;padding:2px 8px;font-size:.75rem;font-weight:700}.column-body{flex-direction:column;flex:1;gap:10px;min-height:0;padding:12px;display:flex;overflow-y:auto}.column-empty-state{border:2px dashed var(--border-color);color:var(--text-muted);text-align:center;pointer-events:none;border-radius:10px;flex:1;justify-content:center;align-items:center;padding:32px 12px;font-size:.8rem;transition:all .2s;display:flex}.kanban-card{background:var(--bg-card);border:1px solid var(--border-color);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:10px;flex-direction:column;gap:10px;padding:14px;transition:all .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000f}.kanban-card:before{content:"";background:0 0;border-radius:3px 0 0 3px;width:3px;transition:all .2s;position:absolute;top:0;bottom:0;left:0}.kanban-card:has(.badge-danger):before{background:#ef4444}.kanban-card:has(.badge-warning):before{background:#f59e0b}.kanban-card:has(.badge-info):before{background:#3b82f6}.kanban-card:has(.badge-success):before{background:#10b981}.kanban-card:active{cursor:grabbing}.kanban-card:hover{border-color:var(--accent-purple,#7c3aed4d);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.kanban-card.dragging{opacity:.3;border:1px dashed var(--accent-purple,#7c3aed);box-shadow:none;transform:scale(.97)}.card-top{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.card-id{color:var(--accent-cyan,#06b6d4);letter-spacing:.01em;white-space:nowrap;background:#06b6d40f;border:1px solid #06b6d41f;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.725rem;font-weight:700}.kanban-card .card-title{color:var(--text-primary);word-break:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.875rem;font-weight:600;line-height:1.45;display:-webkit-box;overflow:hidden}.card-module-badge{background:var(--bg-tertiary,#00000008);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:5px;align-items:center;gap:5px;width:fit-content;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-flex}.card-bottom{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-top:2px;padding-top:8px;display:flex}.card-assignee{color:var(--text-secondary);align-items:center;gap:5px;min-width:0;font-size:.75rem;font-weight:500;display:flex;overflow:hidden}.card-assignee span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.priority-tag{background:var(--bg-tertiary,#0000000a);border:1px solid var(--border-color);color:var(--text-primary);text-transform:uppercase;letter-spacing:.03em;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.7rem;font-weight:700}.light-theme .kanban-card{background:#fff;border:1px solid #0f172a0f;box-shadow:0 1px 3px #0000000a}.light-theme .kanban-card:hover{box-shadow:0 4px 16px #00000014}.light-theme .kanban-column{background:#f8fafccc;border:1px solid #0f172a0f}.light-theme .column-count-badge{color:var(--text-secondary);background:#0000000a;border-color:#0000000f}.light-theme .board-switcher{background:#f8fafce6;border-color:#0000000f}.light-theme .switch-tab-btn:hover{background:#00000008}.light-theme .card-module-badge{background:#00000005;border-color:#0000000d}.light-theme .kanban-filter-panel{background:#fff;border-color:#0f172a0f}.light-theme .kanban-empty-project{background:#f8fafc99;border-color:#0f172a1a}.light-theme .selector-project-btn{background:#fff;border-color:#0f172a0f}.light-theme .selector-project-btn:hover{box-shadow:0 4px 16px #0000000f}@keyframes kanbanFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.modules-view{flex-direction:column;gap:0;height:100%;animation:.3s ease-out modulesFadeIn;display:flex}.modules-stats-bar{border-bottom:1px solid var(--border-color);grid-template-columns:repeat(4,1fr);gap:12px;padding:16px 20px;display:grid}.modules-stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;align-items:center;gap:10px;padding:12px 16px;transition:all .2s;display:flex}.modules-stat-card:hover{border-color:var(--accent-purple,#7c3aed4d);transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.stat-icon-box{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.stat-icon-box.purple{color:var(--primary-color);background:#6366f11a}.stat-icon-box.green{color:var(--status-passed,#10b981);background:#10b9811a}.stat-icon-box.red{color:var(--status-failed,#ef4444);background:#ef44441a}.stat-icon-box.amber{color:#f59e0b;background:#f59e0b1a}.stat-value{color:var(--text-primary);font-size:1.2rem;font-weight:700;line-height:1.2}.stat-label{color:var(--text-secondary);font-size:.7rem}.modules-toolbar{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;padding:10px 20px;display:flex}.modules-toolbar .search-box{flex:1;width:auto;min-width:200px;max-width:500px}.modules-toolbar .filter-select-wrapper{flex-shrink:0;align-items:center;gap:8px;display:flex}.modules-toolbar .filter-select-wrapper select{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;border-radius:8px;min-width:180px;padding:8px 12px;font-size:.825rem;font-weight:500;transition:all .2s}.modules-toolbar .filter-select-wrapper select:focus{border-color:var(--accent-purple,#7c3aed);outline:none;box-shadow:0 0 0 3px #7c3aed1a}.modules-table-area{flex:1;padding:0 20px 20px;overflow:auto}.modules-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:80px 20px;display:flex}.modules-empty-state h3{color:var(--text-primary);margin:16px 0 0;font-size:1.15rem;font-weight:700}.modules-empty-state p{max-width:350px;color:var(--text-secondary);margin-top:8px;font-size:.875rem;line-height:1.5}.modules-table-area .custom-table-container{margin-top:12px}.sort-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;display:flex}.sort-header:hover{color:var(--accent-purple,#7c3aed)}.sort-header.center{justify-content:center}.module-code-cell{color:var(--accent-cyan,#06b6d4);font-size:.8rem;font-weight:700}.module-name-cell{color:var(--text-primary);align-items:center;gap:8px;font-weight:600;display:flex}.module-project-cell{color:var(--text-secondary);align-items:center;gap:6px;font-size:.8rem;display:flex}.module-desc-cell{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:300px;font-size:.825rem;overflow:hidden}.module-expanded-panel{background:var(--bg-secondary);border-top:1px solid var(--border-color);border-bottom:2px solid var(--primary-color);padding:16px 24px;animation:.2s ease-in-out modulesFadeIn}.module-expanded-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.module-detail-label{color:var(--text-muted);text-transform:uppercase;margin-bottom:4px;font-size:.7rem;font-weight:600}.module-detail-value{color:var(--text-secondary);font-size:.85rem;line-height:1.6}.module-detail-list{flex-direction:column;gap:6px;font-size:.825rem;display:flex}.module-quick-links{gap:8px;margin-top:12px;display:flex}.light-theme .modules-stat-card{background:#fff;border-color:#0f172a0f}.light-theme .modules-stat-card:hover{box-shadow:0 4px 12px #0000000d}.light-theme .module-expanded-panel{background:#f8fafccc}@keyframes modulesFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.preconditions-box{background:var(--bg-primary)!important;color:var(--text-secondary)!important;border:1px solid var(--border-color)!important}.expected-results-box{border-radius:0 12px 12px 0;padding:16px;border-left:4px solid var(--status-passed)!important;background:#10b9810a!important;border-top:1px solid #10b98114!important;border-bottom:1px solid #10b98114!important;border-right:1px solid #10b98114!important}.expected-results-box h4{color:#86efac!important}.expected-results-box p{color:#c1f2d2!important}.light-theme .expected-results-box{background:#10b9810f!important;border-top:1px solid #10b98126!important;border-bottom:1px solid #10b98126!important;border-right:1px solid #10b98126!important}.light-theme .expected-results-box h4{color:#047857!important}.light-theme .expected-results-box p{color:#065f46!important}.actual-results-box{border-top:1px solid #ffffff0a;border-bottom:1px solid #ffffff0a;border-right:1px solid #ffffff0a;border-radius:0 12px 12px 0;padding:16px}.light-theme .actual-results-box{border-top:1px solid #0f172a0f;border-bottom:1px solid #0f172a0f;border-right:1px solid #0f172a0f}.actual-results-box.status-passed{border-left:4px solid var(--status-passed)!important;background:#10b9810a!important;border-color:#10b98114!important}.actual-results-box.status-passed h4{color:#86efac!important}.actual-results-box.status-passed p{color:#c1f2d2!important}.actual-results-box.status-failed{border-left:4px solid var(--status-failed)!important;background:#ef44440a!important;border-color:#ef444414!important}.actual-results-box.status-failed h4{color:#fca5a5!important}.actual-results-box.status-failed p{color:#ffd1d1!important}.actual-results-box.status-warning{border-left:4px solid var(--status-progress)!important;background:#f59e0b0a!important;border-color:#f59e0b14!important}.actual-results-box.status-warning h4{color:#fde047!important}.actual-results-box.status-warning p{color:#fef08a!important}.light-theme .actual-results-box.status-passed{background:#10b9810f!important;border-color:#10b98126!important}.light-theme .actual-results-box.status-passed h4{color:#047857!important}.light-theme .actual-results-box.status-passed p{color:#065f46!important}.light-theme .actual-results-box.status-failed{background:#ef44440f!important;border-color:#ef444426!important}.light-theme .actual-results-box.status-failed h4{color:#b91c1c!important}.light-theme .actual-results-box.status-failed p{color:#991b1b!important}.light-theme .actual-results-box.status-warning{background:#f59e0b0f!important;border-color:#f59e0b26!important}.light-theme .actual-results-box.status-warning h4{color:#b45309!important}.light-theme .actual-results-box.status-warning p{color:#78350f!important}.light-theme .logo-text{color:#ea1c24}.light-theme .logo-icon{background:#0f172a0a!important;border:1px solid #0f172a14!important;box-shadow:0 4px 12px #0f172a08!important}.light-theme .logo-icon:hover{background:#0f172a12!important;border-color:#6d28d933!important;box-shadow:0 6px 16px #6d28d91a!important}.light-theme .card-title,.light-theme .detail-title,.light-theme .panel-title,.light-theme .modal-title,.light-theme .coming-soon-title{color:var(--text-primary)!important}.light-theme .project-card:hover{background-color:#0284c70a!important;border-color:#0000!important}.light-theme .project-card.selected{background-color:#0284c714!important;border-color:#0284c71f!important}.light-theme .menu-item.active{color:var(--accent-purple)!important;background:var(--accent-purple-glow)!important;border:1px solid #0284c726!important}.light-theme .search-input,.light-theme .form-control{color:var(--text-primary)!important;background-color:var(--bg-secondary)!important}.light-theme .search-filter-panel select.form-control,.light-theme .search-filter-panel select.filter-select{background-color:var(--bg-secondary)!important;color:var(--text-primary)!important}.light-theme .modal-close:hover{color:var(--text-primary)!important}.light-theme .modal-footer{background-color:var(--bg-tertiary)!important}.light-theme .glass-panel{background:var(--bg-card)!important;-webkit-backdrop-filter:blur(12px)!important;box-shadow:0 4px 20px #0f172a0a!important}.light-theme .toast{background-color:var(--bg-secondary);color:var(--text-primary)}.light-theme .quick-stat-card{background:var(--bg-secondary)!important;border-color:var(--border-color)!important}.light-theme .quick-stat-card:hover{border-color:#0284c733!important}.light-theme .custom-table-container{background-color:var(--bg-secondary)!important}.light-theme .custom-table th{background-color:var(--bg-tertiary)!important}.light-theme .custom-table td{border-bottom:1px solid #0f172a08!important}.light-theme .splitter-left,.light-theme .search-filter-panel{background-color:var(--bg-secondary)!important}.light-theme .bug-card{background:var(--bg-secondary)!important}.light-theme .bug-card:hover{background-color:var(--bg-tertiary)!important}.light-theme .bug-card.selected{background-color:#0284c70d!important}.light-theme .submenu-list{border-left:1px dashed #0f172a1f!important}.light-theme .submenu-item{color:var(--text-secondary)!important}.light-theme .submenu-item:hover{color:var(--text-primary)!important;background-color:#0f172a0a!important}.light-theme .submenu-item.active{color:var(--accent-purple)!important;background:var(--accent-purple-glow)!important}.light-theme .submenu-item.active .submenu-icon-wrapper{color:var(--accent-purple)!important}.hamburger-btn{color:var(--text-secondary);cursor:pointer;background:#ffffff05;border:1px solid #ffffff14;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;margin-right:14px;padding:8px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 2px 6px #00000026}.hamburger-btn:hover{color:var(--accent-purple);background-color:#a78bfa14;border-color:#a78bfa4d;transform:scale(1.05);box-shadow:0 4px 12px #a78bfa26}.light-theme .hamburger-btn{background:#0f172a05;border-color:#0f172a14;box-shadow:0 2px 6px #0f172a0a}.light-theme .hamburger-btn:hover{color:#0284c7!important;background-color:#0284c70f!important;border-color:#0284c733!important;box-shadow:0 4px 12px #0284c714!important}@media (width>=1024px){.hamburger-btn{display:none!important}}.sidebar-close-btn{color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);z-index:12;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;display:none;position:absolute;top:20px;right:20px}.sidebar-close-btn:hover{color:#fff;background-color:#ffffff0d}.light-theme .sidebar-close-btn:hover{color:var(--text-primary);background-color:#0f172a0d}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);z-index:999;background:#000000a6;animation:.25s ease-out fadeInBackdrop;position:fixed;inset:0}@keyframes fadeInBackdrop{0%{opacity:0}to{opacity:1}}.back-to-list-btn{border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;transition:var(--transition-smooth);background:#ffffff08;border-radius:99px;align-self:flex-start;align-items:center;gap:8px;margin-bottom:16px;padding:8px 16px;font-size:.825rem;font-weight:600;display:none}.back-to-list-btn:hover{border-color:var(--border-focus);background:#ffffff14}.light-theme .back-to-list-btn{background:#0f172a08}.light-theme .back-to-list-btn:hover{background:#0f172a14}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (width<=1023px){.hamburger-btn{display:flex}.main-header{height:70px;padding:0 20px}.header-title{font-size:1.15rem}.sidebar{z-index:1000;box-shadow:var(--shadow-lg);transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;bottom:0;left:-280px}.sidebar.sidebar-open{transform:translate(280px)}.sidebar-close-btn{display:flex}.splitter-layout{flex-direction:column}.splitter-left,.splitter-right{flex:1!important;width:100%!important;min-width:0!important}.splitter-layout:not(.has-selected) .splitter-left{display:flex}.splitter-layout:not(.has-selected) .splitter-right,.splitter-layout.has-selected .splitter-left{display:none!important}.splitter-layout.has-selected .splitter-right{display:flex}.back-to-list-btn{display:inline-flex}.detail-header-panel{flex-direction:column;align-items:flex-start;gap:16px;padding:20px}.detail-header-panel .detail-title-group{max-width:100%!important}.detail-header-panel .action-cell{border-top:1px solid var(--border-color);justify-content:flex-start;width:100%;padding-top:12px}.custom-table-container{-webkit-overflow-scrolling:touch;margin-bottom:12px;overflow-x:auto!important}.custom-table{min-width:750px}.quick-stats-grid{grid-template-columns:repeat(2,1fr)!important}}@media (width<=767px){.main-header{height:64px;padding:0 16px}.header-subtitle{display:none}.grid-dashboard{grid-template-columns:1fr!important;gap:16px!important;padding:16px!important}.form-grid{grid-template-columns:1fr!important;gap:12px!important}.detail-container{gap:16px!important;padding:16px!important}.glass-panel{padding:16px!important}.modal-content{max-height:85vh;margin:0;animation:.3s cubic-bezier(.16,1,.3,1) slideInBottomSheet;position:fixed;bottom:0;overflow-y:auto;border-radius:16px 16px 0 0!important;width:95%!important;max-width:100%!important}@keyframes slideInBottomSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{padding:16px 20px}.modal-body{padding:16px 20px 24px}.modal-footer{flex-direction:column-reverse;gap:8px;padding:12px 20px}.modal-footer .btn{width:100%}.btn,.form-control,.search-input,.menu-item{min-height:42px}.search-input{padding:12px 12px 12px 38px}.project-card{padding:12px!important}.detail-container>div[style*=grid-template-columns]{grid-template-columns:1fr!important;gap:12px!important}.detail-container div[style*="grid-template-columns: repeat(4, 1fr)"]{grid-template-columns:repeat(2,1fr)!important;gap:12px!important}.detail-container div[style*="grid-template-columns: repeat(5, 1fr)"]{grid-template-columns:repeat(3,1fr)!important;gap:8px!important}form[style*="display: flex; gap: 10px;"]{flex-direction:column;gap:8px!important}form[style*="display: flex; gap: 10px;"] select{width:100%!important}form[style*="display: flex; gap: 10px;"] button{justify-content:center;width:100%}}._container_1a0xm_7{flex-direction:column;gap:24px;height:100%;padding:24px;display:flex;overflow-y:auto}._header_1a0xm_17{justify-content:space-between;align-items:center;display:flex}._title_1a0xm_23{background:linear-gradient(to right, var(--text-primary), var(--accent-cyan));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.5rem;font-weight:700}._subtitle_1a0xm_31{color:var(--text-muted);margin-top:4px;font-size:.875rem}._statusIndicator_1a0xm_37{align-items:center;gap:10px;display:flex}._statusBadge_1a0xm_43{color:var(--text-muted);align-items:center;gap:6px;font-size:.8rem;display:flex}._statusDot_1a0xm_51{background:#10b981;border-radius:50%;width:8px;height:8px;display:inline-block}._statsGrid_1a0xm_60{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}._statCard_1a0xm_66{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;align-items:center;gap:16px;padding:20px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}._statCard_1a0xm_66:hover{border-color:var(--border-focus);transform:translateY(-4px);box-shadow:0 10px 20px -5px #0000001f,0 8px 8px -6px #0000001f}._statIcon_1a0xm_85{border-radius:12px;justify-content:center;align-items:center;padding:12px;display:flex}._statIconBlue_1a0xm_93{color:#3b82f6;background:#3b82f61a}._statIconPurple_1a0xm_99{color:#8b5cf6;background:#8b5cf61a}._statIconRed_1a0xm_105{color:var(--status-failed);background:#ef44441a}._statIconGreen_1a0xm_111{color:#10b981;background:#10b9811a}._statLabel_1a0xm_117{color:var(--text-muted);font-size:.8rem}._statValue_1a0xm_122{color:var(--text-primary);margin-top:4px;font-size:1.4rem;font-weight:700}._statUnit_1a0xm_129{color:var(--text-muted);font-size:.85rem;font-weight:400}._contentGrid_1a0xm_136{grid-template-columns:repeat(auto-fit,minmax(460px,1fr));gap:20px;display:grid}._contentColumn_1a0xm_142{flex-direction:column;gap:20px;display:flex}._card_1a0xm_149{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);border-radius:14px;padding:20px;transition:all .3s cubic-bezier(.4,0,.2,1)}._card_1a0xm_149:hover{transform:translateY(-2px);box-shadow:0 8px 16px -4px #00000014}._cardHeader_1a0xm_163{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}._cardTitle_1a0xm_170{color:var(--text-primary);align-items:center;gap:8px;margin:0;font-size:1rem;font-weight:600;display:flex}._progressGroup_1a0xm_181{flex-direction:column;gap:14px;display:flex}._progressItem_1a0xm_187{flex-direction:column;display:flex}._progressHeader_1a0xm_192{color:var(--text-primary);justify-content:space-between;margin-bottom:6px;font-size:.85rem;display:flex}._progressValue_1a0xm_200{font-weight:600}._progressTrack_1a0xm_204{background:var(--bg-tertiary);border-radius:4px;height:8px;overflow:hidden}._progressBar_1a0xm_211{border-radius:4px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}._progressPassed_1a0xm_217{background:#10b981}._progressFailed_1a0xm_218{background:var(--status-failed)}._progressBlocked_1a0xm_219{background:#f59e0b}._progressReady_1a0xm_220{background:#9ca3af}._severityGrid_1a0xm_223{text-align:center;grid-template-columns:repeat(4,1fr);gap:12px;display:grid}._severityCardHeader_1a0xm_230{justify-content:center;align-items:center;gap:6px;margin-bottom:8px;display:flex}._severityCard_1a0xm_230{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;padding:14px 10px;transition:all .3s cubic-bezier(.4,0,.2,1)}._severityCard_1a0xm_230:hover{transform:translateY(-3px)}._severityCritical_1a0xm_249{background:#ef44440a;border:1px solid #ef44442e;box-shadow:0 4px 15px -3px #ef444414,0 0 0 1px #ef44440d}._severityCritical_1a0xm_249:hover{background:#ef444412;border-color:#ef44444d;box-shadow:0 8px 20px -3px #ef444426,0 0 0 1px #ef44441a}._severityHigh_1a0xm_262{background:#f59e0b0a;border:1px solid #f59e0b2e;box-shadow:0 4px 15px -3px #f59e0b14,0 0 0 1px #f59e0b0d}._severityHigh_1a0xm_262:hover{background:#f59e0b12;border-color:#f59e0b4d;box-shadow:0 8px 20px -3px #f59e0b26,0 0 0 1px #f59e0b1a}._severityMedium_1a0xm_275{background:#3b82f60a;border:1px solid #3b82f62e;box-shadow:0 4px 15px -3px #3b82f614,0 0 0 1px #3b82f60d}._severityMedium_1a0xm_275:hover{background:#3b82f612;border-color:#3b82f64d;box-shadow:0 8px 20px -3px #3b82f626,0 0 0 1px #3b82f61a}._severityLow_1a0xm_288{background:#10b9810a;border:1px solid #10b9812e;box-shadow:0 4px 15px -3px #10b98114,0 0 0 1px #10b9810d}._severityLow_1a0xm_288:hover{background:#10b98112;border-color:#10b9814d;box-shadow:0 8px 20px -3px #10b98126,0 0 0 1px #10b9811a}._severityLabel_1a0xm_301{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.725rem;font-weight:600}._severityValue_1a0xm_309{margin-top:4px;font-size:1.4rem;font-weight:700}._colorCritical_1a0xm_315{color:var(--status-failed)}._colorHigh_1a0xm_316{color:#f59e0b}._colorMedium_1a0xm_317{color:#3b82f6}._colorLow_1a0xm_318,._colorGreen_1a0xm_319{color:#10b981}._runList_1a0xm_322{flex-direction:column;gap:12px;display:flex}._runCard_1a0xm_328{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:12px;flex-direction:column;gap:10px;padding:14px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}._runCard_1a0xm_328:hover{border-color:var(--border-focus);transform:translateY(-3px);box-shadow:0 8px 16px -4px #00000014}._runCardHeader_1a0xm_345{justify-content:space-between;display:flex}._runName_1a0xm_350{color:var(--text-primary);font-size:.85rem;font-weight:600}._runStatus_1a0xm_356{border-radius:4px;padding:2px 6px;font-size:.75rem;font-weight:600}._runStatusCompleted_1a0xm_363{color:#10b981;background:#10b9811a}._runStatusProgress_1a0xm_369{color:#3b82f6;background:#3b82f61a;transition:all .3s}._runStatusProgressActive_1a0xm_376{border:1px dashed #3b82f666;animation:2s ease-in-out infinite _statusPulse_1a0xm_1}@keyframes _statusPulse_1a0xm_1{0%{opacity:1}50%{opacity:.6}to{opacity:1}}._runMeta_1a0xm_387{color:var(--text-muted);justify-content:space-between;font-size:.75rem;display:flex}._runProgressTrack_1a0xm_394{background:var(--bg-tertiary);border-radius:3px;height:6px;overflow:hidden}._runProgressBar_1a0xm_401{background:var(--accent-purple);border-radius:3px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}._runProgressBarActive_1a0xm_408{animation:2s linear infinite _progressWave_1a0xm_1;background:linear-gradient(90deg, var(--accent-purple) 0%, #a78bfa 50%, var(--accent-purple) 100%)!important;background-size:200% 100%!important}@keyframes _progressWave_1a0xm_1{0%{background-position:200% 0}to{background-position:-200% 0}}._auditList_1a0xm_425{flex-direction:column;gap:10px;display:flex}._auditItem_1a0xm_431{border-bottom:1px solid var(--border-color);gap:12px;padding-bottom:10px;font-size:.8rem;display:flex}._auditActionBadge_1a0xm_439{font-family:var(--font-mono,monospace);letter-spacing:.02em;border:1px solid #ffffff08;border-radius:6px;justify-content:center;align-items:center;height:fit-content;padding:4px 8px;font-size:.725rem;font-weight:700;display:flex}._auditActionText_1a0xm_453{line-height:1}._auditContent_1a0xm_457{flex:1}._auditDetails_1a0xm_461{color:var(--text-primary);line-height:1.3}._auditMeta_1a0xm_466{color:var(--text-muted);justify-content:space-between;margin-top:4px;font-size:.75rem;display:flex}._auditGridHorizontal_1a0xm_475{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:8px;display:grid}._auditHorizontalItem_1a0xm_482{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;gap:14px;padding:16px;font-size:.8rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}._auditHorizontalItem_1a0xm_482:hover{border-color:var(--border-focus);transform:translateY(-3px);box-shadow:0 8px 16px -4px #00000014}@media (width<=1024px){._contentGrid_1a0xm_136{grid-template-columns:1fr}}@media (width<=768px){._container_1a0xm_7{gap:16px;padding:16px}._header_1a0xm_17{flex-direction:column;align-items:flex-start;gap:12px}._statsGrid_1a0xm_60,._severityGrid_1a0xm_223{grid-template-columns:repeat(2,1fr)}._auditGridHorizontal_1a0xm_475{grid-template-columns:1fr}}@media (width<=480px){._statsGrid_1a0xm_60,._severityGrid_1a0xm_223{grid-template-columns:1fr}}.datagrid-wrapper{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:12px;flex-direction:column;height:100%;display:flex;overflow:hidden}.datagrid-toolbar{border-bottom:1px solid var(--border-color);background:#ffffff03;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.datagrid-toolbar-left{align-items:center;gap:10px;display:flex}.datagrid-toolbar-right{align-items:center;gap:8px;display:flex}.datagrid-search{background:var(--bg-tertiary);border:1px solid var(--border-color);transition:var(--transition-smooth);border-radius:8px;align-items:center;gap:6px;min-width:200px;padding:6px 12px;display:flex}.datagrid-search:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 3px #0ea5e914}.datagrid-search input{color:var(--text-primary);width:100%;font-size:.8rem;font-family:var(--font-family);background:0 0;border:none;outline:none}.datagrid-search input::placeholder{color:var(--text-muted)}.datagrid-search svg{color:var(--text-muted);flex-shrink:0}.datagrid-col-config-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);font-size:.75rem;font-weight:600;font-family:var(--font-family);border-radius:8px;align-items:center;gap:4px;padding:6px 10px;display:flex}.datagrid-col-config-btn:hover{border-color:var(--border-focus);color:var(--primary-color);background:#0ea5e90f}.datagrid-col-config-panel{background:var(--bg-secondary);border:1px solid var(--border-color);min-width:220px;box-shadow:var(--shadow-md);z-index:100;border-radius:10px;max-height:320px;margin-top:4px;padding:10px 0;position:absolute;top:100%;right:0;overflow-y:auto}.datagrid-col-config-item{color:var(--text-primary);cursor:pointer;align-items:center;gap:8px;padding:6px 14px;font-size:.78rem;transition:background .15s;display:flex}.datagrid-col-config-item:hover{background:#0ea5e90a}.datagrid-col-config-item input[type=checkbox]{accent-color:var(--primary-color);width:14px;height:14px}.datagrid-table-area{flex:1;overflow:auto}.datagrid-table{border-collapse:collapse;text-align:left;width:100%}.datagrid-table thead{z-index:5;position:sticky;top:0}.datagrid-table th{text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap;-webkit-user-select:none;user-select:none;letter-spacing:.3px;background:#121420b3;padding:10px 14px;font-size:.72rem;font-weight:700}.datagrid-table td{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #ffffff06;max-width:300px;padding:10px 14px;font-size:.82rem;overflow:hidden}.datagrid-table tr.pinned-row{background:#0ea5e908}.datagrid-table tr.pinned-row td:first-child:before{content:"📌";margin-right:4px;font-size:.7rem}.datagrid-table tbody tr{transition:background .12s}.datagrid-table tbody tr:hover{background:#ffffff05}.datagrid-table tbody tr.row-selected{background:#0ea5e90f}.datagrid-table tbody tr:last-child td{border-bottom:none}.datagrid-table th.col-checkbox,.datagrid-table td.col-checkbox{text-align:center;width:42px;padding:10px 8px}.datagrid-table th.col-checkbox input,.datagrid-table td.col-checkbox input{accent-color:var(--primary-color);cursor:pointer;width:15px;height:15px}.datagrid-table th.col-actions,.datagrid-table td.col-actions{text-align:center;width:90px}.datagrid-action-btns{justify-content:center;align-items:center;gap:4px;display:flex}.datagrid-action-btn{width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;display:flex}.datagrid-action-btn:hover{border-color:var(--border-color);color:var(--primary-color);background:#0ea5e90f}.datagrid-action-btn.danger:hover{color:var(--status-failed);background:#ef444414}.datagrid-pagination{border-top:1px solid var(--border-color);color:var(--text-secondary);background:#ffffff03;flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 16px;font-size:.78rem;display:flex}.datagrid-pagination-info{align-items:center;gap:8px;display:flex}.datagrid-pagination-controls{align-items:center;gap:4px;display:flex}.datagrid-page-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);font-size:.75rem;font-weight:600;font-family:var(--font-family);border-radius:6px;justify-content:center;align-items:center;display:flex}.datagrid-page-btn:hover:not(:disabled){border-color:var(--border-focus);color:var(--primary-color);background:#0ea5e90f}.datagrid-page-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.datagrid-page-btn:disabled{opacity:.35;cursor:not-allowed}.datagrid-page-size-select{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);font-size:.75rem;font-family:var(--font-family);cursor:pointer;border-radius:6px;outline:none;padding:4px 8px}.datagrid-page-size-select:focus{border-color:var(--border-focus)}.datagrid-bulk-bar{color:var(--primary-color);background:#0ea5e90f;border-bottom:1px solid #0ea5e926;flex-shrink:0;align-items:center;gap:10px;padding:8px 16px;font-size:.8rem;font-weight:600;animation:.2s slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.datagrid-bulk-bar .bulk-count{background:var(--primary-color);color:#fff;border-radius:10px;padding:2px 8px;font-size:.7rem}.datagrid-empty{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.datagrid-empty svg{opacity:.4;margin-bottom:12px}.datagrid-empty h4{color:var(--text-primary);margin-bottom:4px;font-size:1rem}.datagrid-empty p{max-width:320px;font-size:.85rem}.datagrid-tag{white-space:nowrap;border-radius:10px;align-items:center;gap:3px;padding:2px 8px;font-size:.68rem;font-weight:600;display:inline-flex}.datagrid-tag.tag-default{color:var(--text-secondary);background:#6b72801f}.light-theme .datagrid-table th{background:#f0f4f8}.light-theme .datagrid-table tbody tr:hover{background:#00000005}.light-theme .datagrid-table tbody tr.row-selected{background:#0ea5e90a}.light-theme .datagrid-col-config-panel{box-shadow:0 4px 12px #00000014}._searchBar_1vfr3_3{border-bottom:1px solid #ffffff0d;align-items:center;gap:10px;padding:12px 20px;display:flex}._searchInputWrapper_1vfr3_11{flex:1;position:relative}._searchIcon_1vfr3_16{color:var(--text-secondary,#9ca3af);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}._searchInput_1vfr3_11{background:var(--bg-secondary,#121420cc);width:100%;color:var(--text-primary,#f3f4f6);border:1px solid #ffffff14;border-radius:10px;outline:none;padding:10px 14px 10px 38px;font-size:13px;font-weight:500;transition:all .25s}._searchInput_1vfr3_11:focus{border-color:var(--primary-color,#3b82f6);box-shadow:0 0 0 3px #3b82f61a}._searchInput_1vfr3_11::placeholder{color:var(--text-secondary,#9ca3af);opacity:.6}._refreshSmall_1vfr3_48{width:36px;height:36px;color:var(--text-secondary,#9ca3af);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}._refreshSmall_1vfr3_48:hover:not(:disabled){color:var(--text-primary,#f3f4f6);background:#ffffff14}._refreshSmall_1vfr3_48:disabled{opacity:.4;cursor:not-allowed}._bugList_1vfr3_74{flex-direction:column;display:flex}._bugRow_1vfr3_79{cursor:pointer;border-bottom:1px solid #ffffff08;justify-content:space-between;align-items:center;padding:14px 20px;transition:all .2s;display:flex}._bugRow_1vfr3_79:hover{background:#8b5cf60a}._bugRow_1vfr3_79:last-child{border-bottom:none}._bugRowLeft_1vfr3_97{flex:1;align-items:flex-start;gap:12px;min-width:0;display:flex}._bugIndex_1vfr3_105{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;min-width:28px;height:28px;margin-top:2px;font-size:12px;font-weight:700;display:flex}._bugInfo_1vfr3_118{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}._bugIdRow_1vfr3_126{align-items:center;gap:8px;display:flex}._bugId_1vfr3_126{color:var(--primary-color,#60a5fa);font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}._bugModule_1vfr3_139{color:var(--text-secondary,#9ca3af);opacity:.7;background:#ffffff0a;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:500}._bugTitle_1vfr3_149{color:var(--text-primary,#f3f4f6);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}._bugMeta_1vfr3_158{flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;display:flex}._bugAssignee_1vfr3_166{color:var(--text-secondary,#9ca3af);font-size:11px;font-weight:500}._bugDate_1vfr3_172{color:var(--text-secondary,#9ca3af);opacity:.6;font-size:11px}._viewDetailBtn_1vfr3_179{color:#60a5fa;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#3b82f614,#a855f714);border:1px solid #3b82f633;border-radius:8px;flex-shrink:0;align-items:center;gap:5px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .2s;display:flex}._viewDetailBtn_1vfr3_179:hover{background:linear-gradient(135deg,#3b82f626,#a855f726);border-color:#3b82f666;transform:translate(2px);box-shadow:0 2px 8px #3b82f626}._loaderContainer_1vfr3_204{min-height:200px;color:var(--text-secondary,#9ca3af);flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex}._emptyState_1vfr3_215{min-height:200px;color:var(--text-secondary,#9ca3af);flex-direction:column;justify-content:center;align-items:center;font-size:14px;display:flex}._spin_1vfr3_226{animation:1s linear infinite _spin_1vfr3_226}@keyframes _spin_1vfr3_226{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._container_na642_1{color:var(--text-primary,#f3f4f6);background-color:var(--bg-primary,#090a10);flex-direction:column;gap:24px;min-height:calc(100vh - 100px);padding:24px;font-family:Outfit,Inter,-apple-system,sans-serif;display:flex}._toolbar_na642_13{background:var(--bg-card,#14172aa6);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color,#ffffff0f);box-shadow:var(--shadow-md,0 8px 32px 0 #0003);border-radius:16px;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}._filterGroup_na642_26{align-items:center;gap:16px;display:flex}._selectWrapper_na642_32{align-items:center;display:flex;position:relative}._filterIcon_na642_38{color:var(--text-secondary,#9ca3af);pointer-events:none;position:absolute;left:12px}._projectSelect_na642_45{background:var(--bg-secondary,#121420);border:1px solid var(--border-color,#ffffff0f);color:var(--text-primary,#f3f4f6);cursor:pointer;appearance:none;border-radius:10px;outline:none;min-width:240px;padding:10px 16px 10px 36px;font-size:14px;font-weight:500;transition:all .3s}._projectSelect_na642_45:hover{border-color:var(--primary-color,#3b82f6);box-shadow:0 0 0 3px var(--accent-purple-glow,#0ea5e926)}._refreshBtn_na642_65{color:#60a5fa;cursor:pointer;background:linear-gradient(135deg,#3b82f61a,#a855f71a);border:1px solid #3b82f64d;border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:600;transition:all .3s;display:flex}._refreshBtn_na642_65:hover:not(:disabled){background:linear-gradient(135deg,#3b82f633,#a855f733);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f640}._refreshBtn_na642_65:disabled{opacity:.5;cursor:not-allowed}._tabsHeader_na642_92{border-bottom:1px solid var(--border-color,#ffffff0f);gap:12px;padding-bottom:8px;display:flex}._tabBtn_na642_99{color:var(--text-secondary,#9ca3af);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:12px 24px;font-size:15px;font-weight:600;transition:all .3s;display:flex}._tabBtn_na642_99:hover{color:var(--text-primary,#f3f4f6)}._tabActive_na642_118{color:var(--primary-color,#3b82f6);border-bottom-color:var(--primary-color,#3b82f6)}._summaryGrid_na642_124{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}._summaryCard_na642_130{background:var(--bg-card,#14172aa6);border:1px solid var(--border-color,#ffffff0f);box-shadow:var(--shadow-sm,0 4px 20px #00000026);border-radius:16px;justify-content:space-between;align-items:center;padding:20px 24px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}._summaryCard_na642_130:hover{border-color:var(--border-focus,#0ea5e966);box-shadow:var(--shadow-md,0 8px 30px #00000040);transform:translateY(-3px)}._cardInfo_na642_148{flex-direction:column;gap:6px;display:flex}._cardLabel_na642_154{color:var(--text-secondary,#9ca3af);text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:600}._cardValue_na642_162{letter-spacing:-.02em;font-size:32px;font-weight:700}._cardIcon_na642_168{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}._iconTotal_na642_177{color:#3b82f6;background:#3b82f626}._iconCritical_na642_178{color:#ef4444;background:#ef444426}._iconActive_na642_179{color:#f59e0b;background:#f59e0b26}._iconResolved_na642_180{color:#10b981;background:#10b98126}._colorCritical_na642_182{color:#f87171}._colorActive_na642_183{color:#fbbf24}._colorResolved_na642_184{color:#34d399}._chartsGrid_na642_187{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:20px;display:grid}._chartCard_na642_193{background:var(--bg-card,#14172aa6);border:1px solid var(--border-color,#ffffff0f);box-shadow:var(--shadow-sm,0 4px 20px #00000026);border-radius:16px;padding:24px}._chartTitle_na642_201{color:var(--text-primary,#f3f4f6);border-left:4px solid var(--primary-color,#3b82f6);margin-bottom:24px;padding-left:10px;font-size:16px;font-weight:700}._donutContainer_na642_211{flex-wrap:wrap;justify-content:space-around;align-items:center;gap:20px;display:flex}._svgDonut_na642_219{filter:drop-shadow(0 8px 16px #0000004d)}._donutSegment_na642_223{cursor:pointer;transition:stroke-width .3s,stroke-dashoffset .3s}._donutSegment_na642_223:hover{stroke-width:24px}._donutCenterText_na642_232{text-anchor:middle}._donutCenterVal_na642_236{fill:var(--text-primary,#f3f4f6);font-size:28px;font-weight:800}._donutCenterLabel_na642_242{fill:var(--text-secondary,#9ca3af);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}._legendList_na642_250{flex-direction:column;gap:12px;min-width:180px;display:flex}._legendItem_na642_257{align-items:center;gap:10px;font-size:14px;display:flex}._legendColor_na642_264{border-radius:3px;flex-shrink:0;width:12px;height:12px}._legendName_na642_271{color:var(--text-secondary,#9ca3af);flex-grow:1}._legendValue_na642_276{color:var(--text-primary,#f3f4f6);font-weight:700}._legendClickable_na642_282{cursor:pointer;border-radius:8px;padding:6px 10px;transition:all .25s}._legendClickable_na642_282:hover{background:#ffffff0d;transform:translate(4px)}._legendClickable_na642_282:hover ._legendName_na642_271{color:var(--text-primary,#f3f4f6)}._legendClickable_na642_282:hover ._legendValue_na642_276{transform:scale(1.1)}._statusBarList_na642_303{flex-direction:column;gap:18px;padding-top:8px;display:flex}._statusRow_na642_310{flex-direction:column;gap:8px;display:flex}._statusLabelGroup_na642_316{justify-content:space-between;font-size:13px;font-weight:600;display:flex}._statusName_na642_323{color:var(--text-secondary,#9ca3af)}._statusCount_na642_327{color:var(--text-primary,#f3f4f6)}._progressBarBg_na642_331{background:var(--bg-tertiary,#1b1e32);border-radius:5px;height:10px;overflow:hidden}._progressBarFill_na642_338{border-radius:5px;height:100%;transition:width 1s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px #00000080}._bottomGrid_na642_346{grid-template-columns:2fr 1.2fr;gap:20px;display:grid}._bottomGridSingle_na642_352{grid-template-columns:1fr;gap:20px;display:grid}._gridSpan2_na642_358{grid-column:span 1}@media (width>=1024px){._gridSpan2_na642_358{grid-column:span 1}}._trendContainer_na642_368{justify-content:center;align-items:center;height:220px;display:flex}._trendSvg_na642_375{overflow:visible}._trendNodeVal_na642_379{fill:var(--text-primary,#f3f4f6);font-size:11px;font-weight:700}._trendNode_na642_379:hover circle{r:7;stroke-width:4px}._trendLabel_na642_390{fill:var(--text-secondary,#9ca3af);font-size:11px;font-weight:500}._topModulesContainer_na642_397{max-height:220px;overflow-y:auto}._topModulesTable_na642_402{border-collapse:collapse;width:100%}._topModulesTable_na642_402 th{text-align:left;text-transform:uppercase;color:var(--text-secondary,#9ca3af);border-bottom:1px solid var(--border-color,#ffffff0f);padding:8px 12px;font-size:12px;font-weight:600}._topModulesTable_na642_402 td{border-bottom:1px solid var(--border-color,#ffffff08);padding:12px;font-size:14px}._topModulesTable_na642_402 tr:last-child td{border-bottom:none}._moduleRowName_na642_427{align-items:center;gap:10px;display:flex}._badgeIndex_na642_433{background:var(--bg-tertiary,#1b1e32);width:20px;height:20px;color:var(--text-secondary,#9ca3af);border-radius:4px;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}._textEllipsis_na642_446{white-space:nowrap;text-overflow:ellipsis;max-width:160px;overflow:hidden}._criticalBadge_na642_453{color:#f87171;background:#ef444426;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:600}._columnChartContainer_na642_463{justify-content:center;align-items:flex-end;height:220px;display:flex}._columnsList_na642_470{justify-content:space-around;align-items:flex-end;width:100%;height:180px;padding-bottom:10px;display:flex}._columnWrapper_na642_479{flex-direction:column;flex-grow:1;align-items:center;gap:10px;max-width:60px;display:flex}._columnBarContainer_na642_488{background:var(--bg-tertiary,#1b1e32);border-radius:6px;align-items:flex-end;width:24px;height:130px;display:flex;position:relative;overflow:visible}._columnBarFill_na642_499{cursor:pointer;border-radius:6px;width:100%;transition:height .8s cubic-bezier(.4,0,.2,1);position:relative}._columnBarFill_na642_499:hover{filter:brightness(1.2)}._columnTooltip_na642_511{background:var(--bg-secondary,#121420);border:1px solid var(--border-color,#ffffff0f);color:var(--text-primary,#f3f4f6);white-space:nowrap;opacity:0;visibility:hidden;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700;transition:all .2s;position:absolute;top:-28px;left:50%;transform:translate(-50%)}._columnBarFill_na642_499:hover ._columnTooltip_na642_511{opacity:1;visibility:visible;top:-34px}._columnLabel_na642_535{color:var(--text-secondary,#9ca3af);white-space:nowrap;text-overflow:ellipsis;max-width:50px;font-size:10px;font-weight:600;overflow:hidden}._runsTableContainer_na642_546{overflow-x:auto}._runsTable_na642_546{border-collapse:collapse;width:100%}._runsTable_na642_546 th{text-align:left;text-transform:uppercase;color:var(--text-secondary,#9ca3af);border-bottom:1px solid var(--border-color,#ffffff0f);padding:12px 16px;font-size:12px;font-weight:600}._runsTable_na642_546 td{border-bottom:1px solid var(--border-color,#ffffff08);padding:16px;font-size:14px}._runsTable_na642_546 tr:hover td{background-color:#8b5cf608}._runTableNameText_na642_575{color:var(--text-primary,#f3f4f6);font-weight:600}._sprintTag_na642_580{color:#c084fc;background:#a855f726;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:600}._progressCellGroup_na642_589{flex-direction:column;align-items:center;gap:6px;display:flex}._progressText_na642_596{color:var(--text-secondary,#9ca3af);font-size:12px;font-weight:600}._microProgressBg_na642_602{background:var(--bg-tertiary,#1b1e32);border-radius:3px;width:80px;height:6px;overflow:hidden}._microProgressFill_na642_610{background:var(--primary-color,#3b82f6);border-radius:3px;height:100%}._successRateBadge_na642_616{border-radius:6px;padding:4px 8px;font-size:12px;font-weight:700}._rateHigh_na642_623{color:#34d399;background:#10b98126}._rateMid_na642_624{color:#fbbf24;background:#f59e0b26}._rateLow_na642_625{color:#f87171;background:#ef444426}._dateText_na642_627{color:var(--text-secondary,#9ca3af);font-size:13px}._actionLink_na642_632{color:#60a5fa;align-items:center;gap:6px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}._actionLink_na642_632:hover{color:#93c5fd;transform:translate(2px)}._loaderContainer_na642_649{flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:300px;display:flex}._noData_na642_658{text-align:center;color:var(--text-secondary,#9ca3af);padding:60px;font-size:14px}._spin_na642_665{animation:1s linear infinite _spin_na642_665}@keyframes _spin_na642_665{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._barFillHover_na642_674{cursor:pointer;transition:all .2s ease-in-out}._barFillHover_na642_674:hover{filter:brightness(1.25);opacity:.95}.gantt-wrapper{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:12px;flex-direction:column;height:100%;display:flex;overflow:hidden}.gantt-toolbar{border-bottom:1px solid var(--border-color);background:#ffffff03;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.gantt-zoom-btns{gap:4px;display:flex}.gantt-zoom-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);font-size:.75rem;font-weight:600;font-family:var(--font-family);border-radius:6px;padding:5px 12px}.gantt-zoom-btn:hover{color:var(--primary-color);background:#0ea5e90f}.gantt-zoom-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.gantt-content{flex:1;display:flex;overflow:hidden}.gantt-task-list{border-right:1px solid var(--border-color);flex-shrink:0;min-width:250px;max-width:250px;overflow-y:auto}.gantt-task-list-header{text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border-color);letter-spacing:.3px;z-index:3;background:#121420b3;padding:10px 14px;font-size:.72rem;font-weight:700;position:sticky;top:0}.gantt-task-row{cursor:pointer;border-bottom:1px solid #ffffff06;align-items:center;gap:8px;height:44px;padding:8px 14px;transition:background .12s;display:flex}.gantt-task-row:hover{background:#ffffff05}.gantt-task-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.8rem;font-weight:600;overflow:hidden}.gantt-task-assignee{color:var(--text-muted);white-space:nowrap;align-items:center;gap:3px;font-size:.7rem;display:flex}.gantt-timeline-area{flex:1;position:relative;overflow:auto}.gantt-timeline-header{z-index:3;border-bottom:1px solid var(--border-color);background:#121420b3;display:flex;position:sticky;top:0}.gantt-timeline-col{text-align:center;color:var(--text-muted);-webkit-user-select:none;user-select:none;border-right:1px solid #ffffff05;flex-shrink:0;padding:8px 0;font-size:.68rem;font-weight:600}.gantt-timeline-col.today{color:var(--primary-color);background:#0ea5e90f;font-weight:700}.gantt-timeline-col.weekend{background:#ffffff03}.gantt-timeline-body{position:relative}.gantt-timeline-row{border-bottom:1px solid #ffffff06;height:44px;display:flex;position:relative}.gantt-timeline-cell{border-right:1px solid #ffffff04;flex-shrink:0}.gantt-timeline-cell.today{background:#0ea5e908}.gantt-timeline-cell.weekend{background:#ffffff01}.gantt-bar{color:#fff;cursor:grab;z-index:2;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;align-items:center;min-width:20px;height:28px;padding:0 8px;font-size:.68rem;font-weight:600;transition:box-shadow .15s,transform .1s;display:flex;position:absolute;top:8px;overflow:hidden}.gantt-bar:hover{z-index:5;transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.gantt-bar:active{cursor:grabbing}.gantt-bar.status-todo{background:linear-gradient(135deg,#6c757d,#868e96)}.gantt-bar.status-in_progress{background:linear-gradient(135deg, var(--primary-color), #38bdf8)}.gantt-bar.status-in_review{background:linear-gradient(135deg,#f59e0b,#fbbf24)}.gantt-bar.status-done{background:linear-gradient(135deg, var(--status-passed), #34d399);opacity:.8}.gantt-bar.overdue{border:2px solid var(--status-failed);box-shadow:0 0 8px #ef44444d}.gantt-bar-progress{background:#ffffff26;border-radius:6px 0 0 6px;position:absolute;top:0;bottom:0;left:0}.gantt-today-line{background:var(--status-failed);z-index:4;pointer-events:none;width:2px;position:absolute;top:0;bottom:0}.gantt-today-line:before{content:"Hôm nay";color:var(--status-failed);white-space:nowrap;font-size:.6rem;font-weight:700;position:absolute;top:-18px;left:-20px}.gantt-bar-handle{cursor:ew-resize;z-index:3;width:8px;position:absolute;top:0;bottom:0}.gantt-bar-handle.left{border-radius:6px 0 0 6px;left:0}.gantt-bar-handle.right{border-radius:0 6px 6px 0;right:0}.gantt-bar-handle:hover{background:#fff3}.gantt-empty{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.gantt-empty svg{opacity:.4;margin-bottom:12px}.light-theme .gantt-task-list-header,.light-theme .gantt-timeline-header{background:#f0f4f8}.light-theme .gantt-timeline-col.today{background:#0ea5e90a}.light-theme .gantt-timeline-cell.today{background:#0ea5e905}@keyframes ping{0%{opacity:1;transform:scale(1)}75%,to{opacity:0;transform:scale(2)}}.spin-animation{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
