.integrated-gantt{background:var(--bg-primary);flex-direction:column;height:100%;display:flex;overflow:hidden}.integrated-gantt__controls{border-bottom:1px solid var(--border-color);background:var(--color-bg-secondary);flex-shrink:0;align-items:center;gap:1rem;padding:.5rem .75rem;display:flex}.integrated-gantt__bulk-actions{align-items:center;gap:.5rem;margin-left:auto;display:flex}.integrated-gantt__selection-count{color:var(--text-secondary);margin-right:.5rem;font-size:.8125rem}.integrated-gantt__bulk-btn{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;border-radius:.25rem;padding:.25rem .625rem;font-size:.75rem;transition:background-color .15s,border-color .15s}.integrated-gantt__bulk-btn:hover{background:var(--bg-hover);border-color:var(--primary-color)}.gantt-phases-toggle{color:var(--color-text-muted);background:var(--color-bg-secondary);border:1px solid var(--color-border-subtle);cursor:pointer;white-space:nowrap;border-radius:.375rem;align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.6875rem;font-weight:500;transition:background-color .15s,border-color .15s,color .15s;display:flex}.gantt-phases-toggle:hover{background:var(--color-bg-tertiary);border-color:var(--color-border);color:var(--color-text-secondary)}.gantt-phases-toggle--active{background:color-mix(in srgb, var(--color-accent-primary,#14b8a6) 10%, var(--color-bg-secondary));border-color:var(--color-accent-primary,#14b8a6);color:var(--color-accent-primary,#14b8a6)}.integrated-gantt__export-btn{border:1px solid var(--color-accent-primary,#3b82f6);background:var(--color-accent-primary,#3b82f6);color:#fff;cursor:pointer;border-radius:.25rem;margin-left:auto;padding:.375rem .875rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,border-color .15s,transform .15s}.integrated-gantt__export-btn:hover{background:var(--color-accent-hover,#2563eb);border-color:var(--color-accent-hover,#2563eb)}.integrated-gantt__export-btn:active{transform:translateY(1px)}.integrated-gantt__export-btn+.integrated-gantt__export-btn{margin-left:0}.integrated-gantt__shortcuts-btn{border:1px solid var(--border-color,#d1d5db);width:1.75rem;height:1.75rem;color:var(--color-text-secondary,#6b7280);cursor:pointer;background:0 0;border-radius:.375rem;padding:0;font-size:.8125rem;font-weight:600;line-height:1;transition:border-color .15s,color .15s}.integrated-gantt__shortcuts-btn:hover{border-color:var(--color-text-secondary,#6b7280);color:var(--color-text-primary,#1e293b)}.integrated-gantt__content{flex:1;display:flex;position:relative;overflow:hidden}.integrated-gantt__chart{flex:1;overflow:hidden}.integrated-gantt__resize-handle{cursor:col-resize;background:0 0;flex-shrink:0;width:.25rem;transition:background .15s;position:relative}.integrated-gantt__resize-handle:before{content:"";position:absolute;inset:0 -.25rem}.integrated-gantt__resize-handle:hover,.integrated-gantt__resize-handle:active{background:var(--color-accent-primary,#06b6d4)}.fixed-task-column{border-right:1px solid var(--border-color);background:var(--color-bg-secondary);flex-direction:column;flex-shrink:0;display:flex}.fixed-task-column__header{background:var(--color-bg-secondary);color:var(--text-primary);box-sizing:border-box;border-bottom:1.5px solid #d1d5db;justify-content:flex-start;align-items:flex-end;padding:0 .75rem .625rem;font-size:.8125rem;font-weight:600;display:flex}[data-color-mode=dark] .fixed-task-column__header{border-bottom-color:#374151}.fixed-task-column__header-text{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-size:.75rem}.fixed-task-column__header-add-btn{width:1.5rem;height:1.5rem;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.25rem;justify-content:center;align-items:center;margin-left:auto;padding:0;transition:background-color .15s,border-color .15s,color .15s;display:flex}.fixed-task-column__header-add-btn:hover{background:var(--bg-hover);border-color:var(--border-color);color:var(--primary-color)}.fixed-task-column__header-add-btn:active{transform:scale(.95)}[data-color-mode=dark] .fixed-task-column__header-add-btn:hover{color:#60a5fa;background:#374151;border-color:#4b5563}.fixed-task-column__header-add-group{color:var(--text-secondary);margin-left:auto}.fixed-task-column__header-add-group .fixed-task-column__header-add-btn{margin-left:0}.fixed-task-column__header-add-group .add-task-menu__caret:hover,.fixed-task-column__header-add-group .add-task-menu__caret[aria-expanded=true]{color:var(--primary-color)}[data-color-mode=dark] .fixed-task-column__header-add-group .add-task-menu__caret:hover,[data-color-mode=dark] .fixed-task-column__header-add-group .add-task-menu__caret[aria-expanded=true]{color:#60a5fa;background:#374151;border-color:#4b5563}.fixed-task-column__header>.fixed-task-column__header-btn{margin-left:.25rem}.fixed-task-column__header-btn{width:1.375rem;height:1.375rem;color:var(--text-tertiary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.1875rem;justify-content:center;align-items:center;padding:0;transition:background-color .15s,border-color .15s,color .15s;display:flex}.fixed-task-column__header-btn:hover{background:var(--bg-hover);border-color:var(--border-color);color:var(--text-secondary)}.fixed-task-column__header-btn:active{transform:scale(.95)}.fixed-task-column__header-btn--active{color:var(--color-accent-primary)}.fixed-task-column__cf-option:hover{background:var(--color-bg-secondary)}[data-color-mode=dark] .fixed-task-column__header-btn:hover{color:#9ca3af;background:#374151;border-color:#4b5563}.fixed-task-column__list{position:relative;overflow:clip auto}.fixed-task-column__list::-webkit-scrollbar{width:.375rem}.fixed-task-column__list::-webkit-scrollbar-track{background:0 0}.fixed-task-column__list::-webkit-scrollbar-thumb{background:var(--border-color,#8080804d);border-radius:.1875rem}.fixed-task-column__list::-webkit-scrollbar-thumb:hover{background:var(--text-secondary,#80808080)}.fixed-task-column__list-inner{will-change:transform;padding-bottom:10rem}.fixed-task-column__empty{color:var(--color-text-secondary,#6b7280);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:3rem 1rem;display:flex}.fixed-task-column__empty-icon{opacity:.6;margin-bottom:.5rem}.fixed-task-column__empty-hint{color:var(--color-text-primary,#e2e8f0);margin:0;font-size:1rem;font-weight:600}.fixed-task-column__empty-sub{color:var(--color-text-secondary,#6b7280);margin:0;font-size:.8125rem}.fixed-task-column__empty-cta{border:1px dashed var(--border-color,#d1d5db);color:var(--color-accent-primary);cursor:pointer;background:0 0;border-radius:.375rem;padding:.375rem .875rem;font-size:.8125rem;transition:border-color .15s,background-color .15s}.fixed-task-column__empty-cta:hover{border-color:var(--color-accent-primary);background-color:color-mix(in srgb, var(--color-accent-primary) 5%, transparent)}.fixed-task-column__row{cursor:pointer;border-bottom:1px solid var(--border-color-light);-webkit-user-select:none;user-select:none;align-items:center;gap:.25rem;padding:0 .75rem 0 .375rem;transition:background-color .15s,box-shadow .15s;display:flex;position:relative}.fixed-task-column__row:hover{background:var(--row-hover-bg,#06b6d414);box-shadow:inset 3px 0 0 var(--color-accent-primary,#06b6d4)}.fixed-task-column__row:hover .fixed-task-column__task-name{color:var(--color-accent-primary,#06b6d4)}.fixed-task-column__row--selected{background:var(--selection-bg)}.fixed-task-column__row--selected:hover{background:var(--selection-bg-hover)}.fixed-task-column__row--editing{background:var(--bg-primary)}.fixed-task-column__row--manual{cursor:grab}.fixed-task-column__row--dragging{opacity:.5;cursor:grabbing}.fixed-task-column__grip{width:12px;color:var(--color-text-tertiary,#94a3b8);opacity:0;cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;font-size:.625rem;line-height:1;transition:opacity .15s}.fixed-task-column__row:hover .fixed-task-column__grip{opacity:.6}.fixed-task-column__row--dragging .fixed-task-column__grip{opacity:1;cursor:grabbing}.fixed-task-column__row--nest-target{border-left:4px solid var(--color-accent-primary,#06b6d4);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-accent-primary,#06b6d4) 40%, transparent), 0 2px 6px color-mix(in srgb, var(--color-accent-primary,#06b6d4) 20%, transparent);cursor:copy;transition:background-color .1s,border-color .1s,box-shadow .1s;background:color-mix(in srgb, var(--color-accent-primary,#06b6d4) 18%, transparent)!important}[data-color-mode=dark] .fixed-task-column__row--nest-target{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-accent-primary,#06b6d4) 50%, transparent), 0 2px 8px color-mix(in srgb, var(--color-accent-primary,#06b6d4) 30%, transparent);background:color-mix(in srgb, var(--color-accent-primary,#06b6d4) 22%, transparent)!important}.fixed-task-column__row--drop-candidate{box-shadow:inset 0 0 0 1.5px var(--color-accent-primary,#06b6d4), 0 0 10px color-mix(in srgb, var(--color-accent-primary,#06b6d4) 25%, transparent);transition:box-shadow .2s,background-color .2s;background:color-mix(in srgb, var(--color-accent-primary,#06b6d4) 6%, transparent)!important}[data-color-mode=dark] .fixed-task-column__row--drop-candidate{box-shadow:inset 0 0 0 1.5px var(--color-accent-primary,#06b6d4), 0 0 12px color-mix(in srgb, var(--color-accent-primary,#06b6d4) 35%, transparent);background:color-mix(in srgb, var(--color-accent-primary,#06b6d4) 10%, transparent)!important}.fixed-task-column__root-drop-zone{background:var(--color-bg-secondary,#f8fafc);border-right:2px dashed var(--color-text-muted,#6b7280);width:1.5rem;color:var(--color-text-muted,#6b7280);letter-spacing:.5px;text-transform:uppercase;writing-mode:vertical-lr;-webkit-user-select:none;user-select:none;cursor:default;z-index:10;justify-content:center;align-items:center;font-size:.6875rem;font-weight:600;transition:background-color .15s,border-color .15s,color .15s;display:none;position:absolute;top:0;bottom:0;left:0}.fixed-task-column__list--dragging-child .fixed-task-column__root-drop-zone{display:flex}.fixed-task-column__list--dragging-child .fixed-task-column__root-drop-zone--over{background:color-mix(in srgb, var(--color-accent-primary,#06b6d4) 18%, var(--color-bg-secondary,#f8fafc));border-right:2px solid var(--color-accent-primary,#06b6d4);color:var(--color-accent-primary,#06b6d4)}.fixed-task-column__row--reorder-above,.fixed-task-column__row--reorder-below{position:relative}.fixed-task-column__row--reorder-above:before{content:"";background:var(--color-accent-primary,#06b6d4);z-index:10;pointer-events:none;border-radius:.0625rem;height:.125rem;position:absolute;top:-.0625rem;left:.5rem;right:.5rem}.fixed-task-column__row--reorder-above:after{content:"";background:var(--color-accent-primary,#06b6d4);z-index:10;pointer-events:none;border-radius:50%;width:.375rem;height:.375rem;position:absolute;top:-.25rem;left:.25rem}.fixed-task-column__row--reorder-below:before{content:"";background:var(--color-accent-primary,#06b6d4);z-index:10;pointer-events:none;border-radius:.0625rem;height:.125rem;position:absolute;bottom:-.0625rem;left:.5rem;right:.5rem}.fixed-task-column__row--reorder-below:after{content:"";background:var(--color-accent-primary,#06b6d4);z-index:10;pointer-events:none;border-radius:50%;width:.375rem;height:.375rem;position:absolute;bottom:-.25rem;left:.25rem}.fixed-task-column__edit-input{border:1px solid var(--primary-color);background:var(--bg-primary);width:100%;color:var(--text-primary);border-radius:.1875rem;outline:none;flex:1;padding:.125rem .375rem;font-family:inherit;font-size:.8125rem}.fixed-task-column__edit-input:focus{box-shadow:0 0 0 2px #3b82f633}.fixed-task-column__task-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;padding-right:2.5rem;font-size:.8125rem;transition:color .15s;overflow:hidden}.fixed-task-column__row:hover .fixed-task-column__task-name{padding-right:5.9rem}.fixed-task-column__task-name--editable{cursor:text;background:#f9731626;border-radius:.1875rem;margin:-.125rem -.3125rem;padding:.0625rem .25rem;animation:.3s ease-out editableFlash}@keyframes editableFlash{0%{background:#f973164d}to{background:#f9731626}}.fixed-task-column__task-name--editable:hover{text-underline-offset:2px;background:#f9731640;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.fixed-task-column__indent{flex-shrink:0;display:inline-block}.fixed-task-column__expand-toggle{width:1.75rem;height:1.75rem;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;margin-right:0;padding:0;font-size:1rem;transition:color .15s,background-color .15s;display:inline-flex}.fixed-task-column__expand-toggle:hover{color:var(--text-primary);background:var(--bg-hover,#0000000d)}.fixed-task-column__expand-placeholder{flex-shrink:0;width:1.75rem;display:inline-block}.fixed-task-column__milestone-icon{pointer-events:none;flex-shrink:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;margin-right:0;padding:0;font-size:.75rem;display:inline-flex}.fixed-task-column__task-name--parent{text-transform:uppercase;letter-spacing:.08em;font-weight:600}.fixed-task-column__assignee{z-index:4;pointer-events:none;display:inline-flex;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.fixed-task-column__assignee .assignee-avatar{pointer-events:auto}.fixed-task-column__add-btn{width:100%;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:flex-start;align-items:center;margin-top:.25rem;padding:.5rem .75rem;font-size:.8125rem;transition:background-color .15s,color .15s;display:flex}.fixed-task-column__add-btn:hover{background:var(--bg-hover);color:var(--primary-color)}.fixed-task-column__actions{align-items:center;gap:.25rem;display:none;position:absolute;top:50%;right:2.25rem;transform:translateY(-50%)}.fixed-task-column__row:hover .fixed-task-column__actions{display:flex}.fixed-task-column__action-btn{cursor:pointer;background:var(--color-bg-secondary);width:1.375rem;height:1.375rem;color:var(--text-secondary);border:none;border-radius:.25rem;justify-content:center;align-items:center;padding:0;font-size:.8125rem;transition:background-color .15s,color .15s;display:flex}.fixed-task-column__action-btn--edit:hover{color:#3b82f6;background:#3b82f626}.fixed-task-column__action-btn--delete:hover{color:#ef4444;background:#ef444426}[data-color-mode=light] .fixed-task-column__action-btn{background:#0000000d}.sort-mode-selector{align-items:center;gap:.5rem;display:flex}.sort-mode-selector__label{color:var(--text-secondary);font-size:.8125rem}.sort-mode-selector__select{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem}.sort-mode-selector__select:focus{border-color:var(--primary-color);outline:none}.sort-mode-selector__select option{background:var(--bg-primary);color:var(--text-primary);padding:.25rem .5rem}[data-color-mode=dark] .sort-mode-selector__select,[data-color-mode=dark] .sort-mode-selector__select option{color:#f9fafb;background-color:#1f2937}.schedule-type-selector{cursor:pointer;border-radius:.25rem;align-items:center;gap:.25rem;padding:.25rem .5rem;transition:background-color .2s;display:inline-flex}.schedule-type-selector:hover{background:var(--color-bg-tertiary,#ffffff0d)}.schedule-type-selector__label{color:var(--text-muted,#888);font-size:.875rem;font-weight:400}.schedule-type-selector__select{color:var(--text-muted,#888);cursor:pointer;appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M3 4.5L6 7.5L9 4.5'/%3E%3C/svg%3E") 100% no-repeat;border:none;padding:0 1rem 0 0;font-size:.875rem}.schedule-type-selector__select:focus{outline:none}.schedule-type-selector__select option{background:var(--bg-primary,#fff);color:var(--text-primary,#1f2937);padding:.25rem .5rem}[data-color-mode=light] .schedule-type-selector__select option{color:#1f2937;background-color:#fff}[data-color-mode=dark] .schedule-type-selector__select{color:var(--text-muted,#888)}[data-color-mode=dark] .schedule-type-selector__select option{color:#f9fafb;background-color:#1f2937}.delete-task-modal__overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.delete-task-modal{background:var(--modal-bg,white);border-radius:.75rem;width:100%;max-width:26.25rem;padding:1.5rem;box-shadow:0 20px 40px #0003}[data-color-mode=dark] .delete-task-modal{background:#1f2937;box-shadow:0 20px 40px #00000080}.delete-task-modal__title{color:var(--text-color,#1f2937);margin:0 0 1rem;font-size:1.125rem;font-weight:600}[data-color-mode=dark] .delete-task-modal__title{color:#f3f4f6}.delete-task-modal__message{color:var(--text-muted,#6b7280);margin:0 0 1rem;font-size:.875rem;line-height:1.5}[data-color-mode=dark] .delete-task-modal__message{color:#9ca3af}.delete-task-modal__deps{max-height:12.5rem;margin:0 0 1.25rem;padding:0;list-style:none;overflow-y:auto}.delete-task-modal__dep-item{background:var(--bg-subtle,#f3f4f6);color:var(--text-color,#1f2937);border-radius:.375rem;align-items:center;gap:.5rem;margin-bottom:.375rem;padding:.5rem .625rem;font-size:.8125rem;display:flex}[data-color-mode=dark] .delete-task-modal__dep-item{color:#f3f4f6;background:#374151}.delete-task-modal__dep-from,.delete-task-modal__dep-to{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.delete-task-modal__dep-arrow{color:var(--text-muted,#6b7280);flex-shrink:0}[data-color-mode=dark] .delete-task-modal__dep-arrow{color:#9ca3af}.delete-task-modal__dep-type{color:#fff;border-radius:.25rem;flex-shrink:0;padding:.1875rem .5rem;font-size:.6875rem;font-weight:600}.delete-task-modal__dep-type--FS{background:#2563eb}.delete-task-modal__dep-type--SS{background:#16a34a}.delete-task-modal__dep-type--FF{background:#ea580c}.delete-task-modal__dep-type--SF{background:#9333ea}.delete-task-modal__actions{justify-content:flex-end;gap:.75rem;margin-top:1.25rem;display:flex}.delete-task-modal__btn{cursor:pointer;border-radius:.375rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;transition:background-color .15s,border-color .15s}.delete-task-modal__btn--cancel{background:var(--bg-subtle,#f3f4f6);border:1px solid var(--border-color,#d1d5db);color:var(--text-color,#374151)}[data-color-mode=dark] .delete-task-modal__btn--cancel{color:#f3f4f6;background:#374151;border-color:#4b5563}.delete-task-modal__btn--cancel:hover{background:var(--bg-hover,#e5e7eb)}[data-color-mode=dark] .delete-task-modal__btn--cancel:hover{background:#4b5563}.delete-task-modal__btn--delete{color:#fff;background:#ef4444;border:1px solid #ef4444}.delete-task-modal__btn--delete:hover{background:#dc2626;border-color:#dc2626}.bulk-edit-modal__overlay{z-index:1000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.bulk-edit-modal{background:var(--color-bg-primary,#fff);border:1px solid var(--color-border,#e5e7eb);border-radius:.5rem;min-width:12.5rem;max-width:90vw;padding:1.25rem;animation:.15s bulkEditFadeIn;box-shadow:0 4px 12px #0000001a}@keyframes bulkEditFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}[data-color-mode=dark] .bulk-edit-modal{background:var(--color-bg-secondary);border-color:var(--border-color,#374151);box-shadow:0 4px 12px #0000004d}.bulk-edit-modal__title{color:var(--color-text-primary);margin:0 0 1rem;font-size:1rem;font-weight:600}.bulk-edit-modal__field{margin-bottom:1rem}.bulk-edit-modal__field label{color:var(--color-text-secondary);margin-bottom:.375rem;font-size:.8125rem;display:block}.bulk-edit-modal__cf-row{color:var(--color-text-secondary);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.8125rem;display:flex}.bulk-edit-modal__cf-row>span{flex:none}.bulk-edit-modal__input{border:1px solid var(--color-border,#e5e7eb);background:var(--color-bg-primary,#fff);width:100%;color:var(--color-text-primary,#1f2937);border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.bulk-edit-modal__input:hover{border-color:#00000026}.bulk-edit-modal__input:focus{border-color:var(--color-accent-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px #3b82f626}[data-color-mode=dark] .bulk-edit-modal__input{border-color:var(--border-color,#374151);color:var(--text-primary,#f9fafb);background:#ffffff0a}[data-color-mode=dark] .bulk-edit-modal__input:hover{border-color:#ffffff26}[data-color-mode=dark] .bulk-edit-modal__input:focus{border-color:var(--color-accent-primary,#3b82f6);box-shadow:0 0 0 3px #3b82f626}.bulk-edit-modal__input[type=number],.bulk-edit-modal__input[type=date]{text-align:center;width:auto;max-width:9.375rem}.bulk-edit-modal--centered{text-align:center;flex-direction:column;align-items:center;min-width:10rem;padding:1rem 1.5rem;display:flex}.bulk-edit-modal--centered .bulk-edit-modal__title{margin-bottom:.75rem}.bulk-edit-modal__field--centered{flex-direction:row;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-bottom:0;display:flex}.bulk-edit-modal__unit{color:var(--color-text-secondary);font-size:.875rem}.bulk-edit-modal__input option{background:var(--color-bg-tertiary);color:var(--color-text-primary);padding:.5rem}.bulk-edit-modal__input[type=date]{color-scheme:var(--input-color-scheme,light);padding-right:2.25rem;position:relative}.bulk-edit-modal__input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:0;z-index:1;width:1.25rem;height:1.25rem;position:absolute;right:.5rem}.bulk-edit-modal__field--centered{position:relative}.bulk-edit-modal__field--centered:has(input[type=date]):after{content:"";pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%238899a6' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;width:1.125rem;height:1.125rem;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}:root[data-color-mode=light] .bulk-edit-modal__field--centered:has(input[type=date]):after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23475569' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z'/%3E%3C/svg%3E")}.bulk-edit-modal__priority-row{gap:.4rem;display:flex}.bulk-edit-modal__priority-option{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius-md,.375rem);background:var(--color-bg-secondary);color:var(--color-text-primary);cursor:pointer;padding:.35rem .75rem;font-size:.85rem;transition:border-color .15s}.bulk-edit-modal__priority-option:hover{border-color:var(--color-accent-primary)}.bulk-edit-modal__priority-option--selected{border-color:var(--color-accent-primary);background:color-mix(in srgb, var(--color-accent-primary,#06b6d4) 15%, var(--color-bg-primary));font-weight:600}.bulk-edit-modal__color-grid{grid-template-columns:repeat(5,1fr);gap:.5rem;display:grid}.bulk-edit-modal__color-option{border:2px solid var(--color-border);background:var(--color-bg-tertiary);cursor:pointer;border-radius:.375rem;width:2.25rem;height:2.25rem;padding:.25rem;transition:border-color .15s,transform .15s,box-shadow .15s}.bulk-edit-modal__color-option:hover{border-color:var(--color-text-secondary);transform:scale(1.05)}.bulk-edit-modal__color-option--selected{border-color:var(--color-accent-primary);box-shadow:0 0 0 2px #06b6d44d}.bulk-edit-modal__color-swatch{border-radius:.1875rem;width:100%;height:100%;display:block}.bulk-edit-modal__color-swatch--default{background:linear-gradient(135deg, var(--color-bg-elevated) 45%, var(--color-text-muted) 45%, var(--color-text-muted) 55%, var(--color-bg-elevated) 55%)}.bulk-edit-modal__actions{justify-content:flex-end;gap:.5rem;margin-top:1.25rem;display:flex}.bulk-edit-modal__button{cursor:pointer;border-radius:.25rem;padding:.5rem 1rem;font-size:.875rem;transition:background-color .15s}.bulk-edit-modal__button--cancel{border:1px solid var(--color-border);background:var(--color-bg-tertiary);color:var(--color-text-primary)}.bulk-edit-modal__button--cancel:hover{background:var(--color-bg-elevated)}.bulk-edit-modal__button--apply{background:var(--color-accent-primary);color:var(--color-on-accent);border:none}.bulk-edit-modal__button--apply:hover{background:var(--color-accent-hover)}:root{--selection-bg:#3b82f626;--selection-bg-hover:#3b82f640;--border-color-light:#0000000d}[data-color-mode=dark]{--selection-bg:#60a5fa33;--selection-bg-hover:#60a5fa4d;--border-color-light:#ffffff0d}.fixed-task-column__action-buttons{flex-shrink:0;align-items:center;gap:.125rem;margin-left:auto;margin-right:1.75rem;display:none}.fixed-task-column__row:hover .fixed-task-column__action-buttons{display:flex}.fixed-task-column__action-button{cursor:pointer;opacity:.7;background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;width:1.375rem;height:1.375rem;padding:0;font-size:.75rem;transition:opacity .15s,background-color .15s,transform .15s;display:flex}.fixed-task-column__action-button:not(.fixed-task-column__action-button--delete){color:var(--color-accent-primary,#06b6d4)}.fixed-task-column__action-button:hover{opacity:1;background:var(--color-bg-tertiary);transform:scale(1.1)}.fixed-task-column__action-button--delete{color:#ef4444}.fixed-task-column__action-button--delete:hover{background:#ef444426}.fixed-task-column__delete-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.fixed-task-column__delete-dialog{background:var(--color-bg-secondary);max-width:22.5rem;box-shadow:var(--shadow-lg);border-radius:.5rem;padding:1.5rem}.fixed-task-column__delete-dialog h4{color:var(--color-text-primary);margin:0 0 .75rem}.fixed-task-column__delete-dialog p{color:var(--color-text-secondary);margin:0 0 1rem;font-size:.875rem;line-height:1.5}.fixed-task-column__delete-details{margin:0 0 1rem}.fixed-task-column__delete-details p{color:var(--color-text-secondary);margin:0 0 .5rem}.fixed-task-column__delete-details ul{margin:0;padding-left:1.25rem;list-style-type:disc}.fixed-task-column__delete-details li{color:var(--color-text-secondary);margin-bottom:.25rem;font-size:.875rem}.fixed-task-column__delete-details li strong{color:#ef4444;font-weight:600}.fixed-task-column__dep-section{margin-bottom:.75rem}.fixed-task-column__dep-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.75rem;font-weight:600;display:block}.fixed-task-column__dep-type{background:var(--color-bg-tertiary);color:var(--color-accent-primary,#06b6d4);border:1px solid var(--color-border);border-radius:.1875rem;margin-right:.375rem;padding:.0625rem .25rem;font-size:.7rem;font-weight:600;display:inline-block}.fixed-task-column__dep-lag{color:var(--color-text-muted);margin-left:.25rem;font-size:.75rem}.fixed-task-column__delete-undo-note{color:var(--color-text-muted);margin-bottom:1rem;font-size:.75rem}.fixed-task-column__delete-actions{justify-content:flex-end;gap:.75rem;display:flex}.fixed-task-column__delete-actions button{cursor:pointer;border-radius:.375rem;padding:.5rem 1rem;font-size:.875rem;transition:background-color .15s}.fixed-task-column__delete-actions button:first-child{background:var(--color-bg-tertiary);border:1px solid var(--color-border);color:var(--color-text-primary)}.fixed-task-column__delete-actions button:first-child:hover{background:var(--color-bg-elevated)}.fixed-task-column__delete-actions .btn-danger{color:#fff;background:#ef4444;border:none}.fixed-task-column__delete-actions .btn-danger:hover{background:#dc2626}.integrated-gantt__context-menu{z-index:1000;background:var(--color-bg-primary,#fff);border:1px solid var(--color-border,#e5e7eb);border-radius:.5rem;min-width:10rem;padding:.25rem;animation:.15s contextMenuFadeIn;position:fixed;box-shadow:0 4px 12px #0000001a}@keyframes contextMenuFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.integrated-gantt__context-menu-item{width:100%;color:var(--color-text-primary,#1f2937);text-align:start;cursor:pointer;background:0 0;border:none;border-radius:.375rem;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;transition:background-color .15s;display:flex}.integrated-gantt__context-menu-item:hover{background:#06b6d41a}.integrated-gantt__context-menu-icon{width:1.125rem;height:1.125rem;color:var(--color-accent-primary,#06b6d4);justify-content:center;align-items:center;font-size:1rem;font-weight:600;display:flex}.integrated-gantt__context-menu-label{flex:1}.integrated-gantt__context-menu-shortcut{color:var(--color-text-tertiary,#9ca3af);margin-left:auto;font-size:.6875rem;font-weight:400}.integrated-gantt__context-menu-separator{background:var(--color-border,#e5e7eb);height:.0625rem;margin:.25rem 0}.integrated-gantt__context-menu-section-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary,#9ca3af);-webkit-user-select:none;user-select:none;padding:.25rem .75rem .125rem;font-size:.7rem;font-weight:600}.integrated-gantt__context-menu-label--truncate{text-overflow:ellipsis;white-space:nowrap;max-width:8.75rem;overflow:hidden}.integrated-gantt__context-menu-item--disabled,.integrated-gantt__context-menu-item:disabled{opacity:.4;cursor:default;pointer-events:none}.integrated-gantt__context-menu-item--danger{color:#dc2626}.integrated-gantt__context-menu-item--danger:hover{background:#ef44441a}.integrated-gantt__context-menu-icon--danger{color:#ef4444}[data-color-mode=dark] .integrated-gantt__context-menu{background:var(--color-bg-secondary);border-color:var(--border-color,#374151);box-shadow:0 4px 12px #0000004d}[data-color-mode=dark] .integrated-gantt__context-menu-item{color:var(--text-primary,#f9fafb)}[data-color-mode=dark] .integrated-gantt__context-menu-item:hover{background:#06b6d426}[data-color-mode=dark] .integrated-gantt__context-menu-item--danger{color:#f87171}[data-color-mode=dark] .integrated-gantt__context-menu-item--danger:hover{background:#ef444426}[data-color-mode=dark] .integrated-gantt__context-menu-separator{background:var(--border-color,#374151)}[data-color-mode=dark] .integrated-gantt__context-menu-shortcut{color:var(--color-text-tertiary,#6b7280)}.gantt-task-selection-bar{pointer-events:none;background:var(--color-bg-primary,#fff);border:1px solid var(--color-border,#e5e7eb);z-index:1000;border-radius:.5rem;align-items:center;gap:.5rem;padding:.625rem .875rem;font-size:.8125rem;animation:.15s toolbarFadeIn;display:flex;position:fixed;top:12.5rem;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0000001a}.gantt-task-selection-bar>*{pointer-events:auto}@keyframes toolbarFadeIn{0%{opacity:0;transform:translate(-50%)translateY(-4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.gantt-task-selection-bar__count{color:var(--color-text-secondary,#6b7280);border-right:1px solid var(--color-border,#e5e7eb);padding-right:.625rem;font-size:.8125rem;font-weight:500}.gantt-task-selection-bar__button{cursor:pointer;border:none;border-radius:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;transition:background-color .15s,color .15s}.gantt-task-selection-bar__button--edit,.gantt-task-selection-bar__button--duration,.gantt-task-selection-bar__button--date,.gantt-task-selection-bar__button--color,.gantt-task-selection-bar__button--indent{color:var(--color-text-primary,#374151);background:#0000000a}.gantt-task-selection-bar__button--edit:hover,.gantt-task-selection-bar__button--duration:hover,.gantt-task-selection-bar__button--date:hover,.gantt-task-selection-bar__button--color:hover,.gantt-task-selection-bar__button--indent:hover:not(:disabled){color:#0891b2;background:#06b6d41a}.gantt-task-selection-bar__button--indent{padding:.375rem .5rem;font-size:.875rem}.gantt-task-selection-bar__button:disabled{opacity:.35;cursor:default;pointer-events:none}.gantt-task-selection-bar__button--delete{color:#dc2626;background:#ef44441a}.gantt-task-selection-bar__button--delete:hover{background:#ef444433}.gantt-task-selection-bar__button--close{color:var(--color-text-secondary,#9ca3af);background:0 0;padding:.25rem .5rem;font-size:1.125rem;line-height:1}.gantt-task-selection-bar__button--close:hover{color:#0891b2;background:#06b6d41a}[data-color-mode=dark] .gantt-task-selection-bar{background:var(--color-bg-secondary);border-color:var(--border-color,#374151);box-shadow:0 4px 12px #0000004d}[data-color-mode=dark] .gantt-task-selection-bar__count{color:var(--text-tertiary,#9ca3af);border-color:#ffffff1a}[data-color-mode=dark] .gantt-task-selection-bar__button--edit,[data-color-mode=dark] .gantt-task-selection-bar__button--duration,[data-color-mode=dark] .gantt-task-selection-bar__button--date,[data-color-mode=dark] .gantt-task-selection-bar__button--color,[data-color-mode=dark] .gantt-task-selection-bar__button--indent{color:var(--text-primary,#f9fafb);background:#ffffff0f}[data-color-mode=dark] .gantt-task-selection-bar__button--edit:hover,[data-color-mode=dark] .gantt-task-selection-bar__button--duration:hover,[data-color-mode=dark] .gantt-task-selection-bar__button--date:hover,[data-color-mode=dark] .gantt-task-selection-bar__button--color:hover,[data-color-mode=dark] .gantt-task-selection-bar__button--indent:hover:not(:disabled){color:#22d3ee;background:#06b6d426}[data-color-mode=dark] .gantt-task-selection-bar__button--delete{color:#f87171;background:#ef444426}[data-color-mode=dark] .gantt-task-selection-bar__button--delete:hover{background:#ef444440}[data-color-mode=dark] .gantt-task-selection-bar__button--close{color:var(--text-tertiary,#6b7280)}[data-color-mode=dark] .gantt-task-selection-bar__button--close:hover{color:#22d3ee;background:#06b6d426}.gantt-loading-overlay{background:var(--bg-primary,#fff);z-index:100;flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex;position:absolute;inset:0}.gantt-loading-spinner{border:3px solid var(--border-color,#e5e7eb);border-top-color:var(--color-accent-primary,#3b82f6);border-radius:50%;width:2.5rem;height:2.5rem;animation:1s linear infinite gantt-loading-spin}.gantt-loading-text{color:var(--text-secondary,#6b7280);font-size:.875rem}@keyframes gantt-loading-spin{to{transform:rotate(360deg)}}[data-color-mode=dark] .gantt-loading-overlay{background:var(--bg-primary,#1f2937)}[data-color-mode=dark] .gantt-loading-spinner{border-color:var(--border-color,#374151);border-top-color:var(--color-accent-primary,#3b82f6)}[data-color-mode=dark] .gantt-loading-text{color:var(--text-secondary,#9ca3af)}@media (max-width:48em){.integrated-gantt__controls{flex-wrap:wrap;gap:.5rem;padding:.5rem}.integrated-gantt__bulk-actions{justify-content:flex-end;width:100%}.integrated-gantt__export-btn{padding:.5rem .75rem;font-size:.75rem}.fixed-task-column{min-width:8.75rem;max-width:11.25rem}.fixed-task-column__header{padding:0 .5rem .5rem}.fixed-task-column__row{padding:0 .5rem}.fixed-task-column__task-name{padding-right:3.125rem;font-size:.75rem}.fixed-task-column__assignee{display:none}.fixed-task-column__action-buttons{display:flex}.fixed-task-column__actions{display:flex;right:.5rem}.integrated-gantt__resize-handle{width:.5rem}.integrated-gantt__resize-handle:before{left:-.5rem;right:-.5rem}.sort-mode-selector{flex-wrap:wrap;gap:.25rem}.sort-mode-selector__label{font-size:.6875rem}.sort-mode-selector__select{padding:.25rem .375rem;font-size:.6875rem}.delete-task-modal,.bulk-edit-modal{max-width:calc(100% - 32px);margin:1rem}.delete-task-modal__btn,.bulk-edit-modal__button{padding:.75rem 1rem;font-size:.875rem}}@media (max-width:30em),(max-height:500px) and (pointer:coarse){.integrated-gantt__controls{flex-wrap:wrap;justify-content:center;gap:.25rem;padding:.25rem .5rem}.integrated-gantt__shortcuts-btn,.fixed-task-column__header-add-btn,.fixed-task-column__header-add-group{display:none}.integrated-gantt__bulk-btn{padding:.25rem .375rem;font-size:.6875rem}.integrated-gantt__export-btn{padding:.25rem .5rem;font-size:.6875rem}.fixed-task-column__actions,.fixed-task-column__action-buttons{display:none!important}.fixed-task-column{min-width:7.5rem;max-width:9.375rem}.fixed-task-column__task-name{padding-right:.5rem;font-size:.6875rem}.fixed-task-column__task-name--parent{text-transform:none;letter-spacing:normal;color:var(--color-accent-primary);font-size:.75rem;font-weight:600}.fixed-task-column__row:has(.fixed-task-column__task-name--parent){border-left:3px solid var(--color-accent-primary);background:var(--color-bg-secondary)}.gantt-task-selection-bar{top:auto;bottom:3.75rem}[aria-roledescription=sortable]{touch-action:none}.integrated-gantt__mobile-list{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.integrated-gantt__mobile-list .fixed-task-column{flex:1;overflow-y:auto;width:100%!important;min-width:100%!important;max-width:100%!important}.integrated-gantt__mobile-timeline-toggle{width:calc(100% - 24px);margin:.5rem .75rem;margin-bottom:calc(8px + var(--mobile-tab-bar-height) + env(safe-area-inset-bottom,0px));border:1.5px solid var(--color-accent-primary);min-height:2.75rem;color:var(--color-accent-primary);cursor:pointer;background:0 0;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;padding:.625rem 1rem;font-size:.875rem;font-weight:600;transition:background-color .15s,color .15s;display:flex}.integrated-gantt__mobile-timeline-toggle:active{background:var(--color-accent-primary);color:var(--color-on-accent)}.integrated-gantt__mobile-timeline{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.integrated-gantt__mobile-timeline-header{border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-secondary);flex-shrink:0;justify-content:flex-end;align-items:center;padding:.5rem .75rem;display:flex}.integrated-gantt__mobile-edit-toggle{border:1.5px solid var(--color-accent-primary);min-height:2.75rem;color:var(--color-accent-primary);cursor:pointer;background:0 0;border-radius:.375rem;padding:.375rem .875rem;font-size:.8125rem;font-weight:600;transition:background-color .15s,color .15s,border-color .15s}.integrated-gantt__mobile-edit-toggle--active{background:var(--color-accent-primary);border-color:var(--color-accent-primary);color:var(--color-on-accent)}.integrated-gantt__mobile-edit-toggle:active{opacity:.8}.integrated-gantt__chart--mobile-full{flex:1;width:100%;overflow:hidden}.fixed-task-column__list{touch-action:pan-y;-webkit-overflow-scrolling:touch}.swipeable-task-row{position:relative;overflow:hidden}.swipeable-task-row:has(.fixed-task-column__row--dragging){z-index:999;overflow:visible}.swipeable-task-row__delete-bg,.swipeable-task-row__actions-bg{align-items:stretch;width:10rem;display:flex;position:absolute;top:0;bottom:0;right:0}.swipeable-task-row__edit-btn{background:var(--color-accent-primary,#3b82f6);color:#fff;cursor:pointer;touch-action:manipulation;border:none;flex:1;font-size:.8125rem;font-weight:700}.swipeable-task-row__delete-btn{background:var(--color-error,#ef4444);color:#fff;cursor:pointer;touch-action:manipulation;border:none;flex:1;font-size:.8125rem;font-weight:700}.swipeable-task-row__content{z-index:1;background:var(--color-bg-primary);will-change:transform;touch-action:pan-y;position:relative}.mobile-task-meta{width:100%;color:var(--text-secondary,#94a3b8);align-items:center;gap:.375rem;padding:.125rem 0 .125rem 2.25rem;font-size:.6875rem;line-height:1;display:flex;overflow:hidden}.mobile-task-meta__dot{border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.mobile-task-meta__dates{white-space:nowrap}.mobile-task-meta__badge{white-space:nowrap;border-radius:.625rem;flex-shrink:0;padding:.0625rem .375rem;font-size:.625rem;font-weight:600}.mobile-task-meta__badge--critical,.mobile-task-meta__badge--critical-path{color:var(--color-error,#ef4444);background:#ef444426}.mobile-task-meta__badge--high{color:#f97316;background:#f9731626}.mobile-task-meta__checklist{white-space:nowrap;color:var(--color-accent-primary,#3b82f6)}.fixed-task-column__row{border-bottom:1px solid var(--color-border-subtle,#94a3b81f);-webkit-tap-highlight-color:transparent;flex-wrap:wrap;align-content:center;min-height:3rem;padding-top:.375rem;padding-bottom:.375rem;transition:background-color .15s}.fixed-task-column__row:active{background:var(--row-hover-bg,#06b6d414)}.fixed-task-column__row--activating{border-left:2px solid var(--color-accent-primary);transition:background .15s,border-color .15s;background:var(--color-bg-elevated)!important}}.integrated-gantt__column-toggle{border:none;border-right:1px solid var(--color-border-subtle);background:var(--color-bg-secondary);width:2.75rem;color:var(--color-text-primary);cursor:pointer;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.25rem;transition:background-color .15s;display:flex}.integrated-gantt__column-toggle:hover{background:var(--color-bg-tertiary,#0000000d)}.integrated-gantt__column-toggle-icon{font-size:1.125rem;line-height:1}.integrated-gantt__column-toggle-count{color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:.625rem;font-weight:600}.integrated-gantt__column-wrapper{display:contents}.integrated-gantt__column-wrapper--drawer{z-index:50;background:var(--color-bg-primary);flex-direction:column;width:17.5rem;max-width:85vw;animation:.2s ease-out drawerSlideIn;display:flex;position:fixed;top:0;bottom:0;left:0;box-shadow:4px 0 20px #00000026}@keyframes drawerSlideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.integrated-gantt__drawer-close{width:1.75rem;height:1.75rem;color:var(--color-text-muted);cursor:pointer;z-index:51;background:0 0;border:none;border-radius:.375rem;justify-content:center;align-items:center;font-size:.875rem;transition:background-color .15s;display:flex;position:absolute;top:.5rem;right:.5rem}.integrated-gantt__drawer-close:hover{background:var(--color-bg-tertiary,#0000000d);color:var(--color-text-primary)}.integrated-gantt__drawer-backdrop{z-index:49;background:#0000004d;position:fixed;inset:0}[data-color-mode=dark] .integrated-gantt__column-wrapper--drawer{box-shadow:4px 0 20px #0006}[data-color-mode=dark] .integrated-gantt__drawer-backdrop{background:#00000080}.remote-cursor-layer{pointer-events:none;z-index:60;position:absolute;inset:0;overflow:visible}.remote-cursor{pointer-events:none;will-change:transform;align-items:flex-start;transition:transform 80ms linear;display:flex;position:absolute;top:0;left:0}.remote-cursor__pointer{filter:drop-shadow(0 1px 1px #0000004d);flex:none;display:block}.remote-cursor__label{color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:8px;max-width:140px;margin-top:10px;margin-left:-2px;padding:1px 6px;font-size:11px;font-weight:600;line-height:1.4;overflow:hidden;box-shadow:0 1px 2px #00000040}@media (prefers-reduced-motion:reduce){.remote-cursor{transition:none}}html.lg-gantt-landscape .gantt-task-selection-bar{top:auto;bottom:calc(var(--mobile-tab-bar-height) + env(safe-area-inset-bottom,0px) + .375rem);flex-wrap:nowrap;gap:.375rem;max-width:calc(100vw - 1rem);padding:.375rem .625rem;left:50%;right:auto;overflow-x:auto;transform:translate(-50%)}html.lg-gantt-landscape .gantt-task-selection-bar__button{white-space:nowrap;flex-shrink:0}.fixed-task-column__wbs{font-variant-numeric:tabular-nums;background:var(--color-bg-tertiary);color:var(--color-text-secondary);border-radius:.25rem;flex:none;margin-right:.35rem;padding:0 .3rem;font-size:.65rem;line-height:1.4}
