@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@500;600;700&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap";.login-actions-row[data-v-6e8bb801]{display:flex;justify-content:space-between;align-items:center;margin:.5rem 0 1rem;font-size:.85rem}.link-btn[data-v-6e8bb801]{background:transparent;border:none;color:#0284c7;cursor:pointer;text-decoration:underline;font-size:inherit;padding:0}.link-btn[data-v-6e8bb801]:hover{color:#0369a1}.full-width[data-v-6e8bb801]{width:100%}.alert-success[data-v-6e8bb801]{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;margin:.5rem 0}.app-tooltip-wrapper[data-v-780f2dfa]{position:relative;display:inline-flex}.app-tooltip-bubble[data-v-780f2dfa]{position:absolute;z-index:1000;padding:5px 9px;font-family:var(--font-sans);font-size:11.5px;font-weight:500;color:var(--text-inverse);background-color:#0f172a;border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-md);line-height:1.2;animation:tooltip-fade-780f2dfa var(--transition-fast) ease-out}@keyframes tooltip-fade-780f2dfa{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.pos-top[data-v-780f2dfa]{bottom:100%;left:50%;transform:translate(-50%) translateY(-6px)}.pos-bottom[data-v-780f2dfa]{top:100%;left:50%;transform:translate(-50%) translateY(6px)}.pos-left[data-v-780f2dfa]{right:100%;top:50%;transform:translateY(-50%) translate(-6px)}.pos-right[data-v-780f2dfa]{left:100%;top:50%;transform:translateY(-50%) translate(6px)}.mobile-backdrop[data-v-bd86360b]{position:fixed;inset:0;background-color:#0f172a99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:940}.app-sidebar[data-v-bd86360b]{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background-color:var(--bg-sidebar);border-right:1px solid var(--border-sidebar);color:var(--text-sidebar);display:flex;flex-direction:column;z-index:950;transition:width var(--transition-normal),transform var(--transition-normal);overflow:hidden}.app-sidebar.is-collapsed[data-v-bd86360b]{width:var(--sidebar-collapsed-width)}.sidebar-brand[data-v-bd86360b]{height:var(--header-height);padding:0 16px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border-sidebar);flex-shrink:0}.brand-visual[data-v-bd86360b]{display:flex;align-items:center;justify-content:center;flex-shrink:0}.brand-img[data-v-bd86360b]{max-width:36px;max-height:36px;object-fit:contain}.brand-avatar[data-v-bd86360b]{width:36px;height:36px;border-radius:var(--radius-md);background:var(--primary);color:var(--text-inverse);font-family:var(--font-mono);font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center}.brand-text[data-v-bd86360b]{display:flex;flex-direction:column;min-width:0;overflow:hidden}.brand-name[data-v-bd86360b]{font-size:14.5px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-tag[data-v-bd86360b]{font-size:11px;color:var(--text-sidebar-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.sidebar-nav[data-v-bd86360b]{flex:1;overflow-y:auto;padding:14px 10px;display:flex;flex-direction:column;gap:18px}.nav-section[data-v-bd86360b]{display:flex;flex-direction:column;gap:3px}.section-heading[data-v-bd86360b]{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-sidebar-muted);padding:6px 12px 4px}.nav-link[data-v-bd86360b]{width:100%;display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--text-sidebar);font-family:var(--font-sans);font-size:13.5px;font-weight:500;text-align:left;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.nav-link[data-v-bd86360b]:hover{background:var(--bg-sidebar-hover);color:#fff}.nav-link[data-v-bd86360b]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.nav-link.is-active[data-v-bd86360b]{background:var(--primary);color:#fff;font-weight:600}.nav-link.is-planned[data-v-bd86360b]{opacity:.75}.nav-link.is-planned[data-v-bd86360b]:hover{opacity:1}.nav-icon[data-v-bd86360b]{flex-shrink:0;color:currentColor}.nav-text[data-v-bd86360b]{flex:1;overflow:hidden;text-overflow:ellipsis}.nav-badge[data-v-bd86360b]{background:var(--color-danger);color:#fff;font-size:11px;font-weight:700;padding:1px 6px;border-radius:var(--radius-full)}.planned-pill[data-v-bd86360b]{font-size:10px;font-weight:600;padding:2px 6px;border-radius:var(--radius-full);background:#ffffff1f;color:var(--text-sidebar-muted);letter-spacing:.02em}.sidebar-footer[data-v-bd86360b]{padding:12px;border-top:1px solid var(--border-sidebar);display:flex;align-items:center;justify-content:space-between;gap:8px;flex-shrink:0}.user-profile-card[data-v-bd86360b]{display:flex;align-items:center;gap:10px;flex:1;min-width:0;padding:6px 8px;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.user-profile-card[data-v-bd86360b]:hover{background:var(--bg-sidebar-hover)}.user-profile-card[data-v-bd86360b]:focus-visible{outline:2px solid var(--primary)}.user-avatar[data-v-bd86360b]{width:32px;height:32px;border-radius:var(--radius-full);background:var(--bg-sidebar-active);color:#fff;font-family:var(--font-mono);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid rgba(255,255,255,.15)}.user-meta[data-v-bd86360b]{display:flex;flex-direction:column;overflow:hidden;min-width:0}.user-fullname[data-v-bd86360b]{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role-label[data-v-bd86360b]{font-size:11px;color:var(--text-sidebar-muted);white-space:nowrap}.collapse-btn[data-v-bd86360b]{background:transparent;border:none;color:var(--text-sidebar-muted);cursor:pointer;padding:8px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.collapse-btn[data-v-bd86360b]:hover{background:var(--bg-sidebar-hover);color:#fff}.collapse-btn[data-v-bd86360b]:focus-visible{outline:2px solid var(--primary)}@media(max-width:1024px){.app-sidebar[data-v-bd86360b]{transform:translate(-100%);width:280px!important}.app-sidebar.is-mobile-open[data-v-bd86360b]{transform:translate(0)}}.app-badge[data-v-47acecd6]{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-sans);font-weight:600;border-radius:var(--radius-full);line-height:1;white-space:nowrap;border:1px solid transparent;transition:all var(--transition-fast)}.badge-xs[data-v-47acecd6]{font-size:10.5px;padding:2px 6px}.badge-sm[data-v-47acecd6]{font-size:11.5px;padding:3px 8px}.badge-md[data-v-47acecd6]{font-size:13px;padding:5px 12px}.badge-dot[data-v-47acecd6]{width:6px;height:6px;border-radius:50%;background-color:currentColor;flex-shrink:0}.badge-default[data-v-47acecd6]{background:var(--bg-surface-subtle);color:var(--text-secondary);border-color:var(--border-subtle)}.badge-primary[data-v-47acecd6]{background:var(--primary-light);color:var(--primary-text);border-color:var(--primary-border)}.badge-success[data-v-47acecd6]{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.badge-warning[data-v-47acecd6]{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning-border)}.badge-danger[data-v-47acecd6]{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:var(--color-danger-border)}.badge-info[data-v-47acecd6]{background:var(--color-info-bg);color:var(--color-info-text);border-color:var(--color-info-border)}.badge-haute[data-v-47acecd6]{background:var(--priority-haute-bg);color:var(--priority-haute-text);border-color:var(--priority-haute-border)}.badge-moyenne[data-v-47acecd6]{background:var(--priority-moyenne-bg);color:var(--priority-moyenne-text);border-color:var(--priority-moyenne-border)}.badge-basse[data-v-47acecd6]{background:var(--priority-basse-bg);color:var(--priority-basse-text);border-color:var(--priority-basse-border)}.badge-str[data-v-47acecd6]{background:var(--dept-str-bg);color:var(--dept-str-text);border-color:var(--dept-str-border)}.badge-eco[data-v-47acecd6]{background:var(--dept-eco-bg);color:var(--dept-eco-text);border-color:var(--dept-eco-border)}.badge-flu[data-v-47acecd6]{background:var(--dept-flu-bg);color:var(--dept-flu-text);border-color:var(--dept-flu-border)}.badge-elec[data-v-47acecd6]{background:var(--dept-elec-bg);color:var(--dept-elec-text);border-color:var(--dept-elec-border)}.badge-vrd[data-v-47acecd6]{background:var(--dept-vrd-bg);color:var(--dept-vrd-text);border-color:var(--dept-vrd-border)}.badge-bim[data-v-47acecd6]{background:var(--dept-bim-bg);color:var(--dept-bim-text);border-color:var(--dept-bim-border)}.is-interactive[data-v-47acecd6]{cursor:pointer}.is-interactive[data-v-47acecd6]:hover{filter:brightness(.95);transform:translateY(-1px)}.is-active[data-v-47acecd6]{box-shadow:0 0 0 2px var(--primary)}.app-btn[data-v-56200d13]{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-sans);font-weight:500;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;line-height:1.25}.app-btn[data-v-56200d13]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.app-btn[data-v-56200d13]:disabled,.app-btn[aria-disabled=true][data-v-56200d13]{cursor:not-allowed;opacity:.55;pointer-events:none}.btn-xs[data-v-56200d13]{font-size:11.5px;padding:4px 8px;border-radius:var(--radius-sm);gap:5px}.btn-sm[data-v-56200d13]{font-size:12.5px;padding:6px 11px;border-radius:var(--radius-sm);gap:6px}.btn-md[data-v-56200d13]{font-size:13.5px;padding:8px 14px;border-radius:var(--radius-md)}.btn-lg[data-v-56200d13]{font-size:15px;padding:11px 18px;border-radius:var(--radius-lg);font-weight:600}.btn-icon-only.btn-xs[data-v-56200d13]{padding:4px}.btn-icon-only.btn-sm[data-v-56200d13]{padding:6px}.btn-icon-only.btn-md[data-v-56200d13]{padding:8px}.btn-icon-only.btn-lg[data-v-56200d13]{padding:11px}.btn-primary[data-v-56200d13]{background:var(--primary);border-color:var(--primary);color:var(--text-inverse)}.btn-primary[data-v-56200d13]:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover);box-shadow:var(--shadow-sm)}.btn-secondary[data-v-56200d13]{background:var(--bg-surface);border-color:var(--border-default);color:var(--text-primary)}.btn-secondary[data-v-56200d13]:hover:not(:disabled){background:var(--bg-surface-subtle);border-color:var(--border-strong)}.btn-outline[data-v-56200d13]{background:transparent;border-color:var(--border-default);color:var(--text-primary)}.btn-outline[data-v-56200d13]:hover:not(:disabled){background:var(--bg-surface-subtle);border-color:var(--primary);color:var(--primary)}.btn-ghost[data-v-56200d13]{background:transparent;border-color:transparent;color:var(--text-secondary)}.btn-ghost[data-v-56200d13]:hover:not(:disabled){background:var(--bg-surface-subtle);color:var(--text-primary)}.btn-danger[data-v-56200d13]{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger)}.btn-danger[data-v-56200d13]:hover:not(:disabled){background:var(--color-danger);border-color:var(--color-danger);color:#fff}.btn-spinner[data-v-56200d13]{width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:btn-spin-56200d13 .65s linear infinite;display:inline-block}@keyframes btn-spin-56200d13{to{transform:rotate(360deg)}}.btn-icon[data-v-56200d13],.btn-suffix[data-v-56200d13]{display:inline-flex;align-items:center;justify-content:center}.app-header[data-v-058b7d2d]{height:var(--header-height);background-color:var(--bg-header);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 24px;gap:16px;position:sticky;top:0;z-index:900;box-shadow:var(--shadow-xs)}.header-left[data-v-058b7d2d]{display:flex;align-items:center;gap:14px;min-width:0}.mobile-toggle[data-v-058b7d2d]{display:none;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;border-radius:var(--radius-sm)}.mobile-toggle[data-v-058b7d2d]:hover{background:var(--bg-surface-subtle);color:var(--text-primary)}.breadcrumbs[data-v-058b7d2d]{display:flex;align-items:center;gap:8px;font-size:13.5px;white-space:nowrap}.crumb-section[data-v-058b7d2d]{color:var(--text-muted);font-weight:500}.crumb-separator[data-v-058b7d2d]{color:var(--text-placeholder)}.crumb-current[data-v-058b7d2d]{color:var(--text-primary);font-weight:600}.header-center[data-v-058b7d2d]{flex:1;max-width:440px;display:flex;justify-content:center}.quick-search-trigger[data-v-058b7d2d]{width:100%;display:flex;align-items:center;gap:10px;padding:6px 12px;background:var(--bg-surface-subtle);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);text-align:left}.quick-search-trigger[data-v-058b7d2d]:hover{background:var(--bg-surface);border-color:var(--border-strong);color:var(--text-secondary);box-shadow:var(--shadow-xs)}.search-placeholder[data-v-058b7d2d]{flex:1;font-size:13px;color:var(--text-placeholder)}.search-kbd[data-v-058b7d2d]{font-family:var(--font-mono);font-size:11px;padding:2px 6px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xs);color:var(--text-muted)}.header-right[data-v-058b7d2d]{display:flex;align-items:center;gap:10px}.sync-indicator[data-v-058b7d2d]{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-full);font-size:11.5px;font-weight:600;background:var(--bg-surface-subtle);border:1px solid var(--border-subtle);white-space:nowrap}.sync-dot[data-v-058b7d2d]{width:7px;height:7px;border-radius:50%;background-color:var(--text-muted)}.sync-indicator.is-synced[data-v-058b7d2d]{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success-text)}.sync-indicator.is-synced .sync-dot[data-v-058b7d2d]{background:var(--color-success);box-shadow:0 0 0 2px #16a34a33}.sync-indicator.is-pending[data-v-058b7d2d]{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning-text)}.sync-indicator.is-pending .sync-dot[data-v-058b7d2d]{background:var(--color-warning)}.sync-indicator.is-offline[data-v-058b7d2d]{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger-text)}.sync-indicator.is-offline .sync-dot[data-v-058b7d2d]{background:var(--color-danger)}.action-buttons[data-v-058b7d2d]{display:flex;align-items:center;gap:8px}.icon-button[data-v-058b7d2d]{background:transparent;border:1px solid var(--border-default);color:var(--text-secondary);cursor:pointer;width:34px;height:34px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);position:relative}.icon-button[data-v-058b7d2d]:hover{background:var(--bg-surface-subtle);color:var(--text-primary);border-color:var(--border-strong)}.notification-bell .badge-counter[data-v-058b7d2d]{position:absolute;top:-4px;right:-4px;background:var(--color-danger);color:#fff;font-size:10px;font-weight:700;padding:1px 5px;border-radius:var(--radius-full);line-height:1.2}.notif-dropdown-container[data-v-058b7d2d]{position:relative}.notif-popover-menu[data-v-058b7d2d]{position:absolute;top:calc(100% + 8px);right:0;width:360px;background:var(--color-surface, var(--bg-surface));border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:100;overflow:hidden;display:flex;flex-direction:column}.notif-popover-header[data-v-058b7d2d]{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--bg-surface-subtle);border-bottom:1px solid var(--border-default)}.popover-title[data-v-058b7d2d]{display:flex;align-items:center;gap:8px;font-size:var(--font-size-sm);color:var(--text-primary)}.quick-read-all-btn[data-v-058b7d2d]{font-size:11px;color:var(--color-primary);background:none;border:none;cursor:pointer;padding:2px 4px}.quick-read-all-btn[data-v-058b7d2d]:hover{text-decoration:underline}.notif-popover-loading[data-v-058b7d2d],.notif-popover-empty[data-v-058b7d2d]{padding:20px;text-align:center;font-size:var(--font-size-xs);color:var(--text-secondary)}.notif-popover-list[data-v-058b7d2d]{max-height:320px;overflow-y:auto;display:flex;flex-direction:column}.notif-popover-item[data-v-058b7d2d]{padding:10px 14px;border-bottom:1px solid var(--border-default);cursor:pointer;transition:background var(--transition-fast)}.notif-popover-item[data-v-058b7d2d]:hover{background:var(--bg-surface-subtle)}.notif-popover-item.item-unread[data-v-058b7d2d]{background:var(--color-primary-subtle, rgba(59, 130, 246, .05));border-left:3px solid var(--color-primary)}.item-top[data-v-058b7d2d]{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.item-time[data-v-058b7d2d]{font-size:10px;color:var(--text-muted)}.item-title[data-v-058b7d2d]{font-size:var(--font-size-xs);font-weight:600;color:var(--text-primary);margin-bottom:2px}.item-snippet[data-v-058b7d2d]{font-size:11px;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35}.notif-popover-footer[data-v-058b7d2d]{padding:8px 14px;background:var(--bg-surface-subtle);border-top:1px solid var(--border-default);text-align:center}.view-all-notifs-btn[data-v-058b7d2d]{background:none;border:none;color:var(--color-primary);font-size:var(--font-size-xs);font-weight:600;cursor:pointer;width:100%;padding:4px}.view-all-notifs-btn[data-v-058b7d2d]:hover{text-decoration:underline}.user-dropdown-container[data-v-058b7d2d]{position:relative}.user-trigger-btn[data-v-058b7d2d]{display:flex;align-items:center;gap:8px;padding:5px 10px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.user-trigger-btn[data-v-058b7d2d]:hover{background:var(--bg-surface-subtle);border-color:var(--border-strong)}.user-name-label[data-v-058b7d2d]{font-size:13px;font-weight:600;color:var(--text-primary)}.chevron-icon[data-v-058b7d2d]{color:var(--text-muted)}.user-dropdown-menu[data-v-058b7d2d]{position:absolute;right:0;top:calc(100% + 6px);width:220px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:6px;display:flex;flex-direction:column;z-index:1000;animation:dropdown-fade-058b7d2d var(--transition-fast) ease-out}@keyframes dropdown-fade-058b7d2d{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.menu-user-info[data-v-058b7d2d]{padding:8px 10px;display:flex;flex-direction:column;gap:2px}.info-name[data-v-058b7d2d]{font-size:13.5px;color:var(--text-primary)}.info-email[data-v-058b7d2d]{font-size:11.5px;color:var(--text-muted)}.menu-divider[data-v-058b7d2d]{height:1px;background:var(--border-subtle);margin:4px 0}.menu-item[data-v-058b7d2d]{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border:none;background:transparent;color:var(--text-primary);font-size:13px;font-weight:500;text-align:left;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.menu-item[data-v-058b7d2d]:hover{background:var(--bg-surface-subtle)}.menu-item.is-danger[data-v-058b7d2d]{color:var(--color-danger)}.menu-item.is-danger[data-v-058b7d2d]:hover{background:var(--color-danger-bg)}@media(max-width:1024px){.mobile-toggle[data-v-058b7d2d]{display:flex}.header-center[data-v-058b7d2d]{display:none}}@media(max-width:768px){.action-buttons[data-v-058b7d2d]{display:none}.breadcrumbs[data-v-058b7d2d]{font-size:12px}}.search-backdrop[data-v-c96052dd]{position:fixed;inset:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1000;display:flex;justify-content:center;align-items:flex-start;padding:80px 16px 24px;animation:search-fade-c96052dd var(--transition-fast) ease-out}@keyframes search-fade-c96052dd{0%{opacity:0}to{opacity:1}}.search-dialog[data-v-c96052dd]{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:640px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;animation:search-drop-c96052dd var(--transition-fast) ease-out}@keyframes search-drop-c96052dd{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.search-header[data-v-c96052dd]{padding:16px 20px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;gap:12px;background:var(--bg-surface)}.search-icon[data-v-c96052dd]{color:var(--text-muted);flex-shrink:0}.search-input[data-v-c96052dd]{flex:1;border:none;background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-size:15px;outline:none}.search-input[data-v-c96052dd]::placeholder{color:var(--text-placeholder)}.esc-kbd[data-v-c96052dd]{font-family:var(--font-sans);font-size:11px;padding:3px 6px;border-radius:var(--radius-sm);background:var(--bg-surface-subtle);border:1px solid var(--border-default);color:var(--text-muted);cursor:pointer}.search-body[data-v-c96052dd]{padding:12px;overflow-y:auto;max-height:480px}.search-empty[data-v-c96052dd]{padding:36px 20px;text-align:center;color:var(--text-secondary);font-size:14px}.results-list[data-v-c96052dd]{display:flex;flex-direction:column;gap:14px}.results-group[data-v-c96052dd]{display:flex;flex-direction:column;gap:4px}.group-title[data-v-c96052dd]{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:6px 10px}.result-row[data-v-c96052dd]{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;text-align:left;cursor:pointer;transition:all var(--transition-fast);width:100%}.result-row[data-v-c96052dd]:hover,.result-row.is-selected[data-v-c96052dd]{background:var(--bg-surface-subtle);border-color:var(--border-subtle)}.row-icon[data-v-c96052dd]{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.row-mono-badge[data-v-c96052dd]{font-family:var(--font-mono);font-size:12px;font-weight:600;background:var(--primary-light);color:var(--primary-text);border:1px solid var(--primary-border);padding:4px 8px;border-radius:var(--radius-sm);flex-shrink:0}.row-info[data-v-c96052dd]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.row-title[data-v-c96052dd]{font-size:13.5px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-desc[data-v-c96052dd]{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-meta[data-v-c96052dd]{display:flex;align-items:center;gap:8px}.row-action[data-v-c96052dd]{font-size:11px;color:var(--text-muted);opacity:0;transition:opacity var(--transition-fast)}.result-row:hover .row-action[data-v-c96052dd],.result-row.is-selected .row-action[data-v-c96052dd]{opacity:1}.search-footer[data-v-c96052dd]{padding:10px 16px;border-top:1px solid var(--border-subtle);background:var(--bg-surface-subtle);font-size:11.5px;color:var(--text-muted)}.footer-hint[data-v-c96052dd]{display:flex;align-items:center;gap:16px}.footer-hint kbd[data-v-c96052dd]{font-family:var(--font-mono);font-size:10px;padding:2px 5px;border-radius:var(--radius-xs);background:var(--bg-surface);border:1px solid var(--border-default);margin-right:4px}.app-modal-backdrop[data-v-6a096624]{position:fixed;inset:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;display:grid;place-items:center;padding:16px;animation:modal-fade-in-6a096624 var(--transition-fast) ease-out}@keyframes modal-fade-in-6a096624{0%{opacity:0}to{opacity:1}}.app-modal-dialog[data-v-6a096624]{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:modal-scale-in-6a096624 var(--transition-fast) ease-out}@keyframes modal-scale-in-6a096624{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-sm[data-v-6a096624]{max-width:420px}.modal-md[data-v-6a096624]{max-width:560px}.modal-lg[data-v-6a096624]{max-width:780px}.modal-xl[data-v-6a096624]{max-width:980px}.modal-header[data-v-6a096624]{padding:20px 24px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.header-content[data-v-6a096624]{flex:1}.modal-title[data-v-6a096624]{margin:0;font-family:var(--font-sans);font-size:18px;font-weight:700;color:var(--text-primary);line-height:1.3}.modal-description[data-v-6a096624]{margin:4px 0 0;font-size:13px;color:var(--text-secondary)}.modal-close-btn[data-v-6a096624]{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:6px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.modal-close-btn[data-v-6a096624]:hover{background:var(--bg-surface-subtle);color:var(--text-primary)}.modal-close-btn[data-v-6a096624]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.modal-body[data-v-6a096624]{padding:20px 24px;overflow-y:auto;flex:1}.modal-footer[data-v-6a096624]{padding:16px 24px;border-top:1px solid var(--border-subtle);background:var(--bg-surface-subtle);display:flex;align-items:center;justify-content:flex-end;gap:12px}.roadmap-content[data-v-49e9069b]{display:flex;flex-direction:column;gap:16px}.roadmap-meta[data-v-49e9069b]{display:flex;align-items:center;justify-content:space-between}.roadmap-status[data-v-49e9069b]{font-size:12px;color:var(--text-muted);font-weight:500}.roadmap-desc[data-v-49e9069b]{margin:0;font-size:14px;line-height:1.5;color:var(--text-secondary)}.features-title[data-v-49e9069b]{margin:0 0 10px;font-size:13px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.03em}.features-list[data-v-49e9069b]{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.feature-item[data-v-49e9069b]{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--text-primary)}.check-icon[data-v-49e9069b]{color:var(--primary);flex-shrink:0;margin-top:2px}.roadmap-notice[data-v-49e9069b]{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--bg-surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:12.5px;color:var(--text-secondary)}.roadmap-notice svg[data-v-49e9069b]{color:var(--primary);flex-shrink:0;margin-top:1px}.roadmap-notice p[data-v-49e9069b]{margin:0;line-height:1.4}.portfolio-filter-bar[data-v-8c56f685]{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:16px 20px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:14px;margin-bottom:16px}.filters-main[data-v-8c56f685]{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap}.filter-group[data-v-8c56f685]{display:flex;flex-direction:column;gap:6px}.filter-label[data-v-8c56f685]{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.search-box[data-v-8c56f685]{flex:1;min-width:240px;display:flex;flex-direction:column;gap:6px}.search-input-wrap[data-v-8c56f685]{position:relative;display:flex;align-items:center;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);transition:all var(--transition-fast)}.search-input-wrap[data-v-8c56f685]:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-focus)}.search-icon[data-v-8c56f685]{position:absolute;left:10px;color:var(--text-muted);pointer-events:none}.filter-search-input[data-v-8c56f685]{width:100%;border:none;background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-size:13px;padding:7px 30px 7px 32px;outline:none}.search-clear-btn[data-v-8c56f685]{position:absolute;right:8px;background:transparent;border:none;color:var(--text-muted);font-size:16px;cursor:pointer;padding:2px 6px}.search-clear-btn[data-v-8c56f685]:hover{color:var(--text-primary)}.priority-chips[data-v-8c56f685]{display:flex;gap:6px}.p-chip[data-v-8c56f685]{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:var(--radius-full);border:1px solid var(--border-default);background:var(--bg-surface);font-family:var(--font-sans);font-size:12px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.p-chip[data-v-8c56f685]:hover{border-color:var(--border-strong);background:var(--bg-surface-subtle)}.chip-dot[data-v-8c56f685]{width:6px;height:6px;border-radius:50%;background:currentColor}.chip-haute[data-v-8c56f685]{color:var(--color-danger)}.chip-haute.is-active[data-v-8c56f685]{background:var(--priority-haute-bg);border-color:var(--priority-haute-border);color:var(--priority-haute-text);box-shadow:0 0 0 2px var(--color-danger)}.chip-moyenne[data-v-8c56f685]{color:var(--color-warning)}.chip-moyenne.is-active[data-v-8c56f685]{background:var(--priority-moyenne-bg);border-color:var(--priority-moyenne-border);color:var(--priority-moyenne-text);box-shadow:0 0 0 2px var(--color-warning)}.chip-basse[data-v-8c56f685]{color:var(--text-secondary)}.chip-basse.is-active[data-v-8c56f685]{background:var(--priority-basse-bg);border-color:var(--priority-basse-border);color:var(--priority-basse-text);box-shadow:0 0 0 2px var(--text-secondary)}.filter-select[data-v-8c56f685]{border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-primary);font-family:var(--font-sans);font-size:13px;padding:7px 12px;border-radius:var(--radius-md);outline:none;cursor:pointer;min-width:170px}.filter-select[data-v-8c56f685]:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-focus)}.filters-footer[data-v-8c56f685]{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border-subtle);padding-top:10px}.results-counter[data-v-8c56f685]{font-size:12.5px;color:var(--text-secondary)}.results-counter strong[data-v-8c56f685]{color:var(--text-primary)}@media(max-width:768px){.filters-main[data-v-8c56f685]{flex-direction:column;align-items:stretch}.filter-select[data-v-8c56f685]{width:100%}}.app-empty-state[data-v-e560ff4b]{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px;background:var(--bg-surface);border:1px dashed var(--border-default);border-radius:var(--radius-lg);font-family:var(--font-sans)}.empty-icon-wrap[data-v-e560ff4b]{width:64px;height:64px;border-radius:var(--radius-full);background:var(--bg-surface-subtle);color:var(--text-muted);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.empty-title[data-v-e560ff4b]{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.empty-description[data-v-e560ff4b]{margin:6px 0 0;font-size:13.5px;color:var(--text-secondary);max-width:440px}.empty-actions[data-v-e560ff4b]{margin-top:18px;display:flex;gap:10px;align-items:center}.portfolio-table-wrap[data-v-d6bd037f]{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow-x:auto;position:relative}.empty-state-wrap[data-v-d6bd037f]{padding:32px}.portfolio-table[data-v-d6bd037f]{width:100%;border-collapse:separate;border-spacing:0;font-family:var(--font-sans);text-align:left;min-width:980px}.portfolio-table th[data-v-d6bd037f]{background:var(--bg-surface-subtle);color:var(--text-secondary);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:12px 14px;border-bottom:1px solid var(--border-default);white-space:nowrap;-webkit-user-select:none;user-select:none}.portfolio-table td[data-v-d6bd037f]{padding:8px 14px;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);font-size:13px;vertical-align:middle}.table-row[data-v-d6bd037f]{cursor:pointer;transition:background var(--transition-fast)}.table-row:hover td[data-v-d6bd037f]{background-color:var(--bg-surface-hover)}.table-row[data-v-d6bd037f]:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.project-start td[data-v-d6bd037f]{border-top:1.5px solid var(--border-default)}.portfolio-table tbody tr:first-child.project-start td[data-v-d6bd037f]{border-top:none}.mono-numero[data-v-d6bd037f]{font-family:var(--font-mono);font-weight:700;font-size:13px;color:var(--primary);background:var(--primary-light);padding:3px 8px;border-radius:var(--radius-sm);display:inline-block}.project-title-wrap[data-v-d6bd037f]{display:flex;align-items:center}.project-title[data-v-d6bd037f]{font-size:13.5px;font-weight:600;color:var(--text-primary);max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.chef-name[data-v-d6bd037f]{font-size:12.5px;color:var(--text-secondary);white-space:nowrap}.phase-badge[data-v-d6bd037f]{font-size:11px;font-weight:600;color:var(--text-secondary);background:var(--bg-surface-subtle);border:1px solid var(--border-subtle);padding:2px 7px;border-radius:var(--radius-xs);display:inline-block}.cell-mono[data-v-d6bd037f]{font-family:var(--font-mono);font-size:12px;white-space:nowrap}.cell-empty[data-v-d6bd037f]{color:var(--text-muted)}.comment-text[data-v-d6bd037f]{display:block;font-size:12px;color:var(--text-secondary);max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-num[data-v-d6bd037f]{width:90px}.col-title[data-v-d6bd037f]{width:220px}.col-priority[data-v-d6bd037f]{width:100px}.col-chef[data-v-d6bd037f]{width:140px}.col-dept[data-v-d6bd037f]{width:80px}.col-phase[data-v-d6bd037f],.col-delai[data-v-d6bd037f]{width:75px}.col-date[data-v-d6bd037f]{width:110px}.col-remain[data-v-d6bd037f]{width:125px}.col-comment[data-v-d6bd037f]{min-width:180px}.app-drawer-backdrop[data-v-e4523189]{position:fixed;inset:0;background-color:#0f172a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:990;display:flex;justify-content:flex-end;animation:drawer-fade-e4523189 var(--transition-fast) ease-out}@keyframes drawer-fade-e4523189{0%{opacity:0}to{opacity:1}}.app-drawer-panel[data-v-e4523189]{background:var(--bg-surface);border-left:1px solid var(--border-default);box-shadow:var(--shadow-drawer);height:100%;max-width:95vw;display:flex;flex-direction:column;animation:drawer-slide-e4523189 var(--transition-normal) cubic-bezier(.16,1,.3,1);overflow:hidden}@keyframes drawer-slide-e4523189{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-sm[data-v-e4523189]{width:380px}.drawer-md[data-v-e4523189]{width:480px}.drawer-lg[data-v-e4523189]{width:620px}.drawer-xl[data-v-e4523189]{width:840px}.drawer-header[data-v-e4523189]{padding:18px 24px;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:0;z-index:10}.header-titles[data-v-e4523189]{flex:1;min-width:0}.drawer-title[data-v-e4523189]{margin:0;font-family:var(--font-sans);font-size:18px;font-weight:700;color:var(--text-primary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-subtitle[data-v-e4523189]{margin:4px 0 0;font-size:12.5px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-close-btn[data-v-e4523189]{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:6px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.drawer-close-btn[data-v-e4523189]:hover{background:var(--bg-surface-subtle);color:var(--text-primary)}.drawer-close-btn[data-v-e4523189]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.drawer-body[data-v-e4523189]{padding:24px;overflow-y:auto;flex:1}.drawer-footer[data-v-e4523189]{padding:16px 24px;border-top:1px solid var(--border-subtle);background:var(--bg-surface-subtle);display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;bottom:0;z-index:10}.collab-workspace[data-v-cdf276fe]{display:flex;flex-direction:column;gap:1.25rem;background:var(--bg-surface, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:var(--radius-lg, .75rem);padding:1.25rem}.collab-summary-bar[data-v-cdf276fe]{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1rem;padding:.75rem 1rem;background:var(--bg-subtle, #f8fafc);border-radius:var(--radius-md, .5rem);border:1px solid var(--border-color, #e2e8f0)}.summary-metric[data-v-cdf276fe]{display:flex;flex-direction:column;gap:.25rem}.summary-metric.is-alert .metric-value[data-v-cdf276fe]{color:#ef4444;font-weight:700}.metric-label[data-v-cdf276fe]{font-size:.75rem;text-transform:uppercase;color:var(--text-muted, #64748b);letter-spacing:.05em}.metric-value[data-v-cdf276fe]{font-size:1.125rem;font-weight:600;color:var(--text-primary, #0f172a)}.alert-banner[data-v-cdf276fe]{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-md, .5rem);font-size:.875rem}.alert-banner.is-error[data-v-cdf276fe]{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.alert-banner.is-warning[data-v-cdf276fe]{background:#fffbeb;border:1px solid #fde68a;color:#b45309}.alert-close[data-v-cdf276fe]{margin-left:auto;background:none;border:none;font-size:1.25rem;cursor:pointer;color:inherit}.collab-nav-tabs[data-v-cdf276fe]{display:flex;gap:.5rem;border-bottom:2px solid var(--border-color, #e2e8f0);padding-bottom:.5rem}.collab-tab-btn[data-v-cdf276fe]{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;color:var(--text-secondary, #475569);background:transparent;border:none;border-radius:var(--radius-md, .375rem);cursor:pointer;transition:all .15s ease}.collab-tab-btn[data-v-cdf276fe]:hover{background:var(--bg-hover, #f1f5f9)}.collab-tab-btn.is-active[data-v-cdf276fe]{background:#3b82f6;color:#fff}.tab-pane[data-v-cdf276fe]{display:flex;flex-direction:column;gap:1rem}.pane-filters[data-v-cdf276fe]{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.filter-pills[data-v-cdf276fe]{display:flex;gap:.5rem;flex-wrap:wrap}.pill-btn[data-v-cdf276fe]{font-size:.75rem;font-weight:500;padding:.25rem .65rem;border-radius:9999px;background:var(--bg-subtle, #f1f5f9);color:var(--text-secondary, #475569);border:1px solid var(--border-color, #e2e8f0);cursor:pointer}.pill-btn.is-active[data-v-cdf276fe]{background:#0284c7;color:#fff;border-color:#0284c7}.badge-pill[data-v-cdf276fe]{font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:9999px;text-transform:uppercase}.badge-pill.is-danger[data-v-cdf276fe]{background:#fee2e2;color:#dc2626}.badge-pill.is-warning[data-v-cdf276fe]{background:#fef3c7;color:#d97706}.badge-pill.is-info[data-v-cdf276fe]{background:#e0f2fe;color:#0284c7}.badge-pill.is-success[data-v-cdf276fe]{background:#dcfce7;color:#16a34a}.badge-pill.is-neutral[data-v-cdf276fe]{background:#f1f5f9;color:#475569}.timeline-stream[data-v-cdf276fe]{display:flex;flex-direction:column;gap:1rem;position:relative;padding-left:1.5rem;border-left:2px solid var(--border-color, #e2e8f0)}.timeline-card[data-v-cdf276fe]{position:relative;background:var(--bg-subtle, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:var(--radius-md, .5rem);padding:.875rem 1rem}.card-timeline-node[data-v-cdf276fe]{position:absolute;left:-1.95rem;top:1rem;width:.75rem;height:.75rem;border-radius:50%;background:#3b82f6;border:2px solid var(--bg-surface, #ffffff)}.card-header[data-v-cdf276fe]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}.card-meta[data-v-cdf276fe]{display:flex;gap:.5rem;align-items:center}.actor-name[data-v-cdf276fe]{font-weight:600;font-size:.875rem;color:var(--text-primary, #0f172a)}.event-time[data-v-cdf276fe]{font-size:.75rem;color:var(--text-muted, #94a3b8)}.card-summary[data-v-cdf276fe]{font-size:.875rem;color:var(--text-secondary, #334155);margin:0}.card-details-box[data-v-cdf276fe]{margin-top:.5rem;padding:.5rem .75rem;background:var(--bg-surface, #ffffff);border-left:3px solid #3b82f6;font-size:.825rem;font-style:italic;color:var(--text-secondary, #475569);border-radius:0 .25rem .25rem 0}.card-resolution-box[data-v-cdf276fe]{margin-top:.5rem;padding:.5rem .75rem;background:#ecfdf5;border-left:3px solid #10b981;font-size:.825rem;color:#065f46;border-radius:0 .25rem .25rem 0}.composer-card[data-v-cdf276fe]{display:flex;flex-direction:column;gap:.75rem;background:var(--bg-subtle, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:var(--radius-md, .5rem);padding:1rem}.composer-controls[data-v-cdf276fe]{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.form-select-sm[data-v-cdf276fe]{font-size:.75rem;padding:.35rem .5rem;border-radius:var(--radius-sm, .25rem);border:1px solid var(--border-color, #cbd5e1);background:var(--bg-surface, #ffffff);color:var(--text-primary, #0f172a)}.composer-textarea[data-v-cdf276fe]{width:100%;padding:.75rem;border-radius:var(--radius-md, .375rem);border:1px solid var(--border-color, #cbd5e1);background:var(--bg-surface, #ffffff);color:var(--text-primary, #0f172a);font-size:.875rem;font-family:inherit;resize:vertical}.composer-actions[data-v-cdf276fe]{display:flex;justify-content:space-between;align-items:center}.composer-tip[data-v-cdf276fe]{font-size:.75rem;color:var(--text-muted, #94a3b8)}.comments-stream[data-v-cdf276fe]{display:flex;flex-direction:column;gap:1rem}.comment-card[data-v-cdf276fe]{background:var(--bg-subtle, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:var(--radius-md, .5rem);padding:.875rem 1rem}.comment-card.is-reply[data-v-cdf276fe]{margin-left:2rem;margin-top:.5rem;background:var(--bg-surface, #ffffff)}.comment-header[data-v-cdf276fe]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.author-block[data-v-cdf276fe]{display:flex;align-items:center;gap:.65rem}.author-avatar[data-v-cdf276fe]{width:2rem;height:2rem;border-radius:50%;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.author-avatar.is-sm[data-v-cdf276fe]{width:1.5rem;height:1.5rem;font-size:.65rem;background:#64748b}.author-name[data-v-cdf276fe]{font-weight:600;font-size:.875rem;color:var(--text-primary, #0f172a)}.author-role[data-v-cdf276fe]{font-size:.75rem;color:var(--text-muted, #64748b);margin-left:.25rem}.comment-date[data-v-cdf276fe]{font-size:.75rem;color:var(--text-muted, #94a3b8);margin-left:.5rem}.badge-edited[data-v-cdf276fe]{font-size:.7rem;font-style:italic;color:var(--text-muted, #94a3b8);margin-left:.25rem}.comment-actions[data-v-cdf276fe]{display:flex;gap:.75rem}.action-link[data-v-cdf276fe]{background:none;border:none;font-size:.75rem;font-weight:500;color:#3b82f6;cursor:pointer;padding:0}.action-link[data-v-cdf276fe]:hover{text-decoration:underline}.action-link.is-danger[data-v-cdf276fe]{color:#ef4444}.comment-attachment-chip[data-v-cdf276fe]{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;padding:.25rem .5rem;background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;border-radius:.25rem;margin-bottom:.5rem}.comment-body[data-v-cdf276fe]{font-size:.875rem;color:var(--text-primary, #1e293b);line-height:1.45;white-space:pre-wrap}.replies-container[data-v-cdf276fe]{display:flex;flex-direction:column}.reply-composer-box[data-v-cdf276fe]{margin-left:2rem;margin-top:.5rem;display:flex;flex-direction:column;gap:.5rem}.obs-header-bar[data-v-cdf276fe]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.obs-filters[data-v-cdf276fe]{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.obs-list[data-v-cdf276fe]{display:flex;flex-direction:column;gap:1rem}.obs-card[data-v-cdf276fe]{background:var(--bg-subtle, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:var(--radius-md, .5rem);padding:1rem;display:flex;flex-direction:column;gap:.75rem}.obs-card.border-bloquante[data-v-cdf276fe]{border-left:4px solid #ef4444}.obs-card.border-majeure[data-v-cdf276fe]{border-left:4px solid #f59e0b}.obs-card.border-mineure[data-v-cdf276fe]{border-left:4px solid #3b82f6}.obs-card-header[data-v-cdf276fe]{display:flex;justify-content:space-between;align-items:center}.obs-title-block[data-v-cdf276fe]{display:flex;align-items:center;gap:.65rem}.severity-badge[data-v-cdf276fe]{font-size:.7rem;font-weight:700;padding:.2rem .5rem;border-radius:.25rem;text-transform:uppercase}.severity-badge.is-bloquante[data-v-cdf276fe]{background:#fee2e2;color:#dc2626}.severity-badge.is-majeure[data-v-cdf276fe]{background:#fef3c7;color:#d97706}.severity-badge.is-mineure[data-v-cdf276fe]{background:#e0f2fe;color:#0284c7}.status-pill[data-v-cdf276fe]{font-size:.75rem;font-weight:600;padding:.2rem .6rem;border-radius:9999px;text-transform:uppercase}.status-pill.is-ouverte[data-v-cdf276fe]{background:#fee2e2;color:#b91c1c}.status-pill.is-en_cours[data-v-cdf276fe]{background:#fef3c7;color:#b45309}.status-pill.is-resolue[data-v-cdf276fe]{background:#ecfdf5;color:#047857}.status-pill.is-verifiee[data-v-cdf276fe]{background:#eff6ff;color:#1d4ed8}.status-pill.is-cloturee[data-v-cdf276fe]{background:#f1f5f9;color:#64748b}.obs-title[data-v-cdf276fe]{font-size:.95rem;font-weight:600;margin:0;color:var(--text-primary, #0f172a)}.obs-description[data-v-cdf276fe]{font-size:.875rem;color:var(--text-secondary, #334155);margin:0;line-height:1.45}.obs-meta-row[data-v-cdf276fe]{display:flex;gap:1.25rem;flex-wrap:wrap;font-size:.785rem;color:var(--text-muted, #64748b)}.obs-resolution-panel[data-v-cdf276fe]{padding:.75rem;background:#ecfdf5;border-radius:var(--radius-sm, .25rem);border:1px solid #a7f3d0}.resolution-title[data-v-cdf276fe]{display:flex;align-items:center;gap:.35rem;font-weight:600;font-size:.8rem;color:#065f46;margin-bottom:.25rem}.resolution-text[data-v-cdf276fe]{font-size:.825rem;color:#064e3b;margin:0 0 .5rem}.resolution-revision-chip[data-v-cdf276fe]{font-size:.75rem;color:#047857}.obs-actions-row[data-v-cdf276fe]{display:flex;gap:.5rem;justify-content:flex-end}.btn-action-sm[data-v-cdf276fe]{font-size:.75rem;font-weight:600;padding:.35rem .75rem;border-radius:var(--radius-sm, .25rem);border:1px solid var(--border-color, #cbd5e1);background:var(--bg-surface, #ffffff);color:var(--text-primary, #0f172a);cursor:pointer}.btn-action-sm.is-primary[data-v-cdf276fe]{background:#3b82f6;color:#fff;border-color:#3b82f6}.btn-action-sm.is-success[data-v-cdf276fe]{background:#10b981;color:#fff;border-color:#10b981}.empty-state[data-v-cdf276fe]{text-align:center;padding:2.5rem 1rem;font-size:.875rem;color:var(--text-muted, #94a3b8)}.modal-form[data-v-cdf276fe]{display:flex;flex-direction:column;gap:1rem}.form-group[data-v-cdf276fe]{display:flex;flex-direction:column;gap:.35rem}.form-grid-2[data-v-cdf276fe]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-label[data-v-cdf276fe]{font-size:.8rem;font-weight:600;color:var(--text-secondary, #475569)}.form-input[data-v-cdf276fe],.form-select[data-v-cdf276fe],.form-textarea[data-v-cdf276fe]{width:100%;padding:.65rem;font-size:.875rem;border-radius:var(--radius-md, .375rem);border:1px solid var(--border-color, #cbd5e1);background:var(--bg-surface, #ffffff);color:var(--text-primary, #0f172a);font-family:inherit}.modal-actions[data-v-cdf276fe]{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1rem}.modal-info-text[data-v-cdf276fe]{font-size:.85rem;color:var(--text-secondary, #475569);margin-top:0}.panel-tabs[data-v-e43a72f4]{display:flex;gap:var(--space-2);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-2);margin-bottom:var(--space-4)}.panel-tab-btn[data-v-e43a72f4]{padding:6px 14px;font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.panel-tab-btn[data-v-e43a72f4]:hover{background:var(--color-border-subtle);color:var(--color-text-primary)}.panel-tab-btn.is-active[data-v-e43a72f4]{background:var(--color-primary-50);border-color:var(--color-primary-200);color:var(--color-primary-700)}.panel-form-stack[data-v-e43a72f4]{display:flex;flex-direction:column;gap:var(--space-6)}.form-section[data-v-e43a72f4]{display:flex;flex-direction:column;gap:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.section-head-row[data-v-e43a72f4]{display:flex;justify-content:space-between;align-items:center}.section-title[data-v-e43a72f4]{font-size:var(--text-sm);font-weight:700;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.04em;margin:0}.section-badge[data-v-e43a72f4]{font-size:11px;font-weight:600;color:var(--color-primary-600);background:var(--color-primary-50);padding:2px 8px;border-radius:var(--radius-full)}.safeguard-note[data-v-e43a72f4]{font-size:11px;font-weight:600;color:var(--color-success-700);background:var(--color-success-50);border:1px solid var(--color-success-200);padding:2px 8px;border-radius:var(--radius-full)}.section-hint[data-v-e43a72f4]{font-size:var(--text-xs);color:var(--color-text-muted);margin:0;line-height:1.4}.form-grid-2[data-v-e43a72f4]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.form-field[data-v-e43a72f4]{display:flex;flex-direction:column;gap:var(--space-1)}.field-label[data-v-e43a72f4]{font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary)}.required[data-v-e43a72f4]{color:var(--color-danger-600)}.form-input[data-v-e43a72f4],.form-select[data-v-e43a72f4]{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--text-sm);outline:none}.form-input[data-v-e43a72f4]:focus,.form-select[data-v-e43a72f4]:focus{border-color:var(--color-primary-500)}.chef-section[data-v-e43a72f4]{display:flex;flex-direction:column;gap:var(--space-2)}.add-manager-row[data-v-e43a72f4]{display:flex;gap:var(--space-2)}.departments-stack[data-v-e43a72f4]{display:flex;flex-direction:column;gap:var(--space-3)}.dept-card[data-v-e43a72f4]{background:var(--color-bg-subtle, rgba(0,0,0,.02));border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.dept-header[data-v-e43a72f4]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.dept-full-label[data-v-e43a72f4]{font-size:var(--text-xs);font-weight:600;color:var(--color-text-primary)}.dept-fields-grid[data-v-e43a72f4]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-3)}.mt-2[data-v-e43a72f4]{margin-top:var(--space-2)}.mt-3[data-v-e43a72f4]{margin-top:var(--space-3)}.drawer-actions-bar[data-v-e43a72f4]{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--color-border);padding-top:var(--space-4);margin-top:var(--space-4)}.right-actions[data-v-e43a72f4]{display:flex;gap:var(--space-2)}.modal-alert-error[data-v-e43a72f4]{padding:10px 14px;background:var(--color-danger-50);border:1px solid var(--color-danger-200);color:var(--color-danger-700);border-radius:var(--radius-md);font-size:var(--text-sm)}.modal-alert-success[data-v-e43a72f4]{padding:10px 14px;background:var(--color-success-50);border:1px solid var(--color-success-200);color:var(--color-success-700);border-radius:var(--radius-md);font-size:var(--text-sm)}.dept-config-stack[data-v-e43a72f4]{display:flex;flex-direction:column;gap:var(--space-3)}.dept-toggle-row[data-v-e43a72f4]{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);background:var(--color-bg)}.dept-toggle-head[data-v-e43a72f4]{display:flex;align-items:center}.dept-checkbox-label[data-v-e43a72f4]{display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.dept-title-text[data-v-e43a72f4]{font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary)}.dept-toggle-body[data-v-e43a72f4]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px dashed var(--color-border)}.phases-config-grid[data-v-e43a72f4]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.phase-config-card[data-v-e43a72f4]{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);background:var(--color-bg)}.phase-card-head[data-v-e43a72f4]{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--space-2)}.checkbox-label[data-v-e43a72f4]{display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.phase-name[data-v-e43a72f4]{font-weight:700;font-size:var(--text-sm);color:var(--color-primary-600)}.phase-desc[data-v-e43a72f4]{font-size:11px;color:var(--color-text-muted)}.phase-card-fields[data-v-e43a72f4]{display:flex;flex-direction:column;gap:var(--space-2);border-top:1px dashed var(--color-border);padding-top:var(--space-2)}.empty-state-box[data-v-e43a72f4]{padding:var(--space-8);text-align:center;font-size:var(--text-sm);color:var(--color-text-muted)}.project-deliverables-list[data-v-e43a72f4]{display:flex;flex-direction:column;gap:var(--space-2)}.proj-deliv-card[data-v-e43a72f4]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.proj-deliv-head[data-v-e43a72f4]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:4px}.deliv-ref[data-v-e43a72f4]{font-family:var(--font-mono, monospace);font-size:var(--text-xs);font-weight:600;color:var(--color-primary-600)}.deliv-phase[data-v-e43a72f4],.deliv-ind[data-v-e43a72f4]{font-size:11px;color:var(--color-text-secondary)}.deliv-title[data-v-e43a72f4]{font-size:var(--text-sm);font-weight:500;color:var(--color-text-primary);margin-bottom:4px}.deliv-meta[data-v-e43a72f4]{display:flex;justify-content:space-between;font-size:11px;color:var(--color-text-muted)}.add-member-card[data-v-e43a72f4]{background:var(--color-bg-subtle, rgba(0,0,0,.02));border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.member-form-title[data-v-e43a72f4]{font-size:var(--text-xs);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--space-2);text-transform:uppercase}.members-stack[data-v-e43a72f4]{display:flex;flex-direction:column;gap:var(--space-2)}.member-row[data-v-e43a72f4]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.member-info[data-v-e43a72f4]{display:flex;align-items:center;gap:var(--space-3)}.member-name[data-v-e43a72f4]{font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary)}.member-role[data-v-e43a72f4]{font-size:var(--text-xs);color:var(--color-text-secondary)}.member-hours[data-v-e43a72f4]{font-size:var(--text-xs);color:var(--color-text-muted);font-family:var(--font-mono, monospace)}.member-remove-btn[data-v-e43a72f4]{background:none;border:none;font-size:18px;color:var(--color-danger-600);cursor:pointer;padding:0 4px}.conflict-content[data-v-3caa132a]{display:flex;flex-direction:column;gap:12px}.conflict-alert-icon[data-v-3caa132a]{width:44px;height:44px;border-radius:var(--radius-full);background:var(--color-warning-bg);color:var(--color-warning);display:flex;align-items:center;justify-content:center}.conflict-text[data-v-3caa132a]{margin:0;font-size:13.5px;color:var(--text-secondary);line-height:1.5}.admin-notice[data-v-3caa132a]{margin:0;padding:8px 12px;border-radius:var(--radius-sm);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);color:var(--color-danger-text);font-size:12px;font-weight:500}.import-content[data-v-23dea1e3]{display:flex;flex-direction:column;gap:18px}.file-picker-label[data-v-23dea1e3]{display:flex;flex-direction:column;gap:8px;cursor:pointer}.field-title[data-v-23dea1e3]{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.dropzone-box[data-v-23dea1e3]{display:flex;align-items:center;gap:14px;padding:16px 20px;border:2px dashed var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface-subtle);transition:all var(--transition-fast)}.dropzone-box[data-v-23dea1e3]:hover{border-color:var(--primary);background:var(--bg-surface)}.upload-icon[data-v-23dea1e3]{color:var(--primary);flex-shrink:0}.dropzone-text[data-v-23dea1e3]{display:flex;flex-direction:column;gap:3px;min-width:0}.file-name-text[data-v-23dea1e3]{font-size:13.5px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-hint[data-v-23dea1e3]{font-size:12px;color:var(--text-muted)}.import-mode-group[data-v-23dea1e3]{display:flex;flex-direction:column;gap:8px}.radio-cards[data-v-23dea1e3]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.radio-card[data-v-23dea1e3]{padding:14px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);cursor:pointer;transition:all var(--transition-fast)}.radio-card[data-v-23dea1e3]:hover{border-color:var(--border-strong)}.radio-card.is-selected[data-v-23dea1e3]{border-color:var(--primary);background:var(--primary-light);box-shadow:0 0 0 2px var(--primary)}.radio-info strong[data-v-23dea1e3]{display:block;font-size:13.5px;color:var(--text-primary);margin-bottom:4px}.radio-info p[data-v-23dea1e3]{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.4}.detection-summary[data-v-23dea1e3]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--bg-surface-subtle);border-radius:var(--radius-md);border:1px solid var(--border-subtle);flex-wrap:wrap;gap:10px}.summary-stat[data-v-23dea1e3]{display:flex;gap:8px}.summary-valid[data-v-23dea1e3]{font-size:12px;color:var(--color-success-text);font-weight:600}.import-error[data-v-23dea1e3]{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger-border);font-size:13px;font-weight:500}@media(max-width:640px){.radio-cards[data-v-23dea1e3]{grid-template-columns:1fr}}.users-tabs-bar[data-v-6067e629]{display:flex;gap:.5rem;border-bottom:2px solid #e2e8f0;margin-bottom:1rem}.tab-btn[data-v-6067e629]{background:transparent;border:none;border-bottom:2px solid transparent;padding:.5rem 1rem;font-weight:600;font-size:.9rem;color:#64748b;cursor:pointer;margin-bottom:-2px}.tab-btn.active[data-v-6067e629]{color:#0284c7;border-bottom-color:#0284c7}.tab-btn[data-v-6067e629]:hover:not(.active){color:#334155}.alert-success[data-v-6067e629]{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;margin:.5rem 0}.small[data-v-6067e629]{padding:.25rem .5rem;font-size:.8rem}.chart-body[data-v-5bc6099b]{position:relative;height:230px;width:100%}.chart-body canvas[data-v-5bc6099b]{max-height:230px}.chart-empty[data-v-5bc6099b]{display:grid;place-items:center;height:230px;margin:0;color:var(--text-muted);font-size:13px}.app-card[data-v-12e737c6]{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:all var(--transition-normal);overflow:hidden}.is-elevated[data-v-12e737c6]{box-shadow:var(--shadow-md);border-color:var(--border-default)}.is-hoverable[data-v-12e737c6]:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--border-strong)}.card-header[data-v-12e737c6]{padding:16px 20px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;gap:12px}.card-body[data-v-12e737c6]{flex:1}.card-pad-none .card-body[data-v-12e737c6]{padding:0}.card-pad-sm .card-body[data-v-12e737c6]{padding:12px 16px}.card-pad-md .card-body[data-v-12e737c6]{padding:18px 20px}.card-pad-lg .card-body[data-v-12e737c6]{padding:24px 28px}.card-footer[data-v-12e737c6]{padding:14px 20px;border-top:1px solid var(--border-subtle);background:var(--bg-surface-subtle);display:flex;align-items:center;justify-content:space-between;gap:12px}.app-skeleton-group[data-v-57e1a018]{display:flex;flex-direction:column;gap:8px;width:100%}.app-skeleton[data-v-57e1a018]{background:linear-gradient(90deg,var(--bg-surface-subtle) 25%,var(--bg-surface-active) 37%,var(--bg-surface-subtle) 63%);background-size:400% 100%;animation:skeleton-pulse-57e1a018 1.4s ease infinite;border-radius:var(--radius-sm)}@keyframes skeleton-pulse-57e1a018{0%{background-position:100% 50%}to{background-position:0 50%}}.skeleton-text[data-v-57e1a018]{height:14px;width:100%}.skeleton-rect[data-v-57e1a018]{height:40px;width:100%;border-radius:var(--radius-md)}.skeleton-circle[data-v-57e1a018]{width:36px;height:36px;border-radius:var(--radius-full)}.skeleton-card[data-v-57e1a018]{height:120px;width:100%;border-radius:var(--radius-lg)}.skeleton-row[data-v-57e1a018]{height:48px;width:100%;border-radius:var(--radius-sm)}.dashboard-container[data-v-85c15c6f]{display:flex;flex-direction:column;gap:20px}.dashboard-header[data-v-85c15c6f]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.dashboard-title[data-v-85c15c6f]{margin:0;font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.dashboard-subtitle[data-v-85c15c6f]{margin:4px 0 0;font-size:13.5px;color:var(--text-secondary)}.header-stamp[data-v-85c15c6f]{display:flex;align-items:center;gap:10px}.btn-subtle[data-v-85c15c6f]{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:12.5px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-subtle[data-v-85c15c6f]:hover{background:var(--bg-hover);border-color:var(--border-hover);color:var(--color-primary)}.dashboard-error[data-v-85c15c6f]{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);color:var(--color-danger-text);font-size:13.5px;font-weight:500}.dashboard-skeleton[data-v-85c15c6f]{display:flex;flex-direction:column;gap:20px}.kpi-grid[data-v-85c15c6f]{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.kpi-card[data-v-85c15c6f]{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:14px 16px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:6px;position:relative;transition:transform .15s ease,box-shadow .15s ease}.kpi-card.clickable[data-v-85c15c6f]{cursor:pointer}.kpi-card.clickable[data-v-85c15c6f]:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-primary-light)}.kpi-card.is-alert[data-v-85c15c6f]{border-color:#dc262659;background:linear-gradient(180deg,var(--bg-surface) 0%,rgba(254,242,242,.4) 100%)}.kpi-icon-wrap[data-v-85c15c6f]{width:32px;height:32px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.icon-primary[data-v-85c15c6f]{background:#1e3a8a1a;color:#1e3a8a}.icon-danger[data-v-85c15c6f]{background:#dc26261a;color:#dc2626}.icon-warning[data-v-85c15c6f]{background:#d977061a;color:#d97706}.icon-haute[data-v-85c15c6f]{background:#7c3aed1a;color:#7c3aed}.icon-info[data-v-85c15c6f]{background:#0ea5e91a;color:#0284c7}.icon-success[data-v-85c15c6f]{background:#16a34a1a;color:#16a34a}.kpi-body[data-v-85c15c6f]{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:2px}.kpi-value[data-v-85c15c6f]{font-size:24px;font-weight:800;color:var(--text-primary);line-height:1;letter-spacing:-.02em}.kpi-value.danger-text[data-v-85c15c6f]{color:var(--color-danger)}.kpi-value.success-text[data-v-85c15c6f]{color:#16a34a}.kpi-label[data-v-85c15c6f]{font-size:12px;font-weight:600;color:var(--text-secondary);text-align:right}.kpi-sub[data-v-85c15c6f]{font-size:11.5px;color:var(--text-muted)}.executive-widgets-grid[data-v-85c15c6f]{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:16px}.widget-card[data-v-85c15c6f]{padding:16px}.widget-header[data-v-85c15c6f]{display:flex;align-items:center;justify-content:space-between;width:100%}.milestones-list[data-v-85c15c6f],.observations-list[data-v-85c15c6f]{display:flex;flex-direction:column;gap:8px;margin-top:8px}.milestone-item[data-v-85c15c6f]{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--bg-hover);border-radius:var(--radius-sm);font-size:12.5px}.milestone-info[data-v-85c15c6f]{display:flex;flex-direction:column;gap:2px}.milestone-title[data-v-85c15c6f]{font-weight:600;color:var(--text-primary)}.milestone-project[data-v-85c15c6f]{font-size:11px;color:var(--text-secondary)}.milestone-meta[data-v-85c15c6f]{display:flex;align-items:center;gap:8px}.milestone-date[data-v-85c15c6f]{font-size:12px;font-weight:500;color:var(--text-primary)}.obs-item[data-v-85c15c6f]{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--bg-hover);border-radius:var(--radius-sm);font-size:12.5px}.obs-label-wrap[data-v-85c15c6f]{display:flex;align-items:center;gap:10px}.obs-badge[data-v-85c15c6f]{padding:2px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:700}.badge-bloquante[data-v-85c15c6f]{background:#dc262626;color:#dc2626}.badge-majeure[data-v-85c15c6f]{background:#ea580c26;color:#ea580c}.badge-mineure[data-v-85c15c6f]{background:#47556926;color:#475569}.obs-count-label[data-v-85c15c6f]{font-weight:600;color:var(--text-primary)}.obs-total[data-v-85c15c6f]{font-size:11.5px;color:var(--text-muted)}.charts-grid[data-v-85c15c6f]{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:18px}.chart-card[data-v-85c15c6f]{padding:16px}.chart-title[data-v-85c15c6f]{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.chart-content[data-v-85c15c6f]{margin-top:12px;position:relative;min-height:240px;display:flex;flex-direction:column;justify-content:center}.custom-chart-legend[data-v-85c15c6f]{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:12px 0 0;justify-content:center}.legend-pill[data-v-85c15c6f]{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;background:var(--bg-hover);border-radius:var(--radius-full);font-size:11.5px;color:var(--text-secondary)}.legend-pill i[data-v-85c15c6f]{width:8px;height:8px;border-radius:50%;display:inline-block}.legend-pill strong[data-v-85c15c6f]{color:var(--text-primary)}@media(max-width:768px){.charts-grid[data-v-85c15c6f],.executive-widgets-grid[data-v-85c15c6f]{grid-template-columns:1fr}}.notifications-center-page[data-v-4cb6af0c]{display:flex;flex-direction:column;gap:var(--space-5);max-width:1100px;margin:0 auto;padding:var(--space-4) 0}.notifications-header[data-v-4cb6af0c]{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}.title-row[data-v-4cb6af0c]{display:flex;align-items:center;gap:var(--space-3)}.page-title[data-v-4cb6af0c]{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text-main);margin:0}.page-desc[data-v-4cb6af0c]{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:var(--space-1)}.header-actions[data-v-4cb6af0c]{display:flex;align-items:center;gap:var(--space-2)}.notifications-filters-bar[data-v-4cb6af0c]{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-wrap:wrap}.status-tabs[data-v-4cb6af0c]{display:inline-flex;align-items:center;background:var(--color-bg-subtle, #f1f5f9);padding:3px;border-radius:var(--radius-md, 8px);border:1px solid var(--color-border, #e2e8f0);gap:2px}.tab-btn[data-v-4cb6af0c]{display:inline-flex;align-items:center;gap:var(--space-2, 8px);padding:6px 14px;font-size:var(--font-size-sm, 13px);font-weight:500;color:var(--color-text-muted, #64748b);background:transparent;border:1px solid transparent;border-radius:calc(var(--radius-md, 8px) - 2px);cursor:pointer;transition:all .15s ease-in-out;white-space:nowrap}.tab-btn[data-v-4cb6af0c]:hover{color:var(--color-text-main, #0f172a);background:#0000000a}.tab-btn.active[data-v-4cb6af0c]{color:var(--color-primary, #0284c7);background:var(--color-surface, #ffffff);border-color:#0000000f;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a;font-weight:600}.count-pill[data-v-4cb6af0c]{font-size:11px;padding:1px 6px;border-radius:var(--radius-full);background:var(--color-bg-subtle);color:var(--color-text-muted)}.count-unread[data-v-4cb6af0c]{background:var(--color-danger);color:#fff;font-weight:700}.filter-controls[data-v-4cb6af0c]{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.priority-select[data-v-4cb6af0c],.search-input[data-v-4cb6af0c]{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-main)}.search-input[data-v-4cb6af0c]{min-width:220px}.notifications-alert[data-v-4cb6af0c]{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.alert-error[data-v-4cb6af0c]{background:var(--color-danger-subtle);color:var(--color-danger);border:1px solid var(--color-danger-border)}.alert-success[data-v-4cb6af0c]{background:var(--color-success-subtle);color:var(--color-success);border:1px solid var(--color-success-border)}.notifications-skeleton[data-v-4cb6af0c]{display:flex;flex-direction:column;gap:var(--space-3)}.skeleton-card[data-v-4cb6af0c]{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-2)}.skeleton-line-sm[data-v-4cb6af0c],.skeleton-line-md[data-v-4cb6af0c],.skeleton-line-lg[data-v-4cb6af0c]{background:var(--color-bg-subtle);border-radius:var(--radius-sm);animation:pulse-4cb6af0c 1.5s infinite}.skeleton-line-sm[data-v-4cb6af0c]{width:120px;height:14px}.skeleton-line-lg[data-v-4cb6af0c]{width:80%;height:18px}.skeleton-line-md[data-v-4cb6af0c]{width:60%;height:14px}@keyframes pulse-4cb6af0c{0%,to{opacity:.6}50%{opacity:.3}}.notifications-groups-container[data-v-4cb6af0c]{display:flex;flex-direction:column;gap:var(--space-5)}.notification-group-section[data-v-4cb6af0c]{display:flex;flex-direction:column;gap:var(--space-2)}.group-header-label[data-v-4cb6af0c]{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--color-text-muted);margin:0 var(--space-2)}.group-items-list[data-v-4cb6af0c]{display:flex;flex-direction:column;gap:var(--space-2)}.notification-card[data-v-4cb6af0c]{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.notification-card[data-v-4cb6af0c]:hover{border-color:var(--color-primary-subtle);box-shadow:var(--shadow-sm)}.notification-card.card-unread[data-v-4cb6af0c]{background:var(--color-surface-hover, var(--color-surface));border-left:4px solid var(--color-primary)}.notification-card.priority-urgente.card-unread[data-v-4cb6af0c]{border-left-color:var(--color-danger)}.notification-card.priority-haute.card-unread[data-v-4cb6af0c]{border-left-color:var(--color-warning)}.unread-indicator[data-v-4cb6af0c]{padding-top:var(--space-1);width:12px}.indicator-dot[data-v-4cb6af0c]{display:block;width:8px;height:8px;border-radius:50%;background:var(--color-primary)}.priority-urgente .indicator-dot[data-v-4cb6af0c]{background:var(--color-danger)}.priority-haute .indicator-dot[data-v-4cb6af0c]{background:var(--color-warning)}.notification-body[data-v-4cb6af0c]{flex:1;min-width:0}.notification-meta-top[data-v-4cb6af0c]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-1)}.event-category-tag[data-v-4cb6af0c]{font-size:11px;font-weight:600;text-transform:uppercase;color:var(--color-text-muted)}.project-tag[data-v-4cb6af0c]{font-size:11px;font-weight:600;color:var(--color-primary);background:var(--color-primary-subtle);padding:1px 6px;border-radius:var(--radius-sm)}.notification-timestamp[data-v-4cb6af0c]{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-left:auto}.notification-title[data-v-4cb6af0c]{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-main);margin:0 0 var(--space-1) 0}.notification-message[data-v-4cb6af0c]{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0;line-height:1.45}.notification-card-actions[data-v-4cb6af0c]{display:flex;align-items:center;gap:var(--space-2);margin-left:var(--space-2)}.status-read-badge[data-v-4cb6af0c]{font-size:11px;color:var(--color-text-muted)}.preferences-modal-content[data-v-4cb6af0c]{display:flex;flex-direction:column;gap:var(--space-4)}.modal-lead[data-v-4cb6af0c]{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.preferences-table-wrapper[data-v-4cb6af0c]{max-height:440px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md)}.preferences-table[data-v-4cb6af0c]{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.preferences-table th[data-v-4cb6af0c]{background:var(--color-bg-subtle);padding:var(--space-2) var(--space-3);font-weight:600;color:var(--color-text-muted);text-align:left;border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:1}.th-center[data-v-4cb6af0c],.td-center[data-v-4cb6af0c]{text-align:center;width:90px}.th-offset[data-v-4cb6af0c],.td-offset[data-v-4cb6af0c]{width:140px;text-align:right}.preferences-table td[data-v-4cb6af0c]{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);vertical-align:middle}.pref-event-name[data-v-4cb6af0c]{font-weight:600;color:var(--color-text-main)}.pref-event-sub[data-v-4cb6af0c]{display:flex;align-items:center;gap:var(--space-2);margin-top:2px}.pref-event-sub code[data-v-4cb6af0c]{font-size:10px;color:var(--color-text-muted)}.badge-cat[data-v-4cb6af0c]{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-bg-subtle);padding:0 4px;border-radius:var(--radius-sm)}.offset-select[data-v-4cb6af0c]{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-main)}.toggle-switch[data-v-4cb6af0c]{position:relative;display:inline-block;width:36px;height:20px}.toggle-switch input[data-v-4cb6af0c]{opacity:0;width:0;height:0}.slider[data-v-4cb6af0c]{position:absolute;cursor:pointer;inset:0;background-color:var(--color-border);transition:.2s;border-radius:20px}.slider[data-v-4cb6af0c]:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:#fff;transition:.2s;border-radius:50%}input:checked+.slider[data-v-4cb6af0c]{background-color:var(--color-primary)}input:checked+.slider[data-v-4cb6af0c]:before{transform:translate(16px)}.notifications-subnav[data-v-4cb6af0c]{display:flex;gap:var(--space-2);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-2)}.subnav-tab[data-v-4cb6af0c]{background:transparent;border:none;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-muted);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.subnav-tab[data-v-4cb6af0c]:hover{color:var(--color-text-main);background:var(--color-bg-subtle)}.subnav-tab.active[data-v-4cb6af0c]{color:var(--color-primary);background:var(--color-bg-subtle);border-bottom:2px solid var(--color-primary)}.quiet-hours-card[data-v-4cb6af0c]{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.quiet-hours-title[data-v-4cb6af0c]{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-main)}.quiet-hours-desc[data-v-4cb6af0c]{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:0}.quiet-hours-grid[data-v-4cb6af0c]{display:flex;gap:var(--space-3);flex-wrap:wrap}.quiet-field[data-v-4cb6af0c]{display:flex;flex-direction:column;gap:4px;font-size:var(--font-size-xs);color:var(--color-text-muted)}.field-grow[data-v-4cb6af0c]{flex-grow:1}.quiet-input[data-v-4cb6af0c]{padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-main);font-size:var(--font-size-xs)}.deliveries-panel[data-v-4cb6af0c]{display:flex;flex-direction:column;gap:var(--space-4)}.deliveries-table-wrapper[data-v-4cb6af0c]{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.deliveries-table[data-v-4cb6af0c]{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.deliveries-table th[data-v-4cb6af0c]{background:var(--color-bg-subtle);padding:var(--space-2) var(--space-3);text-align:left;font-weight:600;color:var(--color-text-muted);border-bottom:1px solid var(--color-border)}.deliveries-table td[data-v-4cb6af0c]{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);vertical-align:middle}.deliv-time[data-v-4cb6af0c]{white-space:nowrap;font-size:var(--font-size-xs);color:var(--color-text-muted)}.channel-badge[data-v-4cb6af0c]{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:600;background:var(--color-bg-subtle)}.channel-badge.email[data-v-4cb6af0c]{color:#0369a1;background:#e0f2fe}.channel-badge.in_app[data-v-4cb6af0c]{color:#4338ca;background:#e0e7ff}.delivery-status-badge[data-v-4cb6af0c]{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:600;text-transform:uppercase}.delivery-status-badge.delivered[data-v-4cb6af0c]{color:#15803d;background:#dcfce7}.delivery-status-badge.accepted[data-v-4cb6af0c]{color:#047857;background:#d1fae5}.delivery-status-badge.failed[data-v-4cb6af0c],.delivery-status-badge.permanently_failed[data-v-4cb6af0c]{color:#b91c1c;background:#fee2e2}.deliv-subject[data-v-4cb6af0c]{font-weight:600;color:var(--color-text-main)}.deliv-email[data-v-4cb6af0c]{font-size:var(--font-size-xs);color:var(--color-text-muted)}.deliv-notif-title[data-v-4cb6af0c]{font-weight:500}.deliv-notif-type[data-v-4cb6af0c]{font-size:10px;color:var(--color-text-muted)}.reports-workspace[data-v-76666def]{display:flex;flex-direction:column;gap:16px}.workspace-header[data-v-76666def]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.workspace-title[data-v-76666def]{margin:0;font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.workspace-subtitle[data-v-76666def]{margin:4px 0 0;font-size:13.5px;color:var(--text-secondary)}.header-actions[data-v-76666def]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.report-nav-tabs[data-v-76666def]{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.report-nav-btn[data-v-76666def]{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all .15s ease}.report-nav-btn[data-v-76666def]:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-hover)}.report-nav-btn.is-active[data-v-76666def]{background:#1e3a8a;border-color:#1e3a8a;color:#fff;font-weight:600}.report-code-badge[data-v-76666def]{font-family:monospace;font-size:11px;font-weight:700;padding:2px 5px;border-radius:var(--radius-sm);background:#00000014}.report-nav-btn.is-active .report-code-badge[data-v-76666def]{background:#fff3;color:#fff}.report-nav-btn.is-restricted[data-v-76666def]{opacity:.75}.lock-icon[data-v-76666def]{font-size:11px}.active-tab-info[data-v-76666def]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:var(--bg-surface);border:1px solid var(--border-default);border-left:4px solid #1e3a8a;border-radius:var(--radius-md);font-size:13px;flex-wrap:wrap}.info-content[data-v-76666def]{display:flex;flex-direction:column;gap:2px}.info-title[data-v-76666def]{color:var(--text-primary);font-size:13.5px}.info-desc[data-v-76666def]{color:var(--text-secondary)}.info-meta[data-v-76666def]{display:flex;flex-direction:column;align-items:flex-end;font-size:11.5px;color:var(--text-muted)}.filter-panel[data-v-76666def]{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:12px 16px}.filter-fields-row[data-v-76666def]{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.filter-field[data-v-76666def]{display:flex;flex-direction:column;gap:4px;min-width:140px;flex:1}.filter-field label[data-v-76666def]{font-size:11.5px;font-weight:600;color:var(--text-secondary)}.form-input[data-v-76666def]{padding:6px 10px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:12.5px}.filter-actions-inline[data-v-76666def]{display:flex;align-items:center;gap:8px;padding-bottom:1px}.reports-error-state[data-v-76666def]{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);color:var(--color-danger-text);font-size:13px}.reports-loading-state[data-v-76666def]{display:flex;flex-direction:column;gap:16px}.summary-skeleton[data-v-76666def]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.report-summary-cards[data-v-76666def]{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.summary-card[data-v-76666def]{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:10px 14px;display:flex;flex-direction:column;gap:4px}.summary-label[data-v-76666def]{font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.02em}.summary-value[data-v-76666def]{font-size:18px;font-weight:800;color:#1e3a8a;line-height:1.1}.report-table-card[data-v-76666def]{padding:16px}.table-card-header[data-v-76666def]{display:flex;align-items:center;justify-content:space-between;width:100%}.table-title-wrap[data-v-76666def]{display:flex;align-items:baseline;gap:10px}.table-card-title[data-v-76666def]{margin:0;font-size:14px;font-weight:700;color:var(--text-primary)}.table-row-count[data-v-76666def]{font-size:12px;color:var(--text-muted)}.table-responsive[data-v-76666def]{overflow-x:auto;margin-top:12px}.data-table[data-v-76666def]{width:100%;border-collapse:collapse;font-size:12.5px}.table-th[data-v-76666def]{text-align:left;padding:8px 12px;background:#1e293b;color:#fff;font-weight:600;font-size:11.5px;border-right:1px solid rgba(255,255,255,.1);white-space:nowrap}.table-th[data-v-76666def]:last-child{border-right:none}.table-row[data-v-76666def]:nth-child(2n){background:var(--bg-hover)}.table-td[data-v-76666def]{padding:8px 12px;border-bottom:1px solid var(--border-default);color:var(--text-primary);white-space:nowrap}.empty-cell[data-v-76666def]{text-align:center;padding:32px 16px;color:var(--text-muted);font-style:italic}.status-cell-badge[data-v-76666def]{display:inline-block;padding:2px 7px;border-radius:var(--radius-sm);font-size:10.5px;font-weight:700}.badge-success[data-v-76666def]{background:#16a34a26;color:#15803d}.badge-danger[data-v-76666def]{background:#dc262626;color:#b91c1c}.badge-warning[data-v-76666def]{background:#ea580c26;color:#c2410c}.badge-neutral[data-v-76666def]{background:#64748b26;color:#475569}.text-danger-bold[data-v-76666def]{color:#dc2626;font-weight:700}@media print{.header-actions[data-v-76666def],.report-nav-tabs[data-v-76666def],.filter-panel[data-v-76666def]{display:none!important}}.saved-views-card[data-v-0a32d79d]{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:14px 18px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.views-header[data-v-0a32d79d]{display:flex;align-items:center;justify-content:space-between}.views-title-area[data-v-0a32d79d]{display:flex;flex-direction:column;gap:2px}.views-heading[data-v-0a32d79d]{margin:0;font-size:13.5px;font-weight:700;color:var(--text-primary)}.views-sub[data-v-0a32d79d]{font-size:11.5px;color:var(--text-muted)}.link-btn[data-v-0a32d79d]{background:transparent;border:none;color:var(--primary);font-size:12px;font-weight:600;cursor:pointer;padding:0}.link-btn[data-v-0a32d79d]:hover{text-decoration:underline}.create-view-row[data-v-0a32d79d]{display:flex;gap:10px;align-items:center}.name-input[data-v-0a32d79d]{flex:1;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:7px 12px;font-family:var(--font-sans);font-size:13px;color:var(--text-primary);outline:none}.name-input[data-v-0a32d79d]:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-focus)}.hint-text[data-v-0a32d79d]{margin:0;font-size:12px;color:var(--text-muted)}.error-msg[data-v-0a32d79d]{margin:0;font-size:12px;color:var(--color-danger);font-weight:500}.success-msg[data-v-0a32d79d]{margin:0;font-size:12px;color:var(--color-success-text);font-weight:500}.views-list[data-v-0a32d79d]{display:flex;flex-direction:column;gap:8px}.view-item[data-v-0a32d79d]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--bg-surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md);gap:12px;flex-wrap:wrap;transition:all var(--transition-fast)}.view-item.is-active[data-v-0a32d79d]{background:var(--primary-light);border-color:var(--primary-border)}.view-item-info[data-v-0a32d79d]{display:flex;flex-direction:column;gap:2px}.view-name-row[data-v-0a32d79d]{display:flex;align-items:center;gap:8px}.view-name[data-v-0a32d79d]{font-size:13px;color:var(--text-primary)}.view-badge[data-v-0a32d79d]{font-size:11px;color:var(--text-muted)}.view-rename-box[data-v-0a32d79d]{display:flex;align-items:center;gap:6px}.rename-input[data-v-0a32d79d]{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:4px 8px;font-size:12px;color:var(--text-primary);outline:none}.view-actions[data-v-0a32d79d]{display:flex;align-items:center;gap:6px}.app-input-group[data-v-4bb5ee80]{display:flex;flex-direction:column;gap:6px;width:100%}.app-input-label[data-v-4bb5ee80]{font-family:var(--font-sans);font-size:12.5px;font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.required-mark[data-v-4bb5ee80]{color:var(--color-danger)}.input-wrapper[data-v-4bb5ee80]{position:relative;display:flex;align-items:center;width:100%;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);transition:all var(--transition-fast)}.input-wrapper[data-v-4bb5ee80]:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-focus)}.has-error .input-wrapper[data-v-4bb5ee80]{border-color:var(--color-danger)}.has-error .input-wrapper[data-v-4bb5ee80]:focus-within{box-shadow:0 0 0 3px #dc262633}.is-disabled .input-wrapper[data-v-4bb5ee80]{background:var(--bg-surface-subtle);border-color:var(--border-subtle);cursor:not-allowed;opacity:.7}.app-input-field[data-v-4bb5ee80]{flex:1;width:100%;border:none;background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-size:13.5px;padding:8px 12px;outline:none;border-radius:var(--radius-md)}.app-input-field[data-v-4bb5ee80]::placeholder{color:var(--text-placeholder)}.app-input-field[data-v-4bb5ee80]:disabled{cursor:not-allowed;color:var(--text-muted)}.input-group-sm .app-input-field[data-v-4bb5ee80]{font-size:12px;padding:5px 9px}.input-group-lg .app-input-field[data-v-4bb5ee80]{font-size:15px;padding:11px 14px}.input-prefix[data-v-4bb5ee80],.input-suffix[data-v-4bb5ee80]{display:flex;align-items:center;padding:0 10px;color:var(--text-muted)}.app-input-error[data-v-4bb5ee80]{font-size:12px;color:var(--color-danger);font-weight:500}.app-input-hint[data-v-4bb5ee80]{font-size:11.5px;color:var(--text-muted)}.clients-view[data-v-2c7f1593]{display:flex;flex-direction:column;gap:var(--space-6)}.view-header[data-v-2c7f1593]{display:flex;justify-content:space-between;align-items:flex-start}.view-title[data-v-2c7f1593]{font-size:var(--text-2xl);font-weight:700;color:var(--color-text);margin:0}.view-subtitle[data-v-2c7f1593]{font-size:var(--text-sm);color:var(--color-text-muted);margin:var(--space-1) 0 0 0}.clients-layout[data-v-2c7f1593]{display:grid;grid-template-columns:380px 1fr;gap:var(--space-6);min-height:600px}@media(max-width:900px){.clients-layout[data-v-2c7f1593]{grid-template-columns:1fr}}.clients-list-pane[data-v-2c7f1593]{display:flex;flex-direction:column;gap:var(--space-4)}.search-bar[data-v-2c7f1593]{margin-bottom:var(--space-2)}.client-cards[data-v-2c7f1593]{display:flex;flex-direction:column;gap:var(--space-3);max-height:720px;overflow-y:auto}.client-card[data-v-2c7f1593]{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.client-card[data-v-2c7f1593]:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.client-card.active[data-v-2c7f1593]{border-color:var(--color-primary);background:var(--color-primary-subtle, rgba(37, 99, 235, .05))}.client-card-header[data-v-2c7f1593]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-1)}.client-code-badge[data-v-2c7f1593]{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;color:var(--color-primary);background:#2563eb1a;padding:2px 6px;border-radius:var(--radius-sm)}.client-projects-count[data-v-2c7f1593]{font-size:var(--text-xs);color:var(--color-text-muted)}.client-name[data-v-2c7f1593]{font-size:var(--text-base);font-weight:600;color:var(--color-text);margin-bottom:var(--space-2)}.client-meta[data-v-2c7f1593]{display:flex;flex-direction:column;gap:2px;font-size:var(--text-xs);color:var(--color-text-muted)}.client-details-pane[data-v-2c7f1593]{display:flex;flex-direction:column}.details-card[data-v-2c7f1593]{padding:var(--space-6)}.details-card-header[data-v-2c7f1593]{display:flex;justify-content:space-between;align-items:flex-start;width:100%}.details-code[data-v-2c7f1593]{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:700;color:var(--color-primary)}.details-name[data-v-2c7f1593]{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin:var(--space-1) 0 0 0}.details-actions[data-v-2c7f1593]{display:flex;gap:var(--space-2)}.client-info-grid[data-v-2c7f1593]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-top:var(--space-4)}.info-block[data-v-2c7f1593]{display:flex;flex-direction:column;gap:var(--space-1)}.info-label[data-v-2c7f1593]{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;color:var(--color-text-muted)}.info-value[data-v-2c7f1593]{font-size:var(--text-sm);font-weight:500;color:var(--color-text)}.client-notes[data-v-2c7f1593]{margin-top:var(--space-4);padding:var(--space-3);background:var(--color-bg-subtle, rgba(0,0,0,.02));border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text)}.section-divider[data-v-2c7f1593]{height:1px;background:var(--color-border);margin:var(--space-6) 0}.section-header[data-v-2c7f1593]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.section-header h3[data-v-2c7f1593]{font-size:var(--text-base);font-weight:600;color:var(--color-text);margin:0}.contacts-grid[data-v-2c7f1593]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-3)}.contact-card[data-v-2c7f1593]{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.contact-top[data-v-2c7f1593]{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.contact-name[data-v-2c7f1593]{font-weight:600;font-size:var(--text-sm);color:var(--color-text)}.contact-role[data-v-2c7f1593]{font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-2)}.contact-details[data-v-2c7f1593]{display:flex;flex-direction:column;gap:2px;font-size:var(--text-xs)}.contact-details a[data-v-2c7f1593]{color:var(--color-primary);text-decoration:none}.contact-actions[data-v-2c7f1593]{margin-top:var(--space-2);display:flex;justify-content:flex-end}.delete-btn[data-v-2c7f1593]{background:none;border:none;color:var(--color-danger);font-size:var(--text-xs);cursor:pointer;padding:0}.projects-list[data-v-2c7f1593]{display:flex;flex-direction:column;gap:var(--space-2)}.associated-project-card[data-v-2c7f1593]{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.associated-project-card[data-v-2c7f1593]:hover{background:var(--color-surface-hover, rgba(0,0,0,.02));border-color:var(--color-primary)}.p-num[data-v-2c7f1593]{font-family:var(--font-mono);font-weight:700;color:var(--color-primary);font-size:var(--text-sm)}.p-title[data-v-2c7f1593]{flex:1;font-weight:500;font-size:var(--text-sm);color:var(--color-text)}.p-chef[data-v-2c7f1593]{font-size:var(--text-xs);color:var(--color-text-muted)}.modal-form[data-v-2c7f1593]{display:flex;flex-direction:column;gap:var(--space-4)}.form-row[data-v-2c7f1593]{display:flex;gap:var(--space-3)}.flex-1[data-v-2c7f1593]{flex:1}.flex-2[data-v-2c7f1593]{flex:2}.form-group[data-v-2c7f1593]{display:flex;flex-direction:column;gap:var(--space-1)}.form-group label[data-v-2c7f1593]{font-size:var(--text-xs);font-weight:600;color:var(--color-text)}.form-input[data-v-2c7f1593],.form-textarea[data-v-2c7f1593]{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm)}.form-input[data-v-2c7f1593]:focus,.form-textarea[data-v-2c7f1593]:focus{outline:none;border-color:var(--color-primary)}.form-checkbox[data-v-2c7f1593]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm)}.form-error[data-v-2c7f1593]{padding:var(--space-3);background:#ef44441a;color:var(--color-danger);border-radius:var(--radius-md);font-size:var(--text-sm)}.modal-actions[data-v-2c7f1593]{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-4)}.warning-text[data-v-2c7f1593]{font-size:var(--text-sm);color:var(--color-text-muted);background:var(--color-bg-subtle, rgba(0,0,0,.03));padding:var(--space-3);border-radius:var(--radius-md)}.deliverables-view[data-v-af027221]{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);max-width:1440px;margin:0 auto;width:100%}.view-header[data-v-af027221]{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}.header-breadcrumbs[data-v-af027221]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-1)}.crumb-sep[data-v-af027221]{opacity:.5}.view-title[data-v-af027221]{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;margin:0}.view-subtitle[data-v-af027221]{font-size:var(--text-sm);color:var(--color-text-secondary);margin:var(--space-1) 0 0}.kpi-grid[data-v-af027221]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.kpi-card[data-v-af027221]{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5)}.kpi-icon-wrap[data-v-af027221]{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-blue[data-v-af027221]{background:var(--color-primary-50);color:var(--color-primary-600)}.kpi-amber[data-v-af027221]{background:var(--color-warning-50);color:var(--color-warning-600)}.kpi-green[data-v-af027221]{background:var(--color-success-50);color:var(--color-success-600)}.kpi-red[data-v-af027221]{background:var(--color-danger-50);color:var(--color-danger-600)}.kpi-val[data-v-af027221]{display:block;font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);line-height:1.1}.kpi-lbl[data-v-af027221]{font-size:var(--text-xs);color:var(--color-text-muted)}.filters-panel[data-v-af027221]{display:flex;flex-direction:column;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4)}@media(min-width:900px){.filters-panel[data-v-af027221]{flex-direction:row;align-items:center;justify-content:space-between}}.search-input-wrap[data-v-af027221]{position:relative;flex:1;min-width:260px}.search-icon[data-v-af027221]{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.search-field[data-v-af027221]{width:100%;padding:8px 12px 8px 34px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--text-sm);outline:none;transition:border-color var(--transition-fast)}.search-field[data-v-af027221]:focus{border-color:var(--color-primary-500)}.select-filters[data-v-af027221]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.filter-select[data-v-af027221]{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--text-xs);outline:none;cursor:pointer}.toggle-pill[data-v-af027221]{padding:6px 12px;font-size:var(--text-xs);font-weight:500;border-radius:var(--radius-full);border:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.toggle-pill.is-active[data-v-af027221]{background:var(--color-primary-600);border-color:var(--color-primary-600);color:#fff}.table-card-wrapper[data-v-af027221]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.loading-state[data-v-af027221]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);gap:var(--space-3);color:var(--color-text-muted)}.spinner[data-v-af027221]{width:28px;height:28px;border:3px solid var(--color-border);border-top-color:var(--color-primary-600);border-radius:50%;animation:spin-af027221 .8s linear infinite}@keyframes spin-af027221{to{transform:rotate(360deg)}}.table-responsive[data-v-af027221]{width:100%;overflow-x:auto}.deliverables-table[data-v-af027221]{width:100%;border-collapse:collapse;font-size:var(--text-sm);text-align:left}.deliverables-table th[data-v-af027221]{padding:10px 14px;background:var(--color-bg-subtle, var(--color-border-subtle, rgba(0,0,0,.02)));border-bottom:1px solid var(--color-border);font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.deliverables-table td[data-v-af027221]{padding:12px 14px;border-bottom:1px solid var(--color-border);vertical-align:middle}.deliverables-table tbody tr[data-v-af027221]:hover{background:var(--color-bg-subtle, rgba(0,0,0,.01))}.row-overdue[data-v-af027221]{background:#ef44440a!important}.ref-cell[data-v-af027221]{white-space:nowrap}.ref-badge[data-v-af027221]{font-family:var(--font-mono, monospace);font-weight:600;font-size:var(--text-xs);color:var(--color-primary-600);background:var(--color-primary-50);padding:3px 8px;border-radius:var(--radius-sm);border:1px solid var(--color-primary-100)}.title-cell[data-v-af027221]{min-width:200px}.deliverable-title[data-v-af027221]{font-weight:500;color:var(--color-text-primary);display:block}.bpe-stamp[data-v-af027221]{display:inline-block;font-size:10px;font-weight:700;color:var(--color-success-700);background:var(--color-success-50);border:1px solid var(--color-success-300);padding:1px 6px;border-radius:3px;margin-top:4px}.project-cell[data-v-af027221]{max-width:220px}.project-link[data-v-af027221]{background:none;border:none;padding:0;font-size:var(--text-xs);color:var(--color-text-secondary);text-align:left;cursor:pointer;text-decoration:underline;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.project-link[data-v-af027221]:hover{color:var(--color-primary-600)}.phase-tag[data-v-af027221]{display:inline-block;font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary);background:var(--color-border-subtle, rgba(0,0,0,.05));padding:2px 6px;border-radius:var(--radius-sm)}.indice-badge[data-v-af027221]{font-family:var(--font-mono, monospace);font-size:var(--text-xs);font-weight:600;padding:2px 6px;background:var(--color-border);border-radius:var(--radius-sm)}.date-cell[data-v-af027221]{font-size:var(--text-xs);white-space:nowrap}.text-danger[data-v-af027221]{color:var(--color-danger-600);font-weight:600}.overdue-tag[data-v-af027221]{display:inline-block;font-size:9px;background:var(--color-danger-100);color:var(--color-danger-700);padding:1px 4px;border-radius:2px;margin-left:4px}.actions-col[data-v-af027221]{text-align:right;width:140px}.actions-cell[data-v-af027221]{text-align:right;white-space:nowrap}.action-btn-group[data-v-af027221]{display:inline-flex;gap:4px;align-items:center}.action-btn[data-v-af027221]{padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;transition:all var(--transition-fast)}.visa-btn[data-v-af027221]{color:var(--color-primary-600);border-color:var(--color-primary-200);background:var(--color-primary-50)}.visa-btn[data-v-af027221]:hover{background:var(--color-primary-100)}.rev-btn[data-v-af027221]{color:var(--color-text-secondary)}.rev-btn[data-v-af027221]:hover{background:var(--color-border-subtle)}.info-btn[data-v-af027221]{color:var(--color-text-muted)}.delete-btn[data-v-af027221]{color:var(--color-danger-600);border-color:var(--color-danger-200);background:var(--color-danger-50);font-size:14px;line-height:1}.delete-btn[data-v-af027221]:hover{background:var(--color-danger-100)}.modal-alert-error[data-v-af027221]{padding:10px 14px;background:var(--color-danger-50);border:1px solid var(--color-danger-200);color:var(--color-danger-700);border-radius:var(--radius-md);font-size:var(--text-sm);margin-bottom:var(--space-4)}.form-grid[data-v-af027221]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.full-width[data-v-af027221]{grid-column:1 / -1}.form-field[data-v-af027221]{display:flex;flex-direction:column;gap:var(--space-1)}.field-label[data-v-af027221]{font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary)}.required[data-v-af027221]{color:var(--color-danger-600)}.form-input[data-v-af027221],.form-select[data-v-af027221],.form-textarea[data-v-af027221]{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--text-sm);outline:none;font-family:inherit}.form-input[data-v-af027221]:focus,.form-select[data-v-af027221]:focus,.form-textarea[data-v-af027221]:focus{border-color:var(--color-primary-500)}.font-mono[data-v-af027221]{font-family:var(--font-mono, monospace);font-size:var(--text-xs)}.checkbox-field[data-v-af027221]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);cursor:pointer}.visa-flow-hint[data-v-af027221]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);padding:8px 12px;background:var(--color-bg-subtle, rgba(0,0,0,.02));border-radius:var(--radius-md)}.hint-label[data-v-af027221]{font-size:var(--text-xs);color:var(--color-text-muted)}.history-stack[data-v-af027221]{display:flex;flex-direction:column;gap:var(--space-5)}.history-meta-box[data-v-af027221]{background:var(--color-bg-subtle, rgba(0,0,0,.02));border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.meta-row[data-v-af027221]{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-sm)}.meta-row .lbl[data-v-af027221]{color:var(--color-text-muted)}.bpe-banner[data-v-af027221]{margin-top:var(--space-2);padding:6px 10px;background:var(--color-success-50);border:1px solid var(--color-success-300);color:var(--color-success-700);font-size:var(--text-xs);font-weight:700;text-align:center;border-radius:var(--radius-sm)}.drawer-section-title[data-v-af027221]{font-size:var(--text-sm);font-weight:700;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.04em;margin:0}.timeline[data-v-af027221]{display:flex;flex-direction:column;gap:var(--space-3);position:relative;padding-left:var(--space-4)}.timeline-item[data-v-af027221]{position:relative}.timeline-dot[data-v-af027221]{position:absolute;left:-14px;top:8px;width:8px;height:8px;border-radius:50%;background:var(--color-primary-500)}.timeline-card[data-v-af027221]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.timeline-head[data-v-af027221]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.timeline-date[data-v-af027221]{font-size:var(--text-xs);color:var(--color-text-muted)}.visa-ref-tag[data-v-af027221]{font-family:var(--font-mono, monospace);font-size:var(--text-xs);font-weight:600;color:var(--color-primary-600);margin:0 0 4px}.visa-user[data-v-af027221]{font-size:var(--text-xs);color:var(--color-text-secondary);margin:0 0 4px}.visa-comments[data-v-af027221]{font-size:var(--text-xs);font-style:italic;color:var(--color-text-primary);background:var(--color-bg-subtle, rgba(0,0,0,.02));padding:6px 8px;border-radius:var(--radius-sm);margin:0}.documents-list[data-v-af027221]{display:flex;flex-direction:column;gap:var(--space-2)}.doc-file-card[data-v-af027221]{display:flex;align-items:flex-start;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.doc-icon[data-v-af027221]{color:var(--color-primary-600);margin-top:2px}.doc-details[data-v-af027221]{display:flex;flex-direction:column;gap:2px}.doc-filename[data-v-af027221]{font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary)}.doc-meta[data-v-af027221]{font-size:var(--text-xs);color:var(--color-text-muted)}.doc-hash[data-v-af027221]{font-family:var(--font-mono, monospace);font-size:10px;color:var(--color-text-muted)}.empty-hint[data-v-af027221]{font-size:var(--text-xs);color:var(--color-text-muted);font-style:italic}.documents-view[data-v-dffb6520]{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);max-width:1440px;margin:0 auto;width:100%}.view-header[data-v-dffb6520]{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}.header-breadcrumbs[data-v-dffb6520]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-1)}.crumb-sep[data-v-dffb6520]{opacity:.5}.view-title[data-v-dffb6520]{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;margin:0}.view-subtitle[data-v-dffb6520]{font-size:var(--text-sm);color:var(--color-text-secondary);margin:var(--space-1) 0 0}.kpi-grid[data-v-dffb6520]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.kpi-card[data-v-dffb6520]{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5)}.kpi-icon-wrap[data-v-dffb6520]{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-blue[data-v-dffb6520]{background:var(--color-primary-50);color:var(--color-primary-600)}.kpi-red[data-v-dffb6520]{background:var(--color-danger-50);color:var(--color-danger-600)}.kpi-amber[data-v-dffb6520]{background:var(--color-warning-50);color:var(--color-warning-600)}.kpi-green[data-v-dffb6520]{background:var(--color-success-50);color:var(--color-success-600)}.kpi-val[data-v-dffb6520]{display:block;font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);line-height:1.1}.kpi-lbl[data-v-dffb6520]{font-size:var(--text-xs);color:var(--color-text-muted)}.filters-panel[data-v-dffb6520]{display:flex;flex-direction:column;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4)}@media(min-width:900px){.filters-panel[data-v-dffb6520]{flex-direction:row;align-items:center;justify-content:space-between}}.search-input-wrap[data-v-dffb6520]{position:relative;flex:1;min-width:260px}.search-icon[data-v-dffb6520]{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.search-field[data-v-dffb6520]{width:100%;padding:8px 12px 8px 34px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--text-sm);outline:none}.select-filters[data-v-dffb6520]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.filter-select[data-v-dffb6520]{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--text-xs);outline:none;cursor:pointer}.table-card-wrapper[data-v-dffb6520]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.table-responsive[data-v-dffb6520]{width:100%;overflow-x:auto}.docs-table[data-v-dffb6520]{width:100%;border-collapse:collapse;font-size:var(--text-sm);text-align:left}.docs-table th[data-v-dffb6520]{padding:10px 14px;background:var(--color-bg-subtle, rgba(0,0,0,.02));border-bottom:1px solid var(--color-border);font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.docs-table td[data-v-dffb6520]{padding:12px 14px;border-bottom:1px solid var(--color-border);vertical-align:middle}.docs-table tbody tr[data-v-dffb6520]:hover{background:var(--color-bg-subtle, rgba(0,0,0,.01))}.file-title-wrap[data-v-dffb6520]{display:flex;align-items:center;gap:var(--space-2);max-width:260px}.format-tag[data-v-dffb6520]{font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;white-space:nowrap}.badge-pdf[data-v-dffb6520]{background:#fee2e2;color:#b91c1c}.badge-dwg[data-v-dffb6520]{background:#fef3c7;color:#b45309}.badge-ifc[data-v-dffb6520]{background:#dcfce7;color:#15803d}.badge-office[data-v-dffb6520]{background:#e0e7ff;color:#4338ca}.badge-zip[data-v-dffb6520]{background:#f3e8ff;color:#7e22ce}.badge-default[data-v-dffb6520]{background:#f1f5f9;color:#475569}.file-name[data-v-dffb6520]{font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deliv-cell[data-v-dffb6520]{display:flex;flex-direction:column;gap:2px;max-width:200px}.deliv-ref[data-v-dffb6520]{font-family:var(--font-mono, monospace);font-size:var(--text-xs);font-weight:600;color:var(--color-primary-600)}.deliv-title[data-v-dffb6520]{font-size:11px;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-link[data-v-dffb6520]{background:none;border:none;padding:0;font-size:var(--text-xs);color:var(--color-text-secondary);text-decoration:underline;cursor:pointer}.project-link[data-v-dffb6520]:hover{color:var(--color-primary-600)}.indice-pill[data-v-dffb6520]{font-family:var(--font-mono, monospace);font-size:var(--text-xs);font-weight:600;padding:2px 6px;background:var(--color-border);border-radius:var(--radius-sm)}.hash-code[data-v-dffb6520]{font-family:var(--font-mono, monospace);font-size:11px;color:var(--color-text-muted)}.actions-col[data-v-dffb6520]{text-align:right;width:140px}.actions-cell[data-v-dffb6520]{text-align:right;white-space:nowrap}.action-btn-group[data-v-dffb6520]{display:inline-flex;gap:4px}.action-btn[data-v-dffb6520]{padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;transition:all var(--transition-fast)}.preview-btn[data-v-dffb6520]{color:var(--color-primary-600);background:var(--color-primary-50);border-color:var(--color-primary-200)}.dl-btn[data-v-dffb6520]{color:var(--color-text-secondary)}.details-btn[data-v-dffb6520]{color:var(--color-text-muted)}.file-drop-zone[data-v-dffb6520]{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center;background:var(--color-bg-subtle, rgba(0,0,0,.01));cursor:pointer;transition:border-color var(--transition-fast)}.file-drop-zone[data-v-dffb6520]:hover{border-color:var(--color-primary-500)}.file-input-hidden[data-v-dffb6520]{display:none}.file-drop-label[data-v-dffb6520]{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);cursor:pointer;color:var(--color-text-secondary)}.file-prompt[data-v-dffb6520]{font-size:var(--text-sm);font-weight:500}.file-limits[data-v-dffb6520]{font-size:11px;color:var(--color-text-muted)}.preview-container[data-v-dffb6520]{width:100%;height:600px;border-radius:var(--radius-md);overflow:hidden;background:#f8fafc}.preview-iframe[data-v-dffb6520]{width:100%;height:100%;border:none}.details-stack[data-v-dffb6520]{display:flex;flex-direction:column;gap:var(--space-4)}.integrity-card[data-v-dffb6520]{background:var(--color-bg-subtle, rgba(0,0,0,.02));border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.drawer-sec-title[data-v-dffb6520]{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;margin:0;color:var(--color-text-primary)}.integrity-desc[data-v-dffb6520]{font-size:var(--text-xs);color:var(--color-text-muted);margin:0 0 var(--space-2)}.meta-row[data-v-dffb6520]{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);gap:var(--space-2)}.meta-row .lbl[data-v-dffb6520]{color:var(--color-text-muted);white-space:nowrap}.hash-val[data-v-dffb6520]{font-family:var(--font-mono, monospace);font-size:10px;word-break:break-all;background:var(--color-surface);padding:2px 6px;border-radius:3px;border:1px solid var(--color-border)}.verify-action-row[data-v-dffb6520]{margin-top:var(--space-3)}.alert-integrity[data-v-dffb6520]{padding:8px 12px;border-radius:var(--radius-md);font-size:var(--text-xs);margin-top:var(--space-2)}.alert-success[data-v-dffb6520]{background:var(--color-success-50);border:1px solid var(--color-success-200);color:var(--color-success-700)}.alert-danger[data-v-dffb6520]{background:var(--color-danger-50);border:1px solid var(--color-danger-200);color:var(--color-danger-700)}.bpe-ribbon[data-v-dffb6520]{padding:4px 8px;background:var(--color-success-50);border:1px solid var(--color-success-300);color:var(--color-success-700);font-size:11px;font-weight:700;text-align:center;border-radius:3px;margin-top:var(--space-2)}.modal-alert-error[data-v-dffb6520]{padding:10px 14px;background:var(--color-danger-50);border:1px solid var(--color-danger-200);color:var(--color-danger-700);border-radius:var(--radius-md);font-size:var(--text-sm);margin-bottom:var(--space-4)}.form-grid[data-v-dffb6520]{display:grid;grid-template-columns:1fr;gap:var(--space-4)}.full-width[data-v-dffb6520]{width:100%}.form-field[data-v-dffb6520]{display:flex;flex-direction:column;gap:var(--space-1)}.field-label[data-v-dffb6520]{font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary)}.form-select[data-v-dffb6520]{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--text-sm);outline:none}.checkbox-field[data-v-dffb6520]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);cursor:pointer}.tasks-view[data-v-ed5200cc]{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);max-width:1440px;margin:0 auto;width:100%}.view-header[data-v-ed5200cc]{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}.header-breadcrumbs[data-v-ed5200cc]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-1)}.crumb-sep[data-v-ed5200cc]{opacity:.5}.view-title[data-v-ed5200cc]{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;margin:0}.view-subtitle[data-v-ed5200cc]{font-size:var(--text-sm);color:var(--color-text-secondary);margin:var(--space-1) 0 0}.kpi-grid[data-v-ed5200cc]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.kpi-card[data-v-ed5200cc]{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5)}.kpi-icon-wrap[data-v-ed5200cc]{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-blue[data-v-ed5200cc]{background:var(--color-primary-50);color:var(--color-primary-600)}.kpi-amber[data-v-ed5200cc]{background:var(--color-warning-50);color:var(--color-warning-600)}.kpi-green[data-v-ed5200cc]{background:var(--color-success-50);color:var(--color-success-600)}.kpi-red[data-v-ed5200cc]{background:var(--color-danger-50);color:var(--color-danger-600)}.kpi-val[data-v-ed5200cc]{display:block;font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);line-height:1.1}.kpi-lbl[data-v-ed5200cc]{font-size:var(--text-xs);color:var(--color-text-muted)}.filters-panel[data-v-ed5200cc]{display:flex;flex-direction:column;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4)}@media(min-width:900px){.filters-panel[data-v-ed5200cc]{flex-direction:row;align-items:center;justify-content:space-between}}.search-input-wrap[data-v-ed5200cc]{position:relative;flex:1;min-width:260px}.search-icon[data-v-ed5200cc]{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.search-field[data-v-ed5200cc]{width:100%;padding:8px 12px 8px 34px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--text-sm);outline:none;transition:border-color var(--transition-fast)}.search-field[data-v-ed5200cc]:focus{border-color:var(--color-primary-500)}.select-filters[data-v-ed5200cc]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.filter-select[data-v-ed5200cc]{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--text-xs);outline:none;cursor:pointer}.toggle-pill[data-v-ed5200cc]{padding:6px 12px;font-size:var(--text-xs);font-weight:500;border-radius:var(--radius-full);border:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.toggle-pill.is-active[data-v-ed5200cc]{background:var(--color-primary-600);border-color:var(--color-primary-600);color:#fff}.table-card-wrapper[data-v-ed5200cc]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.loading-state[data-v-ed5200cc]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);gap:var(--space-3);color:var(--color-text-muted)}.spinner[data-v-ed5200cc]{width:28px;height:28px;border:3px solid var(--color-border);border-top-color:var(--color-primary-600);border-radius:50%;animation:spin-ed5200cc .8s linear infinite}@keyframes spin-ed5200cc{to{transform:rotate(360deg)}}.table-responsive[data-v-ed5200cc]{width:100%;overflow-x:auto}.tasks-table[data-v-ed5200cc]{width:100%;border-collapse:collapse;font-size:var(--text-sm);text-align:left}.tasks-table th[data-v-ed5200cc]{padding:10px 14px;background:var(--color-bg-subtle, rgba(0,0,0,.02));border-bottom:1px solid var(--color-border);font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.tasks-table td[data-v-ed5200cc]{padding:12px 14px;border-bottom:1px solid var(--color-border);vertical-align:middle}.tasks-table tbody tr[data-v-ed5200cc]:hover{background:var(--color-bg-subtle, rgba(0,0,0,.01))}.row-blocked[data-v-ed5200cc]{background:#ef444408}.status-dropdown[data-v-ed5200cc]{padding:4px 8px;font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);outline:none;cursor:pointer}.task-title-cell[data-v-ed5200cc]{min-width:240px}.task-title[data-v-ed5200cc]{font-weight:500;color:var(--color-text-primary);display:block}.deliverable-tag[data-v-ed5200cc]{display:inline-block;font-size:11px;color:var(--color-primary-600);background:var(--color-primary-50);padding:1px 6px;border-radius:3px;margin-top:3px}.task-desc-snippet[data-v-ed5200cc]{font-size:var(--text-xs);color:var(--color-text-muted);margin:3px 0 0;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-cell[data-v-ed5200cc]{max-width:200px}.project-link[data-v-ed5200cc]{background:none;border:none;padding:0;font-size:var(--text-xs);color:var(--color-text-secondary);text-align:left;cursor:pointer;text-decoration:underline;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.project-link[data-v-ed5200cc]:hover{color:var(--color-primary-600)}.date-cell[data-v-ed5200cc],.hours-cell[data-v-ed5200cc],.user-cell[data-v-ed5200cc]{font-size:var(--text-xs);white-space:nowrap}.hours-val[data-v-ed5200cc]{font-family:var(--font-mono, monospace);font-weight:600}.dependencies-cell[data-v-ed5200cc]{white-space:nowrap}.badge-blocked[data-v-ed5200cc]{font-size:10px;font-weight:600;color:var(--color-danger-700);background:var(--color-danger-100);padding:2px 6px;border-radius:4px}.badge-unblocked[data-v-ed5200cc]{font-size:10px;font-weight:600;color:var(--color-success-700);background:var(--color-success-100);padding:2px 6px;border-radius:4px}.actions-col[data-v-ed5200cc]{text-align:right;width:140px}.actions-cell[data-v-ed5200cc]{text-align:right;white-space:nowrap}.action-btn-group[data-v-ed5200cc]{display:inline-flex;gap:4px;align-items:center}.action-btn[data-v-ed5200cc]{padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;transition:all var(--transition-fast)}.dep-btn[data-v-ed5200cc]{color:var(--color-primary-600);background:var(--color-primary-50);border-color:var(--color-primary-200)}.dep-btn[data-v-ed5200cc]:hover{background:var(--color-primary-100)}.edit-btn[data-v-ed5200cc]{color:var(--color-text-secondary)}.edit-btn[data-v-ed5200cc]:hover{background:var(--color-border-subtle)}.delete-btn[data-v-ed5200cc]{color:var(--color-danger-600);border-color:var(--color-danger-200);background:var(--color-danger-50);font-size:14px;line-height:1}.delete-btn[data-v-ed5200cc]:hover{background:var(--color-danger-100)}.modal-alert-error[data-v-ed5200cc]{padding:10px 14px;background:var(--color-danger-50);border:1px solid var(--color-danger-200);color:var(--color-danger-700);border-radius:var(--radius-md);font-size:var(--text-sm);margin-bottom:var(--space-4)}.form-grid[data-v-ed5200cc]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.full-width[data-v-ed5200cc]{grid-column:1 / -1}.form-field[data-v-ed5200cc]{display:flex;flex-direction:column;gap:var(--space-1)}.field-label[data-v-ed5200cc]{font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary)}.required[data-v-ed5200cc]{color:var(--color-danger-600)}.form-input[data-v-ed5200cc],.form-select[data-v-ed5200cc],.form-textarea[data-v-ed5200cc]{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-size:var(--text-sm);outline:none;font-family:inherit}.form-input[data-v-ed5200cc]:focus,.form-select[data-v-ed5200cc]:focus,.form-textarea[data-v-ed5200cc]:focus{border-color:var(--color-primary-500)}.dep-container[data-v-ed5200cc]{display:flex;flex-direction:column;gap:var(--space-4)}.dep-subtitle[data-v-ed5200cc]{font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary);margin:0}.dep-empty[data-v-ed5200cc]{font-size:var(--text-xs);color:var(--color-text-muted);font-style:italic;padding:var(--space-2) 0}.dep-list[data-v-ed5200cc]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.dep-item[data-v-ed5200cc]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--color-bg-subtle, rgba(0,0,0,.02));border:1px solid var(--color-border);border-radius:var(--radius-md)}.dep-info[data-v-ed5200cc]{display:flex;align-items:center;gap:var(--space-2)}.dep-task-title[data-v-ed5200cc]{font-size:var(--text-xs);font-weight:500;color:var(--color-text-primary)}.dep-remove-btn[data-v-ed5200cc]{background:none;border:none;font-size:16px;color:var(--color-danger-600);cursor:pointer;padding:0 4px}.add-dep-box[data-v-ed5200cc]{border-top:1px solid var(--color-border);padding-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.add-dep-row[data-v-ed5200cc]{display:flex;gap:var(--space-2)}.flex-1[data-v-ed5200cc]{flex:1}.dep-hint[data-v-ed5200cc]{font-size:11px;color:var(--color-text-muted);margin:0}.gantt-toolbar[data-v-17a170d7]{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.toolbar-top[data-v-17a170d7],.toolbar-bottom[data-v-17a170d7]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}.filter-group[data-v-17a170d7]{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);flex:1 1 auto}.project-select[data-v-17a170d7]{flex:1 1 220px;min-width:180px;max-width:340px}.search-box[data-v-17a170d7]{flex:1 1 180px;min-width:160px;max-width:280px}.search-input[data-v-17a170d7]{width:100%;min-width:unset}.dept-pills[data-v-17a170d7]{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.dept-pill[data-v-17a170d7]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font-size:11px;font-weight:var(--weight-bold);padding:3px 8px;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.dept-pill[data-v-17a170d7]:hover{background:var(--color-surface-hover)}.dept-pill.is-active[data-v-17a170d7]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.zoom-switcher[data-v-17a170d7]{display:flex;align-items:center;gap:var(--space-2)}.switcher-label[data-v-17a170d7]{font-size:var(--text-xs);color:var(--color-text-tertiary);font-weight:var(--weight-medium)}.btn-group[data-v-17a170d7]{display:flex;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.zoom-btn[data-v-17a170d7]{background:var(--color-surface);border:none;border-right:1px solid var(--color-border);padding:4px 10px;font-size:var(--text-xs);color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast)}.zoom-btn[data-v-17a170d7]:last-child{border-right:none}.zoom-btn[data-v-17a170d7]:hover{background:var(--color-surface-hover)}.zoom-btn.is-active[data-v-17a170d7]{background:var(--color-primary-light);color:var(--color-primary-dark);font-weight:var(--weight-semibold)}.toggle-group[data-v-17a170d7]{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.toggle-pill[data-v-17a170d7]{display:flex;align-items:center;gap:var(--space-2);padding:4px 10px;border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--weight-medium);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.toggle-pill[data-v-17a170d7]:hover{background:var(--color-surface-hover)}.toggle-pill.is-active[data-v-17a170d7]{background:var(--color-surface-active);border-color:var(--color-primary);color:var(--color-text-primary)}.dot[data-v-17a170d7]{width:8px;height:8px;border-radius:var(--radius-full)}.critical-dot[data-v-17a170d7]{background:#ef4444}.dep-dot[data-v-17a170d7]{background:var(--color-primary)}.bottleneck-dot[data-v-17a170d7]{background:#f59e0b}.badge-count[data-v-17a170d7]{font-family:var(--font-mono, monospace);font-size:10px;background:#ef4444;color:#fff;padding:0 5px;border-radius:var(--radius-full)}.summary-metric[data-v-17a170d7]{font-size:var(--text-xs);color:var(--color-text-secondary);white-space:nowrap}@media(max-width:900px){.toolbar-top[data-v-17a170d7],.toolbar-bottom[data-v-17a170d7]{flex-direction:column;align-items:stretch;gap:var(--space-2)}.filter-group[data-v-17a170d7]{width:100%}.project-select[data-v-17a170d7],.search-box[data-v-17a170d7]{max-width:100%;width:100%}.toolbar-actions[data-v-17a170d7]{align-self:flex-start}}.gantt-timeline-header[data-v-da60df9b]{display:flex;flex-direction:column;background:var(--color-surface);border-bottom:1px solid var(--color-border);-webkit-user-select:none;user-select:none;font-family:var(--font-sans);font-size:var(--text-xs)}.month-row[data-v-da60df9b]{display:flex;border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-hover);height:28px;line-height:28px}.month-cell[data-v-da60df9b]{padding:0 var(--space-2);font-weight:var(--weight-bold);color:var(--color-text-secondary);border-right:1px solid var(--color-border-subtle);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.month-label[data-v-da60df9b]{text-transform:capitalize}.days-row[data-v-da60df9b]{display:flex;height:36px}.day-cell[data-v-da60df9b]{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid var(--color-border-subtle);color:var(--color-text-tertiary);font-size:10px;transition:background var(--transition-fast)}.day-letter[data-v-da60df9b]{font-size:9px;opacity:.8}.day-number[data-v-da60df9b]{font-weight:var(--weight-semibold);color:var(--color-text-primary)}.day-cell.is-weekend[data-v-da60df9b]{background:#00000008}:root.dark .day-cell.is-weekend[data-v-da60df9b]{background:#ffffff05}.day-cell.is-today[data-v-da60df9b]{background:#2563eb14;color:var(--color-primary)}.day-cell.is-today .day-number[data-v-da60df9b]{color:var(--color-primary);font-weight:var(--weight-bold);border-bottom:2px solid var(--color-primary)}.gantt-row[data-v-68678162]{display:flex;align-items:center;border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface);transition:background var(--transition-fast)}.gantt-row[data-v-68678162]:hover{background:var(--color-surface-hover)}.row-info[data-v-68678162]{width:320px;min-width:320px;max-width:320px;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-3);border-right:1px solid var(--color-border);background:inherit;cursor:pointer;z-index:5}.item-title-col[data-v-68678162]{display:flex;align-items:center;gap:var(--space-2);overflow:hidden}.milestone-indicator-icon[data-v-68678162]{color:#f59e0b;font-size:11px}.item-title[data-v-68678162]{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-meta-col[data-v-68678162]{display:flex;align-items:center;gap:var(--space-1)}.progress-pill[data-v-68678162]{font-family:var(--font-mono, monospace);font-size:10px;color:var(--color-text-secondary);background:var(--color-surface-active);padding:1px 4px;border-radius:var(--radius-sm)}.row-timeline[data-v-68678162]{flex:1;height:100%;position:relative;overflow:visible}.gantt-bar[data-v-68678162]{position:absolute;border-radius:var(--radius-md);box-shadow:0 1px 3px #0000001f;cursor:pointer;overflow:hidden;display:flex;align-items:center;-webkit-user-select:none;user-select:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast);border:1px solid rgba(0,0,0,.15)}.gantt-bar[data-v-68678162]:hover{transform:translateY(-1px);box-shadow:0 3px 6px #0003;z-index:8}.dept-str[data-v-68678162]{background:#3b82f6}.dept-eco[data-v-68678162]{background:#10b981}.dept-flu[data-v-68678162]{background:#06b6d4}.dept-elec[data-v-68678162]{background:#f59e0b}.dept-vrd[data-v-68678162]{background:#8b5cf6}.dept-bim[data-v-68678162]{background:#ec4899}.bar-progress-fill[data-v-68678162]{position:absolute;top:0;left:0;height:100%;background:#ffffff40;pointer-events:none}.bar-content[data-v-68678162]{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 var(--space-2);color:#fff;font-size:11px;font-weight:var(--weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-title[data-v-68678162]{overflow:hidden;text-overflow:ellipsis}.bar-float[data-v-68678162]{font-family:var(--font-mono, monospace);font-size:9px;background:#00000040;padding:1px 4px;border-radius:var(--radius-sm);margin-left:var(--space-2)}.gantt-bar.is-critical[data-v-68678162]{border:2px solid #ef4444;box-shadow:0 0 8px #ef444466}.gantt-bar.is-overdue[data-v-68678162]{border-right:3px solid #dc2626}.gantt-milestone-marker[data-v-68678162]{position:absolute;transform:translate(-50%,-50%);width:16px;height:16px;cursor:pointer;z-index:7}.diamond-shape[data-v-68678162]{width:14px;height:14px;background:#f59e0b;transform:rotate(45deg);border:2px solid #ffffff;box-shadow:0 2px 4px #0003;transition:transform var(--transition-fast)}.gantt-milestone-marker:hover .diamond-shape[data-v-68678162]{transform:rotate(45deg) scale(1.2)}.gantt-milestone-marker.is-contractual .diamond-shape[data-v-68678162]{background:#dc2626;border-color:#fef08a}.gantt-milestone-marker.is-completed .diamond-shape[data-v-68678162]{background:#10b981}.gantt-milestone-marker.is-overdue .diamond-shape[data-v-68678162]{animation:pulse-overdue-68678162 1.5s infinite}@keyframes pulse-overdue-68678162{0%,to{transform:rotate(45deg) scale(1)}50%{transform:rotate(45deg) scale(1.25)}}.gantt-dependency-layer[data-v-bd87b8f1]{position:absolute;top:0;left:0;pointer-events:none;z-index:10}.link-group[data-v-bd87b8f1]{cursor:pointer;pointer-events:stroke}.link-hitbox[data-v-bd87b8f1]{fill:none;stroke:transparent;stroke-width:14px}.link-line[data-v-bd87b8f1]{fill:none;stroke:var(--color-primary);stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;opacity:.75;transition:stroke .2s,opacity .2s,stroke-width .2s}.link-group:hover .link-line[data-v-bd87b8f1]{opacity:1;stroke-width:2.5px}.link-line.is-critical[data-v-bd87b8f1]{stroke:#ef4444;stroke-width:2.25px;opacity:.95}.link-text[data-v-bd87b8f1]{font-family:var(--font-mono, monospace);font-size:9px;fill:var(--color-text-secondary);font-weight:var(--weight-bold);text-anchor:middle;pointer-events:none;-webkit-user-select:none;user-select:none;background:var(--color-surface);filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.link-text.is-critical[data-v-bd87b8f1]{fill:#ef4444}.drawer-content[data-v-3d13efad]{display:flex;flex-direction:column;gap:var(--space-4)}.cpm-box[data-v-3d13efad]{padding:var(--space-3) var(--space-4);background:var(--color-surface-hover);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-xs)}.cpm-box.is-critical[data-v-3d13efad]{background:#ef444414;border-color:#ef4444}.cpm-header[data-v-3d13efad]{display:flex;justify-content:space-between;margin-bottom:var(--space-2)}.cpm-badge[data-v-3d13efad]{font-weight:var(--weight-bold);color:var(--color-text-primary)}.cpm-float[data-v-3d13efad]{font-family:var(--font-mono, monospace);color:var(--color-text-secondary)}.cpm-grid[data-v-3d13efad]{display:flex;flex-direction:column;gap:2px;color:var(--color-text-secondary);font-size:11px}.drawer-section[data-v-3d13efad]{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-subtle)}.section-head-bar[data-v-3d13efad]{display:flex;justify-content:space-between;align-items:center}.section-title[data-v-3d13efad]{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin:0}.sub-section-title[data-v-3d13efad]{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-tertiary);margin:var(--space-2) 0 0}.form-grid[data-v-3d13efad]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.form-field[data-v-3d13efad]{display:flex;flex-direction:column;gap:var(--space-1)}.field-label[data-v-3d13efad]{font-size:var(--text-xs);color:var(--color-text-secondary);font-weight:var(--weight-medium)}.section-actions[data-v-3d13efad]{display:flex;justify-content:flex-end;margin-top:var(--space-2)}.dep-list[data-v-3d13efad]{display:flex;flex-direction:column;gap:var(--space-2)}.dep-card[data-v-3d13efad]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--color-surface-hover);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md)}.dep-info[data-v-3d13efad]{display:flex;align-items:center;gap:var(--space-2);overflow:hidden}.dep-title[data-v-3d13efad]{font-size:var(--text-xs);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dep-type-pill[data-v-3d13efad]{font-family:var(--font-mono, monospace);font-size:10px;background:var(--color-surface-active);padding:1px 5px;border-radius:var(--radius-sm);color:var(--color-text-secondary)}.del-dep-btn[data-v-3d13efad]{background:none;border:none;font-size:16px;color:var(--color-danger);cursor:pointer;padding:0 4px}.del-dep-btn[data-v-3d13efad]:hover{opacity:.8}.empty-hint[data-v-3d13efad]{font-size:var(--text-xs);color:var(--color-text-tertiary);font-style:italic}.deliverable-box[data-v-3d13efad]{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface-hover);border-radius:var(--radius-md);font-size:var(--text-xs)}.d-ref[data-v-3d13efad]{font-weight:var(--weight-bold);color:var(--color-primary)}.danger-zone[data-v-3d13efad]{border-bottom:none;display:flex;align-items:flex-end}.dep-modal-form[data-v-3d13efad]{display:flex;flex-direction:column;gap:var(--space-3)}.interactive-gantt-workspace[data-v-3d29210d]{display:flex;flex-direction:column;gap:var(--space-4);width:100%}.gantt-chart-card[data-v-3d29210d]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;position:relative}.gantt-loading[data-v-3d29210d]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-12);color:var(--color-text-secondary)}.loading-spinner[data-v-3d29210d]{width:28px;height:28px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin-3d29210d .8s linear infinite}@keyframes spin-3d29210d{to{transform:rotate(360deg)}}.gantt-scroll-layout[data-v-3d29210d]{overflow-x:auto;overflow-y:auto;max-height:calc(100vh - 280px)}.gantt-surface[data-v-3d29210d]{display:flex;flex-direction:column;position:relative}.gantt-header-wrapper[data-v-3d29210d]{display:flex;position:sticky;top:0;z-index:20;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.header-left-stub[data-v-3d29210d]{width:320px;min-width:320px;max-width:320px;padding:var(--space-2) var(--space-3);border-right:1px solid var(--color-border);background:var(--color-surface);display:flex;flex-direction:column;justify-content:center}.stub-title[data-v-3d29210d]{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-text-primary)}.stub-sub[data-v-3d29210d]{font-size:10px;color:var(--color-text-tertiary)}.header-timeline-pane[data-v-3d29210d]{flex:1}.gantt-body-wrapper[data-v-3d29210d]{position:relative;display:flex;flex-direction:column}.empty-gantt[data-v-3d29210d]{padding:var(--space-12);text-align:center;color:var(--color-text-tertiary);font-style:italic;font-size:var(--text-sm)}.violation-body[data-v-3d29210d]{display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--text-sm)}.violation-msg[data-v-3d29210d]{color:var(--color-danger);font-weight:var(--weight-medium)}.violation-hint[data-v-3d29210d]{color:var(--color-text-secondary);font-size:var(--text-xs)}.milestone-modal-form[data-v-3d29210d]{display:flex;flex-direction:column;gap:var(--space-3)}.checkbox-field[data-v-3d29210d]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-secondary);cursor:pointer}.planning-view[data-v-88e4cdc4]{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);max-width:1440px;margin:0 auto;width:100%}.view-header[data-v-88e4cdc4]{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}.header-breadcrumbs[data-v-88e4cdc4]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-1)}.crumb-sep[data-v-88e4cdc4]{opacity:.5}.view-title[data-v-88e4cdc4]{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;margin:0}.view-subtitle[data-v-88e4cdc4]{font-size:var(--text-sm);color:var(--color-text-secondary);margin:var(--space-1) 0 0}.project-select[data-v-88e4cdc4]{padding:8px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);font-size:var(--text-sm);outline:none}.kpi-grid[data-v-88e4cdc4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.kpi-card[data-v-88e4cdc4]{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5)}.kpi-icon-wrap[data-v-88e4cdc4]{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-blue[data-v-88e4cdc4]{background:var(--color-primary-50);color:var(--color-primary-600)}.kpi-amber[data-v-88e4cdc4]{background:var(--color-warning-50);color:var(--color-warning-600)}.kpi-red[data-v-88e4cdc4]{background:var(--color-danger-50);color:var(--color-danger-600)}.kpi-val[data-v-88e4cdc4]{display:block;font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);line-height:1.1}.kpi-lbl[data-v-88e4cdc4]{font-size:var(--text-xs);color:var(--color-text-muted)}.bottlenecks-banner[data-v-88e4cdc4]{display:flex;align-items:flex-start;gap:var(--space-4);background:var(--color-danger-50);border:1px solid var(--color-danger-200);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);color:var(--color-danger-800)}.banner-icon[data-v-88e4cdc4]{color:var(--color-danger-600);margin-top:2px}.banner-title[data-v-88e4cdc4]{font-size:var(--text-base);font-weight:700;margin:0 0 var(--space-1)}.banner-desc[data-v-88e4cdc4]{font-size:var(--text-sm);margin:0 0 var(--space-3);color:var(--color-danger-700)}.bottleneck-pills[data-v-88e4cdc4]{display:flex;gap:var(--space-2);flex-wrap:wrap}.bottleneck-pill[data-v-88e4cdc4]{font-size:var(--text-xs);background:#fff;border:1px solid var(--color-danger-300);padding:4px 8px;border-radius:var(--radius-sm)}.planning-tabs[data-v-88e4cdc4]{display:flex;gap:var(--space-2);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-2)}.plan-tab[data-v-88e4cdc4]{padding:8px 16px;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.plan-tab[data-v-88e4cdc4]:hover{background:var(--color-border-subtle);color:var(--color-text-primary)}.plan-tab.is-active[data-v-88e4cdc4]{background:var(--color-primary-50);color:var(--color-primary-700);border-color:var(--color-primary-200);font-weight:600}.timeline-table-card[data-v-88e4cdc4]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.schedule-table[data-v-88e4cdc4]{width:100%;border-collapse:collapse;font-size:var(--text-sm);text-align:left}.schedule-table th[data-v-88e4cdc4]{padding:10px 14px;background:var(--color-bg-subtle, rgba(0,0,0,.02));border-bottom:1px solid var(--color-border);font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.schedule-table td[data-v-88e4cdc4]{padding:12px 14px;border-bottom:1px solid var(--color-border);vertical-align:middle}.row-bottleneck[data-v-88e4cdc4]{background:#ef44440a}.row-overdue[data-v-88e4cdc4]{background:#f59e0b0a}.type-pill[data-v-88e4cdc4]{font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px}.type-livrable[data-v-88e4cdc4]{background:var(--color-primary-50);color:var(--color-primary-700)}.type-tache[data-v-88e4cdc4]{background:var(--color-warning-50);color:var(--color-warning-700)}.ref-code[data-v-88e4cdc4]{font-family:var(--font-mono, monospace);font-size:var(--text-xs);margin-right:6px}.overdue-tag[data-v-88e4cdc4]{display:inline-block;font-size:9px;background:var(--color-danger-100);color:var(--color-danger-700);padding:1px 4px;border-radius:2px;margin-left:4px}.bottleneck-tag[data-v-88e4cdc4]{display:inline-block;font-size:9px;background:var(--color-danger-600);color:#fff;padding:1px 4px;border-radius:2px;margin-left:4px;font-weight:700}.project-link[data-v-88e4cdc4]{background:none;border:none;padding:0;font-size:var(--text-xs);color:var(--color-text-secondary);text-decoration:underline;cursor:pointer}.project-link[data-v-88e4cdc4]:hover{color:var(--color-primary-600)}.milestones-grid[data-v-88e4cdc4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:var(--space-4)}.project-milestone-card[data-v-88e4cdc4]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.p-card-head[data-v-88e4cdc4]{display:flex;justify-content:space-between;align-items:flex-start}.p-title[data-v-88e4cdc4]{font-size:var(--text-base);font-weight:700;color:var(--color-text-primary);margin:0}.p-chef[data-v-88e4cdc4]{font-size:var(--text-xs);color:var(--color-text-muted)}.open-proj-btn[data-v-88e4cdc4]{font-size:var(--text-xs);color:var(--color-primary-600);background:none;border:none;cursor:pointer;font-weight:600}.phases-timeline[data-v-88e4cdc4]{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2)}.phase-step[data-v-88e4cdc4]{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-2);background:var(--color-bg-subtle, rgba(0,0,0,.02));border-radius:var(--radius-md);gap:var(--space-1)}.step-badge[data-v-88e4cdc4]{font-size:var(--text-xs);font-weight:700;color:var(--color-primary-600)}.step-label[data-v-88e4cdc4]{font-size:10px;color:var(--color-text-muted);line-height:1.2}.phase-active-tag[data-v-88e4cdc4]{font-size:9px;font-weight:600;color:var(--color-success-700);background:var(--color-success-100);padding:1px 4px;border-radius:2px}.phase-inactive-tag[data-v-88e4cdc4]{font-size:9px;color:var(--color-text-muted)}.departments-view[data-v-532a66e3]{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);max-width:1440px;margin:0 auto;width:100%}.view-header[data-v-532a66e3]{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.header-breadcrumbs[data-v-532a66e3]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-1)}.crumb-sep[data-v-532a66e3]{opacity:.5}.view-title[data-v-532a66e3]{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;margin:0}.view-subtitle[data-v-532a66e3]{font-size:var(--text-sm);color:var(--color-text-secondary);margin:var(--space-1) 0 0}.dept-grid[data-v-532a66e3]{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:var(--space-5)}.dept-card[data-v-532a66e3]{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.dept-card[data-v-532a66e3]:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.dept-card-header[data-v-532a66e3]{display:flex;justify-content:space-between;align-items:center}.dept-badge-title[data-v-532a66e3]{display:flex;align-items:center;gap:var(--space-3)}.dept-name[data-v-532a66e3]{font-size:var(--text-lg);font-weight:700;color:var(--color-text-primary);margin:0}.dept-desc[data-v-532a66e3]{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.5;margin:0}.dept-stats[data-v-532a66e3]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);background:var(--color-bg-subtle, rgba(0,0,0,.02));border-radius:var(--radius-md);padding:var(--space-3);text-align:center}.stat-val[data-v-532a66e3]{display:block;font-size:var(--text-xl);font-weight:700;color:var(--color-text-primary)}.stat-lbl[data-v-532a66e3]{font-size:11px;color:var(--color-text-muted)}.dept-deliverables-sample[data-v-532a66e3]{display:flex;flex-direction:column;gap:var(--space-2)}.sample-title[data-v-532a66e3]{font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.sample-tags[data-v-532a66e3]{display:flex;gap:var(--space-1);flex-wrap:wrap}.sample-tag[data-v-532a66e3]{font-size:11px;background:var(--color-border-subtle, rgba(0,0,0,.05));padding:2px 8px;border-radius:var(--radius-full);color:var(--color-text-secondary)}.dept-actions[data-v-532a66e3]{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--color-border);padding-top:var(--space-3);margin-top:auto}.filter-link[data-v-532a66e3]{font-size:var(--text-xs);font-weight:600;color:var(--color-primary-600);background:none;border:none;cursor:pointer;padding:4px 0}.filter-link[data-v-532a66e3]:hover{text-decoration:underline}.collaboration-view[data-v-3833f88f]{padding:1.5rem;max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.view-header[data-v-3833f88f]{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem}.header-breadcrumbs[data-v-3833f88f]{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-muted, #64748b);margin-bottom:.35rem}.crumb-dim[data-v-3833f88f]{color:var(--text-muted, #64748b)}.crumb-sep[data-v-3833f88f]{color:var(--border-color, #cbd5e1)}.crumb-current[data-v-3833f88f]{font-weight:600;color:var(--text-primary, #0f172a)}.view-title[data-v-3833f88f]{font-size:1.5rem;font-weight:700;margin:0;color:var(--text-primary, #0f172a)}.view-subtitle[data-v-3833f88f]{font-size:.875rem;color:var(--text-secondary, #64748b);margin:.25rem 0 0}.project-picker-box[data-v-3833f88f]{display:flex;flex-direction:column;gap:.25rem;min-width:280px}.picker-label[data-v-3833f88f]{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted, #64748b)}.project-select[data-v-3833f88f]{padding:.5rem .75rem;border-radius:var(--radius-md, .375rem);border:1px solid var(--border-color, #cbd5e1);background:var(--bg-surface, #ffffff);color:var(--text-primary, #0f172a);font-weight:500;font-size:.875rem}.workspace-wrapper[data-v-3833f88f]{display:flex;flex-direction:column}.empty-state[data-v-3833f88f]{text-align:center;padding:3rem 1rem;color:var(--text-muted, #94a3b8);font-size:.95rem}.equipe-view[data-v-ffbd0a30]{padding:1.5rem;max-width:1400px;margin:0 auto}.equipe-header[data-v-ffbd0a30]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.equipe-header h1[data-v-ffbd0a30]{font-size:1.75rem;font-weight:700;color:#0f172a;margin:0 0 .25rem}.subtitle[data-v-ffbd0a30]{color:#64748b;font-size:.95rem;margin:0}.stats-kpi-bar[data-v-ffbd0a30]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.kpi-card[data-v-ffbd0a30]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 3px #0000000d}.kpi-icon[data-v-ffbd0a30]{font-size:1.75rem}.kpi-value[data-v-ffbd0a30]{display:block;font-size:1.5rem;font-weight:700;color:#0f172a;line-height:1.2}.kpi-label[data-v-ffbd0a30]{font-size:.8rem;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.kpi-card.kpi-danger[data-v-ffbd0a30]{border-left:4px solid #ef4444}.kpi-card.kpi-warning[data-v-ffbd0a30]{border-left:4px solid #f59e0b}.kpi-card.kpi-success[data-v-ffbd0a30]{border-left:4px solid #10b981}.pulse-alert[data-v-ffbd0a30]{animation:pulse-border-ffbd0a30 2s infinite}@keyframes pulse-border-ffbd0a30{0%,to{border-color:#ef4444}50%{border-color:#fca5a5}}.overdue-tag[data-v-ffbd0a30]{color:#ef4444;font-weight:600}.equipe-controls[data-v-ffbd0a30]{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;background:#f8fafc;padding:1rem;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:1.5rem}.search-box[data-v-ffbd0a30]{position:relative;flex:1 1 250px}.search-icon[data-v-ffbd0a30]{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#94a3b8}.search-input[data-v-ffbd0a30]{width:100%;padding:.5rem .75rem .5rem 2.25rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.9rem}.filter-group[data-v-ffbd0a30]{display:flex;align-items:center;gap:.5rem}.filter-label[data-v-ffbd0a30]{font-size:.85rem;font-weight:600;color:#475569}.select-control[data-v-ffbd0a30]{padding:.5rem .75rem;border:1px solid #cbd5e1;border-radius:6px;background:#fff;font-size:.9rem}.discipline-chips[data-v-ffbd0a30]{display:flex;flex-wrap:wrap;gap:.5rem}.chip-btn[data-v-ffbd0a30]{background:#fff;border:1px solid #cbd5e1;border-radius:9999px;padding:.35rem .75rem;font-size:.8rem;color:#475569;cursor:pointer;font-weight:500;transition:all .15s ease}.chip-btn[data-v-ffbd0a30]:hover{background:#f1f5f9;border-color:#94a3b8}.chip-btn.active[data-v-ffbd0a30]{background:#0284c7;color:#fff;border-color:#0284c7}.team-grid[data-v-ffbd0a30]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.member-card[data-v-ffbd0a30]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000000d;display:flex;flex-direction:column;gap:1rem;transition:transform .15s ease,box-shadow .15s ease}.member-card[data-v-ffbd0a30]:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000014}.card-overloaded[data-v-ffbd0a30]{border-color:#fca5a5;background:snow}.card-top[data-v-ffbd0a30]{display:flex;align-items:flex-start;gap:.75rem}.avatar-circle[data-v-ffbd0a30]{width:48px;height:48px;border-radius:50%;background:#e0f2fe;color:#0369a1;font-weight:700;font-size:1.1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.member-info[data-v-ffbd0a30]{flex:1;overflow:hidden}.member-name[data-v-ffbd0a30]{margin:0;font-size:1.05rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.role-badge[data-v-ffbd0a30]{display:inline-block;font-size:.75rem;color:#475569;font-weight:500}.member-email[data-v-ffbd0a30]{display:block;font-size:.75rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.capacity-pill[data-v-ffbd0a30]{font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:9999px;white-space:nowrap}.pill-success[data-v-ffbd0a30]{background:#dcfce7;color:#166534}.pill-warning[data-v-ffbd0a30]{background:#fef3c7;color:#92400e}.pill-danger[data-v-ffbd0a30]{background:#fee2e2;color:#991b1b}.disciplines-row[data-v-ffbd0a30]{display:flex;flex-wrap:wrap;gap:.35rem}.dept-badge[data-v-ffbd0a30]{font-size:.7rem;font-weight:700;padding:.15rem .4rem;border-radius:4px;text-transform:uppercase}.dept-str[data-v-ffbd0a30]{background:#dbeafe;color:#1e40af}.dept-flu[data-v-ffbd0a30]{background:#cffafe;color:#155e75}.dept-elec[data-v-ffbd0a30]{background:#fef3c7;color:#92400e}.dept-eco[data-v-ffbd0a30]{background:#f3e8ff;color:#6b21a8}.dept-vrd[data-v-ffbd0a30]{background:#ffedd5;color:#9a3412}.dept-bim[data-v-ffbd0a30]{background:#ccfbf1;color:#115e59}.dept-default[data-v-ffbd0a30]{background:#f1f5f9;color:#475569}.workload-section[data-v-ffbd0a30]{background:#f8fafc;padding:.75rem;border-radius:6px}.workload-label-row[data-v-ffbd0a30]{display:flex;justify-content:space-between;font-size:.8rem;color:#475569;margin-bottom:.35rem}.progress-bar-bg[data-v-ffbd0a30]{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-bar-fill[data-v-ffbd0a30]{height:100%;border-radius:4px;transition:width .3s ease}.fill-success[data-v-ffbd0a30]{background:#10b981}.fill-warning[data-v-ffbd0a30]{background:#f59e0b}.fill-danger[data-v-ffbd0a30]{background:#ef4444}.member-stats-row[data-v-ffbd0a30]{display:flex;justify-content:space-around;border-top:1px solid #f1f5f9;padding-top:.75rem}.stat-item[data-v-ffbd0a30]{text-align:center}.stat-num[data-v-ffbd0a30]{display:block;font-size:1.15rem;font-weight:700;color:#0f172a}.stat-text[data-v-ffbd0a30]{font-size:.75rem;color:#64748b}.text-danger[data-v-ffbd0a30]{color:#ef4444}.overdue-banner[data-v-ffbd0a30]{background:#fee2e2;color:#991b1b;font-size:.75rem;font-weight:600;padding:.4rem .6rem;border-radius:4px;text-align:center}.card-footer[data-v-ffbd0a30]{margin-top:auto}.full-width[data-v-ffbd0a30]{width:100%}.details-dialog[data-v-ffbd0a30]{width:90%;max-width:900px;max-height:85vh;display:flex;flex-direction:column}.modal-body-scroll[data-v-ffbd0a30]{overflow-y:auto;padding:1rem 0;display:flex;flex-direction:column;gap:1.5rem}.modal-section h3[data-v-ffbd0a30]{font-size:1rem;font-weight:600;color:#0f172a;margin:0 0 .5rem;border-bottom:1px solid #e2e8f0;padding-bottom:.25rem}.project-tags-cloud[data-v-ffbd0a30]{display:flex;flex-wrap:wrap;gap:.5rem}.project-tag[data-v-ffbd0a30]{background:#f1f5f9;border:1px solid #cbd5e1;padding:.25rem .6rem;border-radius:6px;font-size:.85rem;font-weight:500;color:#0284c7;cursor:pointer}.project-tag[data-v-ffbd0a30]:hover{background:#e0f2fe}.modal-table[data-v-ffbd0a30]{width:100%;border-collapse:collapse;font-size:.85rem}.modal-table th[data-v-ffbd0a30],.modal-table td[data-v-ffbd0a30]{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #f1f5f9}.modal-table th[data-v-ffbd0a30]{background:#f8fafc;color:#64748b;font-weight:600}.status-tag[data-v-ffbd0a30]{background:#f1f5f9;padding:.15rem .4rem;border-radius:4px;font-size:.75rem}.text-muted[data-v-ffbd0a30]{color:#94a3b8;font-size:.85rem;font-style:italic}.app-toast[data-v-04fbdc58]{display:flex;align-items:center;gap:12px;padding:10px 16px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-family:var(--font-sans);font-size:13.5px;border:1px solid transparent;animation:toast-slide-04fbdc58 var(--transition-normal) ease-out}@keyframes toast-slide-04fbdc58{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.toast-icon[data-v-04fbdc58]{display:flex;align-items:center;flex-shrink:0}.toast-content[data-v-04fbdc58]{flex:1;line-height:1.4}.toast-close[data-v-04fbdc58]{background:transparent;border:none;cursor:pointer;padding:4px;border-radius:var(--radius-sm);color:inherit;opacity:.7;display:flex;align-items:center;transition:opacity var(--transition-fast)}.toast-close[data-v-04fbdc58]:hover{opacity:1}.toast-info[data-v-04fbdc58]{background:var(--color-info-bg);border-color:var(--color-info-border);color:var(--color-info-text)}.toast-success[data-v-04fbdc58]{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success-text)}.toast-warning[data-v-04fbdc58]{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning-text)}.toast-error[data-v-04fbdc58]{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-danger-text)}.toast-wrapper[data-v-8d6591bd]{padding:16px 28px 0;max-width:1600px;width:100%}.permanent-delete-form[data-v-8d6591bd]{display:flex;flex-direction:column;gap:14px}.confirm-input-label[data-v-8d6591bd]{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-secondary)}.confirm-input[data-v-8d6591bd]{border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-primary);border-radius:var(--radius-md);padding:8px 12px;font-family:var(--font-mono);font-size:13px;font-weight:600;outline:none}.confirm-input[data-v-8d6591bd]:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px #dc262633}:root{--primary: #1E6B5C;--primary-hover: #165246;--primary-light: #E8F5F1;--primary-border: #9DD2C7;--primary-text: #0E443A;--primary-focus: rgba(30, 107, 92, .25);--bg-canvas: #F8FAFC;--bg-surface: #FFFFFF;--bg-surface-elevated: #FFFFFF;--bg-surface-subtle: #F1F5F9;--bg-surface-hover: #F8FAFC;--bg-surface-active: #E2E8F0;--bg-sidebar: #0F172A;--bg-sidebar-hover: #1E293B;--bg-sidebar-active: #334155;--bg-header: #FFFFFF;--text-primary: #0F172A;--text-secondary: #475569;--text-muted: #64748B;--text-placeholder: #94A3B8;--text-inverse: #FFFFFF;--text-sidebar: #E2E8F0;--text-sidebar-muted: #94A3B8;--border-subtle: #E2E8F0;--border-default: #CBD5E1;--border-strong: #94A3B8;--border-sidebar: #1E293B;--color-success: #16A34A;--color-success-bg: #F0FDF4;--color-success-border: #BBF7D0;--color-success-text: #166534;--color-warning: #D97706;--color-warning-bg: #FFFBEB;--color-warning-border: #FDE68A;--color-warning-text: #92400E;--color-danger: #DC2626;--color-danger-bg: #FEF2F2;--color-danger-border: #FECACA;--color-danger-text: #991B1B;--color-info: #0284C7;--color-info-bg: #F0F9FF;--color-info-border: #BAE6FD;--color-info-text: #075985;--dept-str-color: #4F46E5;--dept-str-bg: #EEF2FF;--dept-str-border: #C7D2FE;--dept-str-text: #3730A3;--dept-eco-color: #D97706;--dept-eco-bg: #FEF3C7;--dept-eco-border: #FDE68A;--dept-eco-text: #92400E;--dept-flu-color: #0891B2;--dept-flu-bg: #ECFEFF;--dept-flu-border: #A5F3FC;--dept-flu-text: #155E75;--dept-elec-color: #7C3AED;--dept-elec-bg: #F5F3FF;--dept-elec-border: #DDD6FE;--dept-elec-text: #5B21B6;--dept-vrd-color: #059669;--dept-vrd-bg: #ECFDF5;--dept-vrd-border: #A7F3D0;--dept-vrd-text: #065F46;--dept-bim-color: #DB2777;--dept-bim-bg: #FDF2F8;--dept-bim-border: #FBCFE8;--dept-bim-text: #9D174D;--priority-haute-text: #991B1B;--priority-haute-bg: #FEF2F2;--priority-haute-border: #FECACA;--priority-moyenne-text: #92400E;--priority-moyenne-bg: #FFFBEB;--priority-moyenne-border: #FDE68A;--priority-basse-text: #475569;--priority-basse-bg: #F1F5F9;--priority-basse-border: #CBD5E1;--shadow-xs: 0 1px 2px 0 rgba(15, 23, 42, .05);--shadow-sm: 0 1px 3px 0 rgba(15, 23, 42, .08), 0 1px 2px -1px rgba(15, 23, 42, .06);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .08), 0 2px 4px -2px rgba(15, 23, 42, .06);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .04);--shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, .1), 0 8px 10px -6px rgba(15, 23, 42, .06);--shadow-drawer: -12px 0 32px rgba(15, 23, 42, .18);--radius-xs: 3px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--font-sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--sidebar-width: 260px;--sidebar-collapsed-width: 68px;--header-height: 60px}[data-theme=dark]{--primary-hover: #268975;--primary-light: rgba(30, 107, 92, .35);--primary-border: #268975;--primary-text: #A7F3D0;--primary-focus: rgba(45, 212, 191, .35);--bg-canvas: #090D16;--bg-surface: #111827;--bg-surface-elevated: #162032;--bg-surface-subtle: #182234;--bg-surface-hover: #1E293B;--bg-surface-active: #243248;--bg-sidebar: #0B0F17;--bg-sidebar-hover: #182234;--bg-sidebar-active: #243248;--bg-header: #111827;--text-primary: #F8FAFC;--text-secondary: #CBD5E1;--text-muted: #94A3B8;--text-placeholder: #64748B;--text-inverse: #0F172A;--text-sidebar: #E2E8F0;--text-sidebar-muted: #94A3B8;--border-subtle: #1E293B;--border-default: #2A3649;--border-strong: #3B4B61;--border-sidebar: #1E293B;--color-success: #22C55E;--color-success-bg: rgba(34, 197, 94, .12);--color-success-border: rgba(34, 197, 94, .3);--color-success-text: #86EFAC;--color-warning: #F59E0B;--color-warning-bg: rgba(245, 158, 11, .12);--color-warning-border: rgba(245, 158, 11, .3);--color-warning-text: #FDE68A;--color-danger: #EF4444;--color-danger-bg: rgba(239, 68, 68, .14);--color-danger-border: rgba(239, 68, 68, .35);--color-danger-text: #FCA5A5;--color-info: #38BDF8;--color-info-bg: rgba(56, 189, 248, .12);--color-info-border: rgba(56, 189, 248, .3);--color-info-text: #BAE6FD;--dept-str-color: #818CF8;--dept-str-bg: rgba(99, 102, 241, .15);--dept-str-border: rgba(129, 140, 248, .3);--dept-str-text: #C7D2FE;--dept-eco-color: #FBBF24;--dept-eco-bg: rgba(245, 158, 11, .15);--dept-eco-border: rgba(251, 191, 36, .3);--dept-eco-text: #FDE68A;--dept-flu-color: #22D3EE;--dept-flu-bg: rgba(6, 182, 212, .15);--dept-flu-border: rgba(34, 211, 238, .3);--dept-flu-text: #A5F3FC;--dept-elec-color: #A78BFA;--dept-elec-bg: rgba(139, 92, 246, .15);--dept-elec-border: rgba(167, 139, 250, .3);--dept-elec-text: #DDD6FE;--dept-vrd-color: #34D399;--dept-vrd-bg: rgba(16, 185, 129, .15);--dept-vrd-border: rgba(52, 211, 153, .3);--dept-vrd-text: #A7F3D0;--dept-bim-color: #F472B6;--dept-bim-bg: rgba(236, 72, 153, .15);--dept-bim-border: rgba(244, 114, 182, .3);--dept-bim-text: #FBCFE8;--priority-haute-text: #FCA5A5;--priority-haute-bg: rgba(239, 68, 68, .15);--priority-haute-border: rgba(239, 68, 68, .35);--priority-moyenne-text: #FDE68A;--priority-moyenne-bg: rgba(245, 158, 11, .15);--priority-moyenne-border: rgba(245, 158, 11, .3);--priority-basse-text: #CBD5E1;--priority-basse-bg: rgba(71, 85, 105, .25);--priority-basse-border: rgba(148, 163, 184, .25);--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .4), 0 1px 2px -1px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .45), 0 4px 6px -4px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .5), 0 8px 10px -6px rgba(0, 0, 0, .4);--shadow-drawer: -12px 0 32px rgba(0, 0, 0, .55)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;font-family:var(--font-sans);font-size:14px;line-height:1.5;background-color:var(--bg-canvas);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font-family:inherit;font-size:inherit}button{cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.app-shell{min-height:100vh;display:flex;background-color:var(--bg-canvas)}.app-main-layout{flex:1;display:flex;flex-direction:column;min-width:0;margin-left:var(--sidebar-width);transition:margin-left var(--transition-normal)}.app-shell.sidebar-collapsed .app-main-layout{margin-left:var(--sidebar-collapsed-width)}.main-content{flex:1;padding:24px 28px 48px;max-width:1600px;width:100%}@media(max-width:1024px){.app-main-layout,.app-shell.sidebar-collapsed .app-main-layout{margin-left:0}.main-content{padding:16px 16px 36px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--border-default);background:var(--bg-surface);border-radius:var(--radius-md);padding:7px 12px;color:var(--text-primary);font-size:13px;font-weight:500;transition:all var(--transition-fast);white-space:nowrap}.btn:hover:not(:disabled){background:var(--bg-surface-subtle);border-color:var(--border-strong)}.btn:disabled{opacity:.55}.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--text-inverse)}.btn.primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-secondary)}.btn.ghost:hover:not(:disabled){background:var(--bg-surface-subtle);color:var(--text-primary)}.btn.danger-btn,.danger-btn{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:var(--color-danger-border)}.btn.danger-btn:hover:not(:disabled),.danger-btn:hover:not(:disabled){background:var(--color-danger);border-color:var(--color-danger);color:#fff}.modal-backdrop{position:fixed;inset:0;background-color:#0f172a99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:990;display:grid;place-items:center;padding:16px}.modal-backdrop.nested{z-index:995}.dialog{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:24px;width:min(540px,94vw);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;gap:14px}.dialog h2{margin:0;font-size:18px;font-weight:700;color:var(--text-primary)}.dialog-head{display:flex;align-items:center;justify-content:space-between}.dialog-head button{background:transparent;border:none;font-size:20px;color:var(--text-muted);cursor:pointer;padding:4px}.dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:10px}.field-error{color:var(--color-danger);font-size:12.5px;font-weight:500;margin:4px 0}.success-text{color:var(--color-success-text);font-size:12.5px;font-weight:500;margin:4px 0}.empty-state{color:var(--text-muted);font-size:13.5px}.users-dialog{width:min(1040px,96vw);max-height:90vh;overflow-y:auto}.user-create{display:grid;grid-template-columns:1.2fr 1.5fr 1.2fr 1fr auto;gap:10px;align-items:end;background:var(--bg-surface-subtle);padding:14px;border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.user-create label,.dialog>label,.settings-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--text-secondary)}.user-create input,.user-create select,.dialog input,.dialog select,.settings-form input,.settings-form select,.settings-form textarea{border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-primary);border-radius:var(--radius-md);padding:7px 10px;font-size:13px;outline:none}.user-create input:focus,.dialog input:focus,.settings-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-focus)}.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface)}.users-table{width:100%;border-collapse:collapse}.users-table th{background:var(--bg-surface-subtle);color:var(--text-secondary);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:10px 12px;border-bottom:1px solid var(--border-default);text-align:left}.users-table td{padding:9px 12px;border-bottom:1px solid var(--border-subtle);font-size:13px;color:var(--text-primary)}.reset-cell{display:flex;gap:6px;align-items:center}.reset-cell input{padding:5px 8px;font-size:12px}.row-actions{display:flex;gap:6px;align-items:center}.settings-form{display:flex;flex-direction:column;gap:14px;max-width:640px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm)}.settings-actions{display:flex;align-items:center;gap:10px;margin-top:8px}.audit-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;align-items:end;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:16px;margin-bottom:16px}.audit-filters label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--text-secondary)}.metadata{font-family:var(--font-mono);font-size:11.5px;background:var(--bg-surface-subtle);padding:4px 6px;border-radius:var(--radius-xs);max-width:340px;word-break:break-all}.notification-row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);gap:14px;margin-bottom:8px;transition:all var(--transition-fast)}.notification-row.unread{border-color:var(--primary);background:var(--primary-light)}.notification-main{display:flex;align-items:flex-start;gap:10px}.read-dot{width:8px;height:8px;border-radius:50%;background:var(--text-muted);margin-top:6px;flex-shrink:0}.notification-row.unread .read-dot{background:var(--primary)}.notification-actions{display:flex;gap:8px;align-items:center}.report-brand{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);margin-bottom:20px}.report-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.report-columns section{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:18px 20px;box-shadow:var(--shadow-sm)}.report-columns section h2{margin-top:0;font-size:15px;font-weight:700;color:var(--text-primary);border-bottom:1px solid var(--border-subtle);padding-bottom:8px}.report-actions{display:flex;align-items:center;gap:10px;margin-bottom:16px}.archive-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px;padding:14px 18px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg)}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:var(--bg-canvas)}.login-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:min(400px,100%);padding:32px 28px;display:flex;flex-direction:column;gap:14px}.brand-mark{width:44px;height:44px;border-radius:var(--radius-md);background:var(--primary);color:var(--text-inverse);display:grid;place-items:center;font-size:16px;font-weight:700;font-family:var(--font-mono)}.login-card h1{margin:0;font-size:20px;font-weight:700;color:var(--text-primary)}.login-card p{margin:0;font-size:13.5px;color:var(--text-secondary)}.login-card label{display:flex;flex-direction:column;gap:5px;font-size:12.5px;font-weight:600;color:var(--text-secondary)}.login-card .checkline{flex-direction:row;align-items:center;gap:8px;font-weight:500;cursor:pointer}.login-card input[type=email],.login-card input[type=password]{border:1px solid var(--border-default);background:var(--bg-surface);border-radius:var(--radius-md);padding:9px 12px;color:var(--text-primary);font-size:14px;outline:none}.login-card input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-focus)}@media print{.app-sidebar,.app-header,.report-actions,.filters,.portfolio-filter-bar,.saved-views-card,.archive-actions,.btn{display:none!important}.app-main-layout{margin-left:0!important}.main-content{padding:0!important}.report-columns section{box-shadow:none!important;border:1px solid #CBD5E1!important}}
