.modal-overlay[data-v-8c1e549a]{align-items:center;animation:fadeIn-8c1e549a .2s ease-out;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#11182766;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:9999}@keyframes fadeIn-8c1e549a{0%{opacity:0}to{opacity:1}}.modal-container[data-v-8c1e549a]{animation:slideUp-8c1e549a .3s cubic-bezier(.16,1,.3,1);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-glass),0 25px 50px -12px #00000040;display:flex;flex-direction:column;max-width:95vw;overflow:hidden;width:650px}@keyframes slideUp-8c1e549a{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header[data-v-8c1e549a]{align-items:center;background:#f8fafc;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:24px}.modal-header h2[data-v-8c1e549a]{color:var(--text-main);font-size:1.25rem;font-weight:700;letter-spacing:-.02em;margin:0}.close-btn[data-v-8c1e549a]{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;transition:all .2s;width:32px}.close-btn[data-v-8c1e549a]:hover{background:#e2e8f0;color:#0f172a}.modal-body[data-v-8c1e549a]{gap:28px;padding:32px 24px}.form-group[data-v-8c1e549a],.modal-body[data-v-8c1e549a]{display:flex;flex-direction:column}.form-group[data-v-8c1e549a]{gap:10px}.form-group label[data-v-8c1e549a]{color:var(--text-main);font-size:.9rem;font-weight:600}.form-group input[data-v-8c1e549a],.form-group select[data-v-8c1e549a]{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-main);font-size:.95rem;outline:none;padding:10px 14px;transition:all .2s}.form-group input[data-v-8c1e549a]:focus,.form-group select[data-v-8c1e549a]:focus{border-color:var(--primary);box-shadow:0 0 0 3px #4f46e51a}.time-inputs[data-v-8c1e549a]{align-items:center;display:flex;gap:12px}.time-separator[data-v-8c1e549a]{color:var(--text-muted);font-weight:500}.break-time-wrapper[data-v-8c1e549a]{align-items:center;border-left:1px solid var(--border-color);display:flex;gap:8px;margin-left:12px;padding-left:12px}.break-input[data-v-8c1e549a]{width:70px}.checkbox-group[data-v-8c1e549a]{display:flex;gap:20px;padding:8px 0}.checkbox-label[data-v-8c1e549a]{align-items:center;color:var(--text-main);cursor:pointer;display:flex;font-weight:500!important;gap:8px}.checkbox-label input[type=checkbox][data-v-8c1e549a]{accent-color:var(--primary);cursor:pointer;height:18px;margin:0;padding:0;width:18px}.holiday-input[data-v-8c1e549a]{display:flex;gap:12px}.holiday-input input[data-v-8c1e549a]{flex:1}.holiday-list[data-v-8c1e549a]{flex-direction:column;gap:8px;list-style:none;margin:0;max-height:160px;overflow-y:auto;padding:0}.holiday-list[data-v-8c1e549a],.holiday-list li[data-v-8c1e549a]{border-radius:var(--radius-md);display:flex}.holiday-list li[data-v-8c1e549a]{align-items:center;background:#f1f5f9;border:1px solid transparent;color:var(--text-main);font-size:.95rem;justify-content:space-between;padding:10px 16px;transition:border-color .2s}.holiday-list li[data-v-8c1e549a]:hover{border-color:#cbd5e1}.holiday-info[data-v-8c1e549a]{align-items:center;display:flex;gap:12px}.holiday-date[data-v-8c1e549a]{color:var(--text-main);font-weight:500}.holiday-name[data-v-8c1e549a]{color:var(--text-muted);font-size:.9rem}.holiday-badge[data-v-8c1e549a]{background:#e0e7ff;border-radius:12px;color:#4338ca;font-size:.75rem;font-weight:600;padding:2px 8px;text-transform:uppercase}.recurring-label[data-v-8c1e549a]{margin-left:8px}.remove-btn[data-v-8c1e549a]{align-items:center;background:#fee2e2;border:none;border-radius:50%;color:#ef4444;cursor:pointer;display:flex;font-size:1.1rem;height:24px;justify-content:center;transition:all .2s;width:24px}.remove-btn[data-v-8c1e549a]:hover{background:#fca5a5;color:#991b1b}.modal-footer[data-v-8c1e549a]{background:#f8fafc;border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.modal-overlay[data-v-378cdc38]{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a66;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:9999}.prompt-modal[data-v-378cdc38]{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-width:90vw;overflow:hidden;width:400px}.modal-header[data-v-378cdc38]{align-items:center;background:#f8fafc;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:16px 24px}.modal-header h2[data-v-378cdc38]{font-size:1.1rem;margin:0}.close-btn[data-v-378cdc38]{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:1.5rem}.modal-body[data-v-378cdc38]{padding:24px}.prompt-input[data-v-378cdc38]{border:1px solid var(--border-color);border-radius:6px;box-sizing:border-box;font-size:1rem;padding:10px;width:100%}.modal-footer[data-v-378cdc38]{background:#f8fafc;border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.driver-active .driver-overlay{pointer-events:none}.driver-active.driver-no-scroll{overflow:hidden}.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}@keyframes animate-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay{animation:animate-fade-in var(--driver-animation-duration,.4s) ease-in-out}.driver-fade .driver-popover{animation:animate-fade-in var(--driver-animation-duration,.4s)}.driver-popover{all:unset;background-color:#fff;border-radius:5px;box-shadow:0 1px 10px #0006;box-sizing:border-box;color:#2d2d2d;margin:0;max-width:300px;min-width:250px;padding:15px;position:fixed;right:0;top:0;z-index:1000000000}.driver-popover *{font-family:Helvetica Neue,Inter,ui-sans-serif,Apple Color Emoji,Helvetica,Arial,sans-serif}.driver-popover-title{display:block;font:700 19px/1.5 sans-serif;margin:0;position:relative;zoom:1}.driver-popover-close-btn{all:unset;color:#d2d2d2;cursor:pointer;font-size:18px;font-weight:500;height:28px;position:absolute;right:0;text-align:center;top:0;transition:color .2s;width:32px;z-index:1}.driver-popover-close-btn:focus,.driver-popover-close-btn:hover{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{font:400 14px/1.5 sans-serif;margin-bottom:0;zoom:1}.driver-popover-footer{align-items:center;display:flex;justify-content:space-between;margin-top:15px;text-align:right;zoom:1}.driver-popover-progress-text{color:#727272;font-size:13px;font-weight:400;zoom:1}.driver-popover-footer-btn{all:unset;background-color:#fff;border:1px solid #ccc;border-radius:3px;box-sizing:border-box;color:#2d2d2d;cursor:pointer;display:inline-block;font:12px/1.3 sans-serif;outline:0;padding:3px 7px;text-decoration:none;zoom:1}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}.driver-active-element-parent-no-scroll{overflow:hidden!important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none!important}.driver-popover-footer-btn:focus,.driver-popover-footer-btn:hover{background-color:#f7f7f7}.driver-popover-navigation-btns{display:flex;flex-grow:1;justify-content:flex-end}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{border:5px solid #fff;content:"";position:absolute}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{border-bottom-color:#0000;border-right-color:#0000;border-top-color:#0000;left:100%}.driver-popover-arrow-side-right{border-bottom-color:#0000;border-left-color:#0000;border-top-color:#0000;right:100%}.driver-popover-arrow-side-top{border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;top:100%}.driver-popover-arrow-side-bottom{border-left-color:#0000;border-right-color:#0000;border-top-color:#0000;bottom:100%}.driver-popover-arrow-none,.driver-popover-arrow-side-center{display:none}.app-header[data-v-c1ab542a]{justify-content:space-between;padding:0 24px}.app-header[data-v-c1ab542a],.logo[data-v-c1ab542a]{align-items:center;display:flex}.logo[data-v-c1ab542a]{gap:12px}.app-logo[data-v-c1ab542a]{border-radius:6px;box-shadow:0 2px 4px #0000001a;height:24px;width:24px}.logo h1[data-v-c1ab542a]{color:var(--primary);font-size:1.25rem;font-weight:700;letter-spacing:-.5px;margin:0}.badge[data-v-c1ab542a]{background:var(--secondary);border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:2px 8px;text-transform:uppercase}.actions[data-v-c1ab542a]{align-items:center;display:flex;gap:24px}.left-actions[data-v-c1ab542a],.right-actions[data-v-c1ab542a]{align-items:center;display:flex;gap:8px}.right-actions[data-v-c1ab542a]{border-left:1px solid var(--border-color);padding-left:16px}.dropdown-wrapper[data-v-c1ab542a]{position:relative}.dropdown-trigger[data-v-c1ab542a]{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:6px;padding:8px 16px;transition:var(--transition)}.trigger-new[data-v-c1ab542a]{background:#ecfdf5;border:1px solid #a7f3d0;color:#059669}.trigger-new[data-v-c1ab542a]:hover{background:#d1fae5;border-color:#6ee7b7;transform:translateY(-1px)}.trigger-download[data-v-c1ab542a]{background:#eef2ff;border:1px solid #c7d2fe;color:var(--primary)}.trigger-download[data-v-c1ab542a]:hover{background:#e0e7ff;border-color:#a5b4fc;transform:translateY(-1px)}.chevron[data-v-c1ab542a]{transition:transform .2s ease}.chevron.open[data-v-c1ab542a]{transform:rotate(180deg)}.dropdown-menu[data-v-c1ab542a]{animation:dropdown-in-c1ab542a .15s ease-out;background:#fff;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 10px 25px -3px #0000001f,0 4px 6px -2px #0000000d;left:0;min-width:240px;padding:4px;position:absolute;top:calc(100% + 6px);z-index:9999}.dropdown-menu.right-aligned[data-v-c1ab542a]{left:auto;right:0}@keyframes dropdown-in-c1ab542a{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-item[data-v-c1ab542a]{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-dark);cursor:pointer;display:flex;flex-wrap:wrap;font-size:.85rem;gap:10px;padding:10px 12px;position:relative;text-align:left;transition:background .15s;width:100%}.dropdown-item[data-v-c1ab542a]:hover{background:#f1f5f9}.dropdown-item.highlight[data-v-c1ab542a]{color:var(--primary);font-weight:600}.dropdown-item.highlight[data-v-c1ab542a]:hover{background:#e0e7ff}.item-desc[data-v-c1ab542a]{color:#94a3b8;display:block;font-size:.75rem;font-weight:400;margin-top:-2px;padding-left:26px;width:100%}.badge-soon[data-v-c1ab542a]{color:#f59e0b;font-weight:500}.dropdown-divider[data-v-c1ab542a]{background:var(--border-color);height:1px;margin:4px 8px}.modal-overlay[data-v-c1ab542a]{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a66;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:9999}.info-modal[data-v-c1ab542a]{animation:modal-fade-in-c1ab542a .2s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:90vw;overflow:hidden;width:400px}.modal-header[data-v-c1ab542a]{align-items:center;background:#f8fafc;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:16px 24px}.modal-header h2[data-v-c1ab542a]{color:var(--text-dark);font-size:1.1rem;margin:0}.close-btn[data-v-c1ab542a]{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:1.5rem;line-height:1;transition:color .2s}.close-btn[data-v-c1ab542a]:hover{color:#ef4444}.modal-body.text-center[data-v-c1ab542a]{padding:32px 24px;text-align:center}.info-logo[data-v-c1ab542a]{border-radius:16px;box-shadow:0 4px 6px #0000001a;height:64px;margin-bottom:16px;width:64px}.text-center h3[data-v-c1ab542a]{color:var(--text-dark);font-size:1.25rem;margin:0 0 8px}.info-text[data-v-c1ab542a]{color:var(--primary);font-weight:500;margin:0 0 24px}.contact-info[data-v-c1ab542a]{background:#f8fafc;border-radius:8px;margin-bottom:24px;padding:16px;text-align:left}.contact-info p[data-v-c1ab542a]{color:var(--text-main);font-size:.95rem;margin:8px 0}.contact-info a[data-v-c1ab542a]{color:var(--primary);font-weight:500;text-decoration:none}.contact-info a[data-v-c1ab542a]:hover{text-decoration:underline}.copyright[data-v-c1ab542a]{color:var(--text-muted);font-size:.85rem;margin:0}@keyframes modal-fade-in-c1ab542a{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.info-btn[data-v-c1ab542a],.settings-btn[data-v-c1ab542a]{border-radius:50%;color:var(--text-muted);padding:8px;transition:color .2s}.info-btn[data-v-c1ab542a]:hover,.settings-btn[data-v-c1ab542a]:hover{background:var(--bg-hover);color:var(--primary)}.wbs-row[data-v-30fedd0c]{align-items:center;background:#fff;border-bottom:1px solid var(--border-color);display:flex;height:var(--task-row-height,48px);min-width:-moz-max-content;min-width:max-content;position:relative;transition:background .2s}.wbs-row[data-v-30fedd0c]:hover{background:#f8fafc}.wbs-row.selected[data-v-30fedd0c]{background:#e0f2fe}.wbs-row.drop-before[data-v-30fedd0c]:before{background:var(--primary);border-radius:2px;content:"";height:3px;left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:10}.col-cell[data-v-30fedd0c]{align-items:center;display:flex;flex-shrink:0;height:100%;overflow:hidden;padding:0 4px}.col-code[data-v-30fedd0c]{color:var(--text-muted);font-size:.72rem;font-weight:600}.col-act[data-v-30fedd0c],.col-code[data-v-30fedd0c],.drag-col[data-v-30fedd0c]{justify-content:center}.drag-col[data-v-30fedd0c]{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.drag-col[data-v-30fedd0c]:active{cursor:grabbing}.drag-handle[data-v-30fedd0c]{color:#cbd5e1;font-size:1rem}.name-col[data-v-30fedd0c]{gap:0;transition:background .15s}.type-icon[data-v-30fedd0c]{flex-shrink:0;font-size:.8rem;margin:0 4px}.name-col.drop-child[data-v-30fedd0c]{background:#ede9fe;border-radius:4px}.tree-indent[data-v-30fedd0c]{display:flex}.tree-indent[data-v-30fedd0c],.tree-seg[data-v-30fedd0c]{flex-shrink:0;height:100%}.tree-seg[data-v-30fedd0c]{position:relative;width:16px}.tree-vbar[data-v-30fedd0c]{background:#818cf8;bottom:0;left:50%;position:absolute;top:0;transform:translate(-50%);width:1.5px}.tree-vbar.half-height[data-v-30fedd0c]{bottom:50%}.tree-hbar[data-v-30fedd0c]{background:#818cf8;height:1.5px;left:50%;position:absolute;right:0;top:50%;transform:translateY(-50%)}.collapse-wrap[data-v-30fedd0c]{align-items:center;display:flex;flex-shrink:0;height:100%;justify-content:center;position:relative;width:16px}.bottom-half-line[data-v-30fedd0c]{background:#818cf8;bottom:0;left:50%;position:absolute;top:50%;transform:translate(-50%);width:1.5px;z-index:0}.collapse-btn[data-v-30fedd0c]{align-items:center;background:#fff;border:none;border-radius:2px;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:0;z-index:1}.collapse-btn:hover svg rect[data-v-30fedd0c]{fill:#ede9fe}.collapse-placeholder[data-v-30fedd0c]{flex-shrink:0;width:16px}.name-input[data-v-30fedd0c]{font-family:Inter,system-ui,sans-serif!important}.date-input[data-v-30fedd0c],.num-input[data-v-30fedd0c],.task-input[data-v-30fedd0c]{background:transparent;border:1px solid transparent;border-radius:4px;color:var(--text-main);font-size:.78rem;outline:none;padding:3px 4px;width:100%}.date-input[data-v-30fedd0c]:focus,.num-input[data-v-30fedd0c]:focus,.task-input[data-v-30fedd0c]:focus{background:#fff;border-color:var(--primary)}.num-input[data-v-30fedd0c]{text-align:center}.wbs-row.is-dragging .date-input[data-v-30fedd0c],.wbs-row.is-dragging .num-input[data-v-30fedd0c],.wbs-row.is-dragging .task-input[data-v-30fedd0c]{pointer-events:none}.btn-tiny[data-v-30fedd0c]{background:none;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;padding:2px 4px}.btn-tiny[data-v-30fedd0c]:hover{background:#e5e7eb}.text-danger[data-v-30fedd0c]:hover{background:#fee2e2;color:#dc2626}.critical-badge[data-v-30fedd0c]{background:#fee2e2;border-radius:4px;color:#ef4444;flex-shrink:0;font-size:.65rem;font-weight:700;margin-left:6px;padding:2px 4px}.pin-badge[data-v-30fedd0c]{flex-shrink:0;font-size:.8rem;margin-left:4px}.wbs-sidebar[data-v-bb2b6671]{background:var(--bg-surface);border-right:1px solid var(--border-color);display:flex;flex-direction:column;flex-shrink:0;min-width:280px;position:relative;z-index:5}.sidebar-header[data-v-bb2b6671]{align-items:center;background:#f8fafc;border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;height:48px;justify-content:space-between;padding:0 12px 0 16px}.header-actions[data-v-bb2b6671]{align-items:center;display:flex;gap:8px}.data-date-picker[data-v-bb2b6671]{align-items:center;display:flex;gap:6px}.data-date-label[data-v-bb2b6671]{color:var(--text-muted);font-size:.75rem;font-weight:600}.data-date-picker input[data-v-bb2b6671]{border:1px solid var(--border-color);border-radius:4px;font-size:.75rem;outline:none;padding:4px 8px}.btn-warning[data-v-bb2b6671]{background-color:#f59e0b}.btn-warning[data-v-bb2b6671]:hover{background-color:#d97706}.btn-icon[data-v-bb2b6671]{align-items:center;background:#fff;border:1px solid var(--border-color);border-radius:6px;color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;padding:0;width:32px}.btn-icon[data-v-bb2b6671]:hover{background:#e5e7eb}.btn-sm[data-v-bb2b6671]{cursor:pointer;font-size:.82rem;padding:5px 14px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.col-settings-wrap[data-v-bb2b6671]{position:relative}.col-settings-panel[data-v-bb2b6671]{background:#fff;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 8px 24px #0000001f;min-width:160px;padding:8px 0;position:absolute;right:0;top:calc(100% + 6px);z-index:200}.settings-title[data-v-bb2b6671]{border-bottom:1px solid var(--border-color);color:var(--text-muted);font-size:.72rem;font-weight:700;margin-bottom:4px;padding:4px 14px 8px;text-transform:uppercase}.settings-row[data-v-bb2b6671]{align-items:center;cursor:pointer;display:flex;font-size:.82rem;gap:8px;padding:5px 14px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.settings-row[data-v-bb2b6671]:hover{background:#f1f5f9}.settings-row.disabled[data-v-bb2b6671]{cursor:default;opacity:.4}.wbs-header-scroll[data-v-bb2b6671]{background:#f1f5f9;border-bottom:1px solid var(--border-color);flex-shrink:0;height:48px;overflow:hidden}.wbs-grid-header[data-v-bb2b6671]{color:var(--text-muted);font-size:.72rem;font-weight:700;height:48px;text-transform:uppercase}.col-header[data-v-bb2b6671],.wbs-grid-header[data-v-bb2b6671]{align-items:center;display:flex}.col-header[data-v-bb2b6671]{flex-shrink:0;height:100%;padding:0 4px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.col-header.resizable[data-v-bb2b6671]:hover{background:#e2e8f0}.col-header-label[data-v-bb2b6671]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-resize-handle[data-v-bb2b6671]{border-right:2px solid transparent;bottom:4px;cursor:col-resize;position:absolute;right:0;top:4px;transition:border-color .15s;width:5px}.col-header.resizable:hover .col-resize-handle[data-v-bb2b6671],.col-resize-handle[data-v-bb2b6671]:hover{border-color:var(--primary)}.task-list[data-v-bb2b6671]{flex:1;overflow-x:auto;overflow-y:auto}.empty-state[data-v-bb2b6671]{color:var(--text-muted);padding:16px;text-align:center}.splitter-handle[data-v-bb2b6671]{cursor:col-resize;height:100%;position:absolute;right:-4px;top:0;width:8px;z-index:100}.splitter-handle[data-v-bb2b6671]:after{background:var(--border-color);bottom:0;content:"";display:block;left:3px;position:absolute;top:0;transition:background .15s;width:2px}.splitter-handle[data-v-bb2b6671]:active:after,.splitter-handle[data-v-bb2b6671]:hover:after{background:var(--primary)}.gantt-canvas[data-v-caeda978]{background:#fff;display:block;flex:1;overflow:auto;position:relative}.gantt-top-bar[data-v-caeda978]{background:var(--bg-surface);border-bottom:1px solid var(--border-color);box-sizing:border-box;height:48px;padding:8px 16px;position:sticky;top:0;z-index:50}.gantt-top-bar[data-v-caeda978],.zoom-controls[data-v-caeda978]{align-items:center;display:flex}.zoom-controls[data-v-caeda978]{gap:4px}.zoom-controls button[data-v-caeda978]{background:#fff;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;padding:4px 12px}.zoom-controls button.active[data-v-caeda978]{background:var(--primary);border-color:var(--primary);color:#fff}.view-filters-panel[data-v-caeda978]{background:#fff;border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:8px;left:0;margin-top:4px;min-width:150px;padding:12px;position:absolute;top:100%;z-index:100}.view-filters-panel label[data-v-caeda978]{align-items:center;cursor:pointer;display:flex;font-size:.85rem;gap:8px}.timeline-header-scroll[data-v-caeda978]{background:var(--bg-surface);position:sticky;top:48px;z-index:40}.timeline-header[data-v-caeda978]{background:#f1f5f9;border-bottom:1px solid var(--border-color);height:48px;position:relative}.timeline-tier[data-v-caeda978]{left:0;position:absolute;width:100%}.top-tier[data-v-caeda978]{border-bottom:1px solid var(--border-color);height:24px;top:0}.bottom-tier[data-v-caeda978]{height:24px;top:24px}.text-sat[data-v-caeda978]{color:#3b82f6!important;font-weight:500}.text-sun[data-v-caeda978]{color:#ef4444!important;font-weight:500}.grid-bg[data-v-caeda978]{bottom:0;pointer-events:none;z-index:0}.grid-bg[data-v-caeda978],.time-cell[data-v-caeda978]{position:absolute;top:0}.time-cell[data-v-caeda978]{align-items:center;background:var(--bg-light);border-left:1px solid var(--border-color);box-sizing:border-box;color:var(--text-muted);display:flex;font-size:.75rem;height:100%;justify-content:center;line-height:1.2;text-align:center;white-space:nowrap}.cell-boundary[data-v-caeda978]{border-left:2px solid #cbd5e1!important}.top-cell[data-v-caeda978]{background:#e2e8f0;font-weight:600}.timeline-body[data-v-caeda978]{min-height:calc(100% - 96px);position:relative;z-index:1}.grid-line[data-v-caeda978]{background:var(--border-color);bottom:0;position:absolute;top:0;width:1px;z-index:0}.grid-line-boundary[data-v-caeda978]{background:#cbd5e1;width:2px}.data-date-line[data-v-caeda978]{background-color:#ef4444;pointer-events:auto;width:2px;z-index:6}.data-date-line[data-v-caeda978],.data-date-line[data-v-caeda978]:before{bottom:0;cursor:ew-resize;position:absolute;top:0}.data-date-line[data-v-caeda978]:before{content:"";left:-4px;right:-4px}.data-date-header-label[data-v-caeda978]{background:#fca5a5;border-radius:4px;bottom:2px;box-shadow:var(--shadow-sm);color:#7f1d1d;cursor:ew-resize;font-size:.7rem;font-weight:600;padding:2px 6px;position:absolute;transform:translate(-50%);-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:10}.dependency-lines[data-v-caeda978]{height:100%;width:100%;z-index:3}.dependency-lines[data-v-caeda978],.dependency-lines-top[data-v-caeda978]{left:0;pointer-events:none;position:absolute;top:0}.dependency-lines-top[data-v-caeda978]{z-index:10}.gantt-row[data-v-caeda978]{border-bottom:1px solid var(--border-color);height:var(--task-row-height);left:0;pointer-events:none;right:0}.gantt-bar-wrapper[data-v-caeda978],.gantt-row[data-v-caeda978]{align-items:center;display:flex;position:absolute}.gantt-bar-wrapper[data-v-caeda978]{height:28px;padding:4px 0;pointer-events:auto}.gantt-bar[data-v-caeda978]{align-items:center;background:#e0e7ff;border:1px solid var(--primary);border-radius:4px;box-shadow:var(--shadow-sm);cursor:grab;display:flex;flex:1;height:100%;min-width:0;position:relative;transition:box-shadow .2s;z-index:2}.gantt-bar.dragging[data-v-caeda978],.gantt-bar[data-v-caeda978]:active{box-shadow:var(--shadow-md);cursor:grabbing;z-index:10}.progress-fill[data-v-caeda978]{background:var(--primary);border-radius:4px 0 0 4px;height:100%;left:0;opacity:.4;position:absolute;top:0}.bar-label[data-v-caeda978]{color:#111827;font-size:.75rem;font-weight:500;left:8px;pointer-events:none;position:absolute;white-space:nowrap;z-index:2}.resize-handle[data-v-caeda978]{background:#0000001a;cursor:col-resize;height:100%;position:absolute;top:0;width:6px;z-index:5}.handle-left[data-v-caeda978]{border-right:1px solid rgba(0,0,0,.2);left:0}.handle-right[data-v-caeda978]{border-left:1px solid rgba(0,0,0,.2);right:0}.anchor[data-v-caeda978]{background:#fff;border:3px solid #4f46e5;border-radius:50%;cursor:crosshair;height:12px;opacity:0;position:absolute;transition:opacity .2s;width:12px;z-index:10}.gantt-bar-wrapper:hover .anchor[data-v-caeda978]{opacity:1}.anchor-left[data-v-caeda978]{left:-12px}.anchor-right[data-v-caeda978]{right:-12px}.gantt-summary-bar[data-v-caeda978]{align-items:center;background:#34d399;display:flex;position:relative;z-index:2}.gantt-summary-bar[data-v-caeda978],.summary-bar-body[data-v-caeda978]{height:10px;width:100%}.summary-end-bracket[data-v-caeda978],.summary-start-bracket[data-v-caeda978]{border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid #34d399;height:0;position:absolute;top:0;width:0}.summary-start-bracket[data-v-caeda978]{left:-2px;transform:translateY(10px)}.summary-end-bracket[data-v-caeda978]{right:-2px;transform:translateY(10px)}.gantt-summary-bar .bar-label[data-v-caeda978]{color:#065f46;font-weight:600;left:10px;top:-16px}.gantt-milestone[data-v-caeda978]{cursor:grab;height:14px;left:-7px;position:absolute;width:14px;z-index:2}.gantt-milestone.dragging[data-v-caeda978],.gantt-milestone[data-v-caeda978]:active{cursor:grabbing}.diamond[data-v-caeda978]{background:#4f46e5;height:100%;transform:rotate(45deg);width:100%}.milestone-label[data-v-caeda978]{color:#312e81;left:20px;top:-2px}.gantt-bar.is-critical[data-v-caeda978]{background:#fee2e2;border-color:#ef4444}.gantt-bar.is-critical .progress-fill[data-v-caeda978],.gantt-milestone.is-critical .diamond[data-v-caeda978]{background:#ef4444}.searchable-select-container[data-v-94758c9a]{font-family:inherit;position:relative;width:100%}.select-trigger[data-v-94758c9a]{align-items:center;background-color:#fff;border:1px solid var(--border-color,#cbd5e1);border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;min-height:36px;padding:6px 12px;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.select-trigger[data-v-94758c9a]:hover{border-color:#94a3b8}.select-trigger.is-open[data-v-94758c9a]{border-color:var(--primary,#6366f1);box-shadow:0 0 0 3px #6366f11a}.selected-text[data-v-94758c9a]{color:var(--text-dark,#1e293b);font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.placeholder-text[data-v-94758c9a]{color:#94a3b8;font-size:.85rem}.arrow[data-v-94758c9a]{color:#94a3b8;flex-shrink:0;margin-left:8px;transition:transform .2s}.select-trigger.is-open .arrow[data-v-94758c9a]{transform:rotate(180deg)}.dropdown-menu[data-v-94758c9a]{background:#fff;border:1px solid var(--border-color,#cbd5e1);border-radius:6px;box-shadow:0 -4px 15px -3px #0000001a,0 -2px 6px -2px #0000000d;display:flex;flex-direction:column;position:fixed;z-index:9999}.search-box[data-v-94758c9a]{border-bottom:1px solid #f1f5f9;padding:8px;position:relative}.search-icon[data-v-94758c9a]{left:16px;position:absolute;top:50%;transform:translateY(-50%)}.search-box input[data-v-94758c9a]{border:1px solid var(--border-color,#cbd5e1);border-radius:4px;box-sizing:border-box;font-size:.85rem;outline:none;padding:6px 12px 6px 32px;transition:border-color .2s;width:100%}.search-box input[data-v-94758c9a]:focus{border-color:var(--primary,#6366f1)}.options-list[data-v-94758c9a]{list-style:none;margin:0;max-height:220px;overflow-y:auto;padding:4px 0}.options-list li[data-v-94758c9a]{align-items:center;color:var(--text-dark,#1e293b);cursor:pointer;display:flex;font-size:.85rem;padding:8px 12px}.options-list li.is-focused[data-v-94758c9a],.options-list li[data-v-94758c9a]:hover{background-color:#f8fafc}.options-list li.is-selected[data-v-94758c9a]{background-color:#e0e7ff;color:#4338ca;font-weight:500}.no-options[data-v-94758c9a]{color:#94a3b8;pointer-events:none;text-align:center}.task-details-panel[data-v-09d8a468]{background:#fff;border-top:1px solid transparent;display:grid;grid-template-rows:0fr;position:relative;transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1);z-index:100}.task-details-panel.open[data-v-09d8a468]{border-top:1px solid var(--border-color);box-shadow:0 -4px 12px #0000000d;grid-template-rows:1fr}.panel-content-wrapper[data-v-09d8a468]{overflow:hidden}.panel-resize-handle[data-v-09d8a468]{cursor:ns-resize;height:8px;left:0;position:absolute;right:0;top:-4px;z-index:101}.panel-resize-handle[data-v-09d8a468]:hover{background:#818cf833}.panel-toggle-tab[data-v-09d8a468]{align-items:center;background:#eef2ff;border:1px solid #c7d2fe;border-bottom:none;border-radius:8px 8px 0 0;box-shadow:0 -4px 6px #0000000d;color:var(--primary);cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:8px;height:32px;padding:0 20px;position:absolute;top:-32px;transform:translate(-50%)}.panel-toggle-tab[data-v-09d8a468]:hover{background:#e0e7ff;border-color:#a5b4fc}.panel-content[data-v-09d8a468]{display:flex;flex-direction:column}.tabs[data-v-09d8a468]{background:#f8fafc;border-bottom:1px solid var(--border-color);display:flex}.tab-btn[data-v-09d8a468]{background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 16px;transition:all .2s}.tab-btn.active[data-v-09d8a468],.tab-btn[data-v-09d8a468]:hover{color:var(--primary)}.tab-btn.active[data-v-09d8a468]{background:#fff;border-bottom-color:var(--primary)}.tab-content[data-v-09d8a468]{flex:1;overflow-y:auto;padding:16px}.form-grid[data-v-09d8a468]{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.rel-section[data-v-09d8a468],.relations-tab[data-v-09d8a468]{display:flex;flex-direction:column}.rel-section[data-v-09d8a468]{gap:8px}.rel-header[data-v-09d8a468]{align-items:center;display:flex;justify-content:space-between}.rel-header h4[data-v-09d8a468]{color:var(--text-dark);font-size:.95rem;margin:0}.rel-actions[data-v-09d8a468]{align-items:center;display:flex;gap:12px}.rel-select[data-v-09d8a468]{appearance:none;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%2394a3b8%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-position:right 12px top 50%;background-repeat:no-repeat;background-size:10px auto;border:1px solid var(--border-color);border-radius:6px;box-shadow:0 1px 2px #0000000d;font-size:.85rem;padding:8px 12px;transition:all .2s ease;width:240px}.rel-select[data-v-09d8a468]:focus,.type-select[data-v-09d8a468]:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6366f133;outline:none}.rel-select[data-v-09d8a468]:hover,.type-select[data-v-09d8a468]:hover{border-color:#94a3b8}.rel-table-wrapper[data-v-09d8a468]{border:1px solid var(--border-color);border-radius:8px;box-shadow:0 1px 3px #0000000d;overflow:hidden}.rel-table[data-v-09d8a468]{background:#fff;border-collapse:collapse;font-size:.85rem;width:100%}.rel-table td[data-v-09d8a468],.rel-table th[data-v-09d8a468]{border-bottom:1px solid var(--border-color);padding:12px 16px;text-align:left;vertical-align:middle}.rel-table tbody tr[data-v-09d8a468]{transition:background-color .15s ease}.rel-table tbody tr[data-v-09d8a468]:hover{background-color:#f8fafc}.rel-table tbody tr:last-child td[data-v-09d8a468]{border-bottom:none}.rel-table th[data-v-09d8a468]{background:#f8fafc;color:var(--text-dark);font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.type-select[data-v-09d8a468]{appearance:none;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%2394a3b8%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-position:right 10px top 50%;background-repeat:no-repeat;background-size:10px auto;border:1px solid var(--border-color);border-radius:6px;font-size:.85rem;padding:6px 12px;transition:all .2s ease;width:160px}.text-center[data-v-09d8a468]{text-align:center}.rel-task-link[data-v-09d8a468]{color:var(--primary);cursor:pointer;font-weight:500;text-decoration:none;transition:color .15s}.rel-task-link[data-v-09d8a468]:hover{color:var(--primary-hover);text-decoration:underline}.remove-btn[data-v-09d8a468]{align-items:center;background:#fee2e2;border:none;border-radius:50%;color:#ef4444;cursor:pointer;display:inline-flex;font-size:1.1rem;height:24px;justify-content:center;transition:all .2s;width:24px}.remove-btn[data-v-09d8a468]:hover{background:#fca5a5;color:#991b1b}.form-group[data-v-09d8a468]{display:flex;flex-direction:column;gap:4px}.form-group label[data-v-09d8a468]{color:var(--text-muted);font-size:.75rem;font-weight:600}.form-group input[data-v-09d8a468],.form-group select[data-v-09d8a468]{border:1px solid var(--border-color);border-radius:4px;font-size:.85rem;padding:6px 10px}.form-group input[data-v-09d8a468]:disabled{background:#f1f5f9}.relations-tab[data-v-09d8a468]{display:grid;gap:24px;grid-template-columns:1fr 1fr}.rel-section h4[data-v-09d8a468]{border-bottom:1px solid var(--border-color);color:var(--text-color);font-size:.85rem;margin:0 0 12px;padding-bottom:4px}.rel-section ul[data-v-09d8a468]{font-size:.85rem;list-style:none;margin:0;padding:0}.rel-section li[data-v-09d8a468]{color:var(--text-color);padding:6px 0}.empty-text[data-v-09d8a468]{color:var(--text-muted);font-size:.85rem;font-style:italic}.notes-tab[data-v-09d8a468]{height:100%}.notes-tab textarea[data-v-09d8a468]{border:1px solid var(--border-color);border-radius:4px;font-family:inherit;font-size:.85rem;height:100%;min-height:150px;padding:12px;resize:none;width:100%}.app-main{flex-direction:column}.app-main,.gantt-wrapper{display:flex;flex:1;overflow:hidden;position:relative}
