infodocviewdoc 2.0.3 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable, Component, EventEmitter, Output, Input, signal, ViewChild } from '@angular/core';
|
|
3
|
-
import * as
|
|
3
|
+
import * as i2 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
|
-
import * as
|
|
6
|
-
import { NgxExtendedPdfViewerModule } from 'ngx-extended-pdf-viewer';
|
|
5
|
+
import * as i3 from 'ngx-extended-pdf-viewer';
|
|
6
|
+
import { pdfDefaultOptions, NgxExtendedPdfViewerModule } from 'ngx-extended-pdf-viewer';
|
|
7
7
|
import Handsontable from 'handsontable';
|
|
8
|
-
import * as
|
|
8
|
+
import * as i4 from '@handsontable/angular';
|
|
9
9
|
import { HotTableModule } from '@handsontable/angular';
|
|
10
10
|
import 'handsontable/dist/handsontable.full.css';
|
|
11
|
-
import * as i1$1 from '@angular/router';
|
|
12
11
|
import * as i1 from '@angular/common/http';
|
|
13
12
|
import { HttpHeaders } from '@angular/common/http';
|
|
14
13
|
import { throwError } from 'rxjs';
|
|
15
|
-
import {
|
|
14
|
+
import { switchMap, catchError } from 'rxjs/operators';
|
|
16
15
|
|
|
17
16
|
class UiComponentsService {
|
|
18
17
|
constructor() { }
|
|
@@ -77,45 +76,35 @@ class DocumentViewerFileService {
|
|
|
77
76
|
constructor(http) {
|
|
78
77
|
this.http = http;
|
|
79
78
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
.
|
|
88
|
-
.
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
403: 'Acceso denegado',
|
|
94
|
-
404: 'Archivo no encontrado',
|
|
95
|
-
500: 'Error interno del servidor'
|
|
96
|
-
};
|
|
97
|
-
const message = errorMessages[error.status] ??
|
|
98
|
-
'Error inesperado al descargar el archivo';
|
|
99
|
-
return throwError(() => new Error(message));
|
|
100
|
-
}));
|
|
101
|
-
}
|
|
102
|
-
convertDocumentToPdf(file, token, baseApiUrl) {
|
|
103
|
-
const url = `${baseApiUrl}/api/v1/file/${file.type === '.ppt' || file.type === '.pptx'
|
|
104
|
-
? 'conversion-ppt-to-pdf'
|
|
105
|
-
: 'conversion-word-to-pdf'}`;
|
|
79
|
+
/**
|
|
80
|
+
* Convierte Word/Excel/PowerPoint a PDF vía microservicio.
|
|
81
|
+
* Requiere `baseApiUrl` y `token`.
|
|
82
|
+
* Nota: la selección del endpoint (ppt vs word) se hace por extensión del `fileName` (más robusto que `blob.type`).
|
|
83
|
+
*/
|
|
84
|
+
convertDocumentToPdf(file, fileName, token, baseApiUrl) {
|
|
85
|
+
const ext = (fileName || '')
|
|
86
|
+
.split('.')
|
|
87
|
+
.pop()
|
|
88
|
+
?.toLowerCase()
|
|
89
|
+
?.replace(/^\./, '');
|
|
90
|
+
const isPowerPoint = ext === 'ppt' || ext === 'pptx';
|
|
91
|
+
const url = `${baseApiUrl}/api/v1/file/${isPowerPoint ? 'conversion-ppt-to-pdf' : 'conversion-word-to-pdf'}`;
|
|
106
92
|
const headers = new HttpHeaders({
|
|
107
93
|
Authorization: `Bearer ${token}`,
|
|
108
94
|
});
|
|
109
95
|
const formData = new FormData();
|
|
110
|
-
formData.append('file', file, 'documento
|
|
96
|
+
formData.append('file', file, fileName || 'documento');
|
|
111
97
|
return this.http
|
|
112
98
|
.post(url, formData, { headers })
|
|
113
99
|
.pipe(switchMap((response) => {
|
|
114
100
|
if (!response?.downloadUrl) {
|
|
115
101
|
throw new Error('No se recibió downloadUrl');
|
|
116
102
|
}
|
|
117
|
-
|
|
118
|
-
|
|
103
|
+
const downloadUrl = response.downloadUrl.startsWith('http')
|
|
104
|
+
? response.downloadUrl
|
|
105
|
+
: `${baseApiUrl}${response.downloadUrl}`;
|
|
106
|
+
// Evita preflight CORS innecesario en endpoints que ya retornan URL de descarga directa.
|
|
107
|
+
return this.http.get(downloadUrl, {
|
|
119
108
|
responseType: 'blob',
|
|
120
109
|
});
|
|
121
110
|
}), catchError((error) => {
|
|
@@ -143,13 +132,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
|
|
|
143
132
|
}], ctorParameters: () => [{ type: i1.HttpClient }] });
|
|
144
133
|
|
|
145
134
|
class PdfViewerComponent {
|
|
146
|
-
route;
|
|
147
135
|
fileService;
|
|
148
|
-
|
|
149
|
-
nameBucket;
|
|
150
|
-
nameSpaceBucket;
|
|
136
|
+
/** URL base del microservicio de conversión Office->PDF. */
|
|
151
137
|
url;
|
|
138
|
+
/** Token bearer para modo remoto o conversion office. */
|
|
152
139
|
token = '';
|
|
140
|
+
/**
|
|
141
|
+
* Archivo ya resuelto por el host (modo local/directo).
|
|
142
|
+
* Si llega este input, el visor renderiza directamente el contenido recibido.
|
|
143
|
+
*/
|
|
144
|
+
fileBlob;
|
|
145
|
+
/** Nombre del archivo cuando se usa `fileBlob` para inferir extension. */
|
|
146
|
+
fileBlobName;
|
|
147
|
+
/**
|
|
148
|
+
* Base URL de los assets de PDF.js (`viewer-*.mjs`, workers, cmaps).
|
|
149
|
+
* Si no se define, se cargan desde jsDelivr (misma versión mayor que `ngx-extended-pdf-viewer` del paquete),
|
|
150
|
+
* para que el visor funcione aunque el host (p. ej. shell en :4200) no copie `/assets/` al build.
|
|
151
|
+
*/
|
|
152
|
+
pdfAssetsBaseUrl;
|
|
153
|
+
/** Debe coincidir con la peerDependency `ngx-extended-pdf-viewer` del paquete. */
|
|
154
|
+
static NGX_EXTENDED_PDF_VIEWER_ASSETS_VERSION = '25.6.4';
|
|
155
|
+
static pdfJsAssetsFallbackApplied = false;
|
|
153
156
|
pdfSrc;
|
|
154
157
|
imageSrc;
|
|
155
158
|
textContent;
|
|
@@ -223,51 +226,131 @@ class PdfViewerComponent {
|
|
|
223
226
|
xlsx: false,
|
|
224
227
|
jspdf: false,
|
|
225
228
|
};
|
|
226
|
-
constructor(
|
|
227
|
-
this.route = route;
|
|
229
|
+
constructor(fileService) {
|
|
228
230
|
this.fileService = fileService;
|
|
229
231
|
}
|
|
232
|
+
/**
|
|
233
|
+
* Sin esto, el host debe incluir `node_modules/ngx-extended-pdf-viewer/assets` en `angular.json`;
|
|
234
|
+
* si el MFE corre embebido o el shell no sirve `/assets/`, `viewer-*.mjs` devuelve 404.
|
|
235
|
+
*/
|
|
236
|
+
ensurePdfJsAssetsFolder() {
|
|
237
|
+
if (this.pdfAssetsBaseUrl) {
|
|
238
|
+
pdfDefaultOptions.assetsFolder = this.pdfAssetsBaseUrl.replace(/\/$/, '');
|
|
239
|
+
return;
|
|
240
|
+
}
|
|
241
|
+
if (!PdfViewerComponent.pdfJsAssetsFallbackApplied) {
|
|
242
|
+
pdfDefaultOptions.assetsFolder = `https://cdn.jsdelivr.net/npm/ngx-extended-pdf-viewer@${PdfViewerComponent.NGX_EXTENDED_PDF_VIEWER_ASSETS_VERSION}/assets`;
|
|
243
|
+
PdfViewerComponent.pdfJsAssetsFallbackApplied = true;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
230
246
|
ngOnInit() {
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
this.
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
this.fileName.set(this.nameFile);
|
|
238
|
-
}
|
|
247
|
+
this.ensurePdfJsAssetsFolder();
|
|
248
|
+
const displayName = this.fileBlobName || (this.fileBlob instanceof File ? this.fileBlob.name : '') || '';
|
|
249
|
+
if (displayName) {
|
|
250
|
+
this.fileName.set(displayName);
|
|
251
|
+
}
|
|
252
|
+
if (this.fileBlob) {
|
|
239
253
|
this.detectFileType();
|
|
240
254
|
void this.loadWithPreload();
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
ngOnChanges(changes) {
|
|
258
|
+
if (changes['pdfAssetsBaseUrl'] && !changes['pdfAssetsBaseUrl'].firstChange) {
|
|
259
|
+
this.ensurePdfJsAssetsFolder();
|
|
260
|
+
}
|
|
261
|
+
const keys = ['url', 'token', 'fileBlob', 'fileBlobName'];
|
|
262
|
+
const touched = keys.some((k) => changes[k] && !changes[k].firstChange);
|
|
263
|
+
if (!touched) {
|
|
241
264
|
return;
|
|
242
265
|
}
|
|
243
|
-
this.
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
}
|
|
252
|
-
this.detectFileType();
|
|
253
|
-
void this.loadWithPreload();
|
|
254
|
-
});
|
|
266
|
+
if (!this.fileBlob) {
|
|
267
|
+
return;
|
|
268
|
+
}
|
|
269
|
+
const displayName = this.fileBlobName || (this.fileBlob instanceof File ? this.fileBlob.name : '') || '';
|
|
270
|
+
this.fileName.set(displayName);
|
|
271
|
+
this.clearViewerState();
|
|
272
|
+
this.detectFileType();
|
|
273
|
+
void this.loadWithPreload();
|
|
255
274
|
}
|
|
256
275
|
ngOnDestroy() {
|
|
257
|
-
|
|
276
|
+
this.clearViewerState();
|
|
277
|
+
}
|
|
278
|
+
/** Libera blob URLs y estado visual al cambiar inputs o destruir el componente. */
|
|
279
|
+
clearViewerState() {
|
|
280
|
+
if (this.pdfSrc) {
|
|
258
281
|
URL.revokeObjectURL(this.pdfSrc);
|
|
259
|
-
|
|
282
|
+
this.pdfSrc = undefined;
|
|
283
|
+
}
|
|
284
|
+
if (this.imageSrc) {
|
|
260
285
|
URL.revokeObjectURL(this.imageSrc);
|
|
286
|
+
this.imageSrc = undefined;
|
|
287
|
+
}
|
|
288
|
+
this.textContent = undefined;
|
|
289
|
+
this.showExcelViewer = false;
|
|
290
|
+
this.excelData = [];
|
|
291
|
+
this.excelWorkbook = null;
|
|
292
|
+
}
|
|
293
|
+
/** Extensión a partir del último segmento de ruta (maneja rutas con varios puntos). */
|
|
294
|
+
extensionFromFileNameOrPath(value) {
|
|
295
|
+
if (!value) {
|
|
296
|
+
return '';
|
|
297
|
+
}
|
|
298
|
+
const segment = value.split(/[/\\]/).pop() ?? value;
|
|
299
|
+
const parts = segment.split('.');
|
|
300
|
+
if (parts.length < 2) {
|
|
301
|
+
return '';
|
|
302
|
+
}
|
|
303
|
+
return (parts.pop() ?? '').toLowerCase();
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Si `url` es solo la base del API (sin nombre de archivo en el path), no debe usarse para inferir extensión
|
|
307
|
+
* (evita tomar "com" de https://host...com).
|
|
308
|
+
*/
|
|
309
|
+
extensionFromUrlIfApplicable(rawUrl) {
|
|
310
|
+
try {
|
|
311
|
+
const u = new URL(rawUrl);
|
|
312
|
+
const last = u.pathname.split('/').filter(Boolean).pop() ?? '';
|
|
313
|
+
if (last.includes('.')) {
|
|
314
|
+
return this.extensionFromFileNameOrPath(last);
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
catch {
|
|
318
|
+
return this.extensionFromFileNameOrPath(rawUrl);
|
|
319
|
+
}
|
|
320
|
+
return '';
|
|
321
|
+
}
|
|
322
|
+
detectTypeFromBlobMeta(blob) {
|
|
323
|
+
const mime = (blob.type || '').toLowerCase();
|
|
324
|
+
if (!mime) {
|
|
325
|
+
return 'unknown';
|
|
326
|
+
}
|
|
327
|
+
if (mime.includes('pdf'))
|
|
328
|
+
return 'pdf';
|
|
329
|
+
if (mime.startsWith('image/'))
|
|
330
|
+
return 'image';
|
|
331
|
+
if (mime.startsWith('text/'))
|
|
332
|
+
return 'txt';
|
|
333
|
+
if (mime.includes('spreadsheetml') || mime.includes('ms-excel'))
|
|
334
|
+
return 'xlsx';
|
|
335
|
+
if (mime.includes('wordprocessingml') || mime.includes('msword'))
|
|
336
|
+
return 'docx';
|
|
337
|
+
if (mime.includes('presentationml') || mime.includes('ms-powerpoint'))
|
|
338
|
+
return 'pptx';
|
|
339
|
+
if (mime.includes('json') || mime.includes('xml'))
|
|
340
|
+
return 'txt';
|
|
341
|
+
return 'unknown';
|
|
261
342
|
}
|
|
262
343
|
detectFileType() {
|
|
263
344
|
let extension = '';
|
|
264
|
-
|
|
265
|
-
|
|
345
|
+
const directName = this.fileBlobName || (this.fileBlob instanceof File ? this.fileBlob.name : '');
|
|
346
|
+
if (directName) {
|
|
347
|
+
extension = this.extensionFromFileNameOrPath(directName);
|
|
266
348
|
}
|
|
267
|
-
|
|
268
|
-
|
|
349
|
+
let resolvedType = this.extensionToType[extension] || 'unknown';
|
|
350
|
+
if (resolvedType === 'unknown' && this.fileBlob) {
|
|
351
|
+
resolvedType = this.detectTypeFromBlobMeta(this.fileBlob);
|
|
269
352
|
}
|
|
270
|
-
this.fileType.set(
|
|
353
|
+
this.fileType.set(resolvedType);
|
|
271
354
|
if (this.fileType() !== 'unknown') {
|
|
272
355
|
void this.preloadLibrariesForType(this.fileType());
|
|
273
356
|
}
|
|
@@ -277,17 +360,13 @@ class PdfViewerComponent {
|
|
|
277
360
|
this.errorMessage.set(null);
|
|
278
361
|
try {
|
|
279
362
|
const preloadPromise = this.preloadLibrariesForType(this.fileType());
|
|
280
|
-
|
|
281
|
-
.
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
})
|
|
288
|
-
.toPromise();
|
|
289
|
-
const [blob] = await Promise.all([documentPromise, preloadPromise]);
|
|
290
|
-
this.processFile(blob);
|
|
363
|
+
if (!this.fileBlob) {
|
|
364
|
+
this.errorMessage.set("Modo local requerido: debes pasar [fileBlob] (y opcional [fileBlobName]) desde el microfront.");
|
|
365
|
+
this.loading.set(false);
|
|
366
|
+
return;
|
|
367
|
+
}
|
|
368
|
+
await preloadPromise;
|
|
369
|
+
this.processFile(this.fileBlob);
|
|
291
370
|
}
|
|
292
371
|
catch (error) {
|
|
293
372
|
this.errorMessage.set(error.message || 'Error al cargar el documento');
|
|
@@ -372,7 +451,14 @@ class PdfViewerComponent {
|
|
|
372
451
|
this.convertOfficeToPdf(blob);
|
|
373
452
|
}
|
|
374
453
|
convertOfficeToPdf(blob) {
|
|
375
|
-
this.
|
|
454
|
+
if (!this.url || !this.token) {
|
|
455
|
+
this.errorMessage.set('Para convertir Office a PDF se requiere url y token.');
|
|
456
|
+
this.loading.set(false);
|
|
457
|
+
return;
|
|
458
|
+
}
|
|
459
|
+
this.fileService
|
|
460
|
+
.convertDocumentToPdf(blob, this.fileBlobName, this.token, this.url)
|
|
461
|
+
.subscribe({
|
|
376
462
|
next: (pdfBlob) => {
|
|
377
463
|
this.pdfSrc = URL.createObjectURL(pdfBlob);
|
|
378
464
|
this.fileType.set('pdf');
|
|
@@ -640,21 +726,21 @@ class PdfViewerComponent {
|
|
|
640
726
|
getPreloadStatus() {
|
|
641
727
|
return `PDF: ${this.librariesPreloaded.pdf ? 'OK' : 'NO'}, Excel: ${this.librariesPreloaded.excel ? 'OK' : 'NO'}, XLSX: ${this.librariesPreloaded.xlsx ? 'OK' : 'NO'}, jsPDF: ${this.librariesPreloaded.jspdf ? 'OK' : 'NO'}`;
|
|
642
728
|
}
|
|
643
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: PdfViewerComponent, deps: [{ token:
|
|
644
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: PdfViewerComponent, isStandalone: true, selector: "sgdea-document-viewer", inputs: { nameFile: "nameFile", nameBucket: "nameBucket", nameSpaceBucket: "nameSpaceBucket", url: "url", token: "token" }, viewQueries: [{ propertyName: "imageContainer", first: true, predicate: ["imageContainer"], descendants: true }, { propertyName: "mainImage", first: true, predicate: ["mainImage"], descendants: true }], ngImport: i0, template: "<div *ngIf=\"loading()\" class=\"loader\">Cargando documento...</div>\n\n<div *ngIf=\"errorMessage() && !loading()\" class=\"error-message\">\n {{ errorMessage() }}\n</div>\n\n<div *ngIf=\"!loading() && !errorMessage()\" class=\"document-viewer-container\">\n\n <!-- PDF -->\n <ngx-extended-pdf-viewer\n *ngIf=\"fileType() === 'pdf' && pdfSrc\"\n [src]=\"pdfSrc\"\n height=\"auto\"\n useBrowserLocale=\"false\"\n [showDownloadButton]=\"false\"\n [showPrintButton]=\"false\"\n [showOpenFileButton]=\"false\"\n [showSecondaryToolbarButton]=\"false\"\n [showFirstAndLastPageButtons]=\"false\"\n [showPagingButtons]=\"false\"\n [showZoomButtons]=\"true\"\n [showDrawEditor]=\"false\"\n [showTextEditor]=\"false\"\n [showStampEditor]=\"false\"\n [showHighlightEditor]=\"false\"\n >\n </ngx-extended-pdf-viewer>\n\n <!-- Imagen -->\n<!-- Visor de im\u00E1genes con zoom y rotaci\u00F3n -->\n <div *ngIf=\"isImageType() && imageSrc\" class=\"image-viewer\">\n <!-- Barra de herramientas -->\n <div class=\"image-toolbar\">\n <button (click)=\"zoomIn()\" title=\"Acercar (Ctrl +)\">\u2795</button>\n <button (click)=\"zoomOut()\" title=\"Alejar (Ctrl -)\">\u2796</button>\n <!-- Separador -->\n <span class=\"separator\"></span>\n\n <!-- Botones de rotaci\u00F3n AHORA FUNCIONALES -->\n <button (click)=\"rotateLeft()\" title=\"Rotar izquierda (\u21BA)\">\u21BA</button>\n <button (click)=\"rotateRight()\" title=\"Rotar derecha (\u21BB)\">\u21BB</button>\n\n <!-- Informaci\u00F3n -->\n <span class=\"zoom-info\">{{ zoomLevel() }}%</span>\n <span class=\"rotation-info\" *ngIf=\"rotation() !== 0\">\n {{ rotation() }}\u00B0\n </span>\n\n <span class=\"image-dimensions\" *ngIf=\"imageDimensions.width\">\n {{ imageDimensions.width }} x {{ imageDimensions.height }}\n </span>\n </div>\n\n <!-- Contenedor de la imagen -->\n <div\n class=\"image-container\" \n #imageContainer \n (wheel)=\"onMouseWheel($event)\"\n >\n <img\n #mainImage\n [src]=\"imageSrc\"\n [alt]=\"fileName()\"\n [style.transform]=\"getImageTransform()\"\n [style.cursor]=\"getCursorStyle()\"\n (load)=\"onImageLoad()\"\n (mousedown)=\"startDrag($event)\"\n (mousemove)=\"onDrag($event)\"\n (mouseup)=\"stopDrag()\"\n (mouseleave)=\"stopDrag()\"\n class=\"zoomable-image\"\n />\n </div>\n\n <!-- Instrucciones -->\n <div class=\"image-footer\" *ngIf=\"zoomLevel() > 100\">\n <small>Arrastra para mover la imagen</small>\n </div>\n </div>\n <!-- Excel -->\n <div *ngIf=\"isExcelType()\" class=\"excel-viewer-container\">\n\n <!-- Tabs -->\n <div *ngIf=\"excelSheetNames.length > 1\" class=\"excel-sheet-tabs\">\n <button\n *ngFor=\"let sheet of excelSheetNames; let i = index\"\n type=\"button\"\n class=\"excel-sheet-tab\"\n [class.active]=\"excelCurrentSheetIndex() === i\"\n (click)=\"selectExcelSheet(i)\"\n >\n {{ sheet }}\n </button>\n </div>\n\n <hot-table\n *ngIf=\"showExcelViewer\"\n #hotTable\n [settings]=\"excelSettings\"\n [data]=\"excelData\"\n [colHeaders]=\"excelColumnHeaders\"\n [rowHeaders]=\"true\"\n [width]=\"'100%'\"\n [height]=\"'100%'\"\n licenseKey=\"non-commercial-and-evaluation\"\n [columns]=\"excelColumns\"\n >\n </hot-table>\n\n <div *ngIf=\"!showExcelViewer\" class=\"loader\">\n Cargando hoja...\n </div>\n\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.handsontable .table th,.handsontable .table td{border-top:none}.handsontable tr{background:#fff}.handsontable td{background-color:inherit}.handsontable .table caption+thead tr:first-child th,.handsontable .table caption+thead tr:first-child td,.handsontable .table colgroup+thead tr:first-child th,.handsontable .table colgroup+thead tr:first-child td,.handsontable .table thead:first-child tr:first-child th,.handsontable .table thead:first-child tr:first-child td{border-top:1px solid #CCCCCC}.handsontable .table-bordered{border:0;border-collapse:separate}.handsontable .table-bordered th,.handsontable .table-bordered td{border-left:none}.handsontable .table-bordered th:first-child,.handsontable .table-bordered td:first-child{border-left:1px solid #CCCCCC}.handsontable .table>tbody>tr>td,.handsontable .table>tbody>tr>th,.handsontable .table>tfoot>tr>td,.handsontable .table>tfoot>tr>th,.handsontable .table>thead>tr>td,.handsontable .table>thead>tr>th{line-height:21px;padding:0}.col-lg-1.handsontable,.col-lg-10.handsontable,.col-lg-11.handsontable,.col-lg-12.handsontable,.col-lg-2.handsontable,.col-lg-3.handsontable,.col-lg-4.handsontable,.col-lg-5.handsontable,.col-lg-6.handsontable,.col-lg-7.handsontable,.col-lg-8.handsontable,.col-lg-9.handsontable,.col-md-1.handsontable,.col-md-10.handsontable,.col-md-11.handsontable,.col-md-12.handsontable,.col-md-2.handsontable,.col-md-3.handsontable,.col-md-4.handsontable,.col-md-5.handsontable,.col-md-6.handsontable,.col-md-7.handsontable,.col-md-8.handsontable,.col-md-9.handsontable .col-sm-1.handsontable,.col-sm-10.handsontable,.col-sm-11.handsontable,.col-sm-12.handsontable,.col-sm-2.handsontable,.col-sm-3.handsontable,.col-sm-4.handsontable,.col-sm-5.handsontable,.col-sm-6.handsontable,.col-sm-7.handsontable,.col-sm-8.handsontable,.col-sm-9.handsontable .col-xs-1.handsontable,.col-xs-10.handsontable,.col-xs-11.handsontable,.col-xs-12.handsontable,.col-xs-2.handsontable,.col-xs-3.handsontable,.col-xs-4.handsontable,.col-xs-5.handsontable,.col-xs-6.handsontable,.col-xs-7.handsontable,.col-xs-8.handsontable,.col-xs-9.handsontable{padding-left:0;padding-right:0}.handsontable.ht-wrapper{height:100%;width:100%}.handsontable .table-striped>tbody>tr:nth-of-type(2n){background-color:#fff}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable .wtHider{position:relative;width:0}.handsontable .wtSpreader{position:relative;width:0;height:auto}.handsontable table,.handsontable tbody,.handsontable thead,.handsontable td,.handsontable th,.handsontable input,.handsontable textarea,.handsontable div{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:initial}.handsontable table.htCore{border-collapse:separate;border-spacing:0;margin:0;border-width:0;table-layout:fixed;width:0;outline-width:0;cursor:default;max-width:none;max-height:none}.handsontable col,.handsontable col.rowHeader{width:50px}.handsontable th,.handsontable td{border-top-width:0;border-left-width:0;border-right:1px solid #ccc;border-bottom:1px solid #ccc;height:22px;empty-cells:show;line-height:21px;padding:0 4px;background-color:#fff;vertical-align:top;overflow:hidden;outline:none;outline-width:0;white-space:pre-wrap}[dir=rtl].handsontable th,[dir=rtl].handsontable td{border-right-width:0;border-left:1px solid #ccc}.handsontable th:last-child{border-left:none;border-right:1px solid #ccc;border-bottom:1px solid #ccc}[dir=rtl].handsontable th:last-child{border-right:none;border-left:1px solid #ccc}.handsontable th:first-child,.handsontable .ht_clone_inline_start td:first-of-type,.handsontable .ht_clone_top_inline_start_corner td:first-of-type,.handsontable .ht_clone_bottom_inline_start_corner td:first-of-type,.handsontable.ht-wrapper:not(.htFirstDatasetColumnNotRendered) td:first-of-type{border-left:1px solid #ccc}[dir=rtl].handsontable th:first-child,[dir=rtl].handsontable.ht-wrapper:not(.htFirstDatasetColumnNotRendered) td:first-of-type{border-right:1px solid #ccc}.handsontable .ht_clone_top th:nth-child(2){border-left-width:0;border-right:1px solid #ccc}[dir=rtl].handsontable .ht_clone_top th:nth-child(2){border-right-width:0;border-left:1px solid #ccc}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable.htRowHeaders thead tr th:nth-child(2){border-right:1px solid #ccc}.handsontable tr:first-child th,.handsontable tr:first-child td{border-top:1px solid #ccc}.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-right-width:0;border-left:1px solid #ccc}[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-left-width:0;border-right:1px solid #ccc}.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr.lastChild th{border-bottom-width:0}.handsontable th{background-color:#f0f0f0;color:#222;text-align:center;font-weight:400;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#ccc}.handsontable thead th .relative{padding:2px 4px}.handsontable span.colHeader{display:inline-block;line-height:1.1}.handsontable .wtBorder{position:absolute;font-size:0}.handsontable .wtBorder.hidden{display:none!important}.handsontable .wtBorder:nth-child(1),.handsontable .wtBorder:nth-child(3){z-index:2}.handsontable .wtBorder:nth-child(2),.handsontable .wtBorder:nth-child(4){z-index:1}.handsontable .wtBorder.current{z-index:10}.handsontable .wtBorder.area{z-index:8}.handsontable .wtBorder.fill{z-index:6}.handsontable .wtBorder.corner{font-size:0;cursor:crosshair}.htBorders .wtBorder.ht-border-style-dashed-vertical{background-image:repeating-linear-gradient(to bottom,var(--ht-custom-border-color) 0 5px,transparent 0 10px)}.htBorders .wtBorder.ht-border-style-dashed-horizontal{background-image:repeating-linear-gradient(to right,var(--ht-custom-border-color) 0 5px,transparent 0 10px)}.htBorders .wtBorder.ht-border-style-dotted-horizontal{background-image:radial-gradient(circle,var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2),transparent 0);background-size:calc(var(--ht-custom-border-size) * 2) var(--ht-custom-border-size);background-repeat:repeat-x}.htBorders .wtBorder.ht-border-style-dotted-vertical{background-image:radial-gradient(circle,var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2),transparent 0);background-size:var(--ht-custom-border-size) calc(var(--ht-custom-border-size) * 2);background-repeat:repeat-y}.ht_clone_master{z-index:100}.ht_clone_inline_start{z-index:120}.ht_clone_bottom{z-index:130}.ht_clone_bottom_inline_start_corner{z-index:150}.ht_clone_top{z-index:160}.ht_clone_top_inline_start_corner{z-index:180}.handsontable col.hidden{width:0!important}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_master,.ht_clone_inline_start,.ht_clone_top,.ht_clone_bottom{overflow:hidden}.ht_master .wtHolder{overflow:auto}.handsontable .ht_master table.htCore>thead,.handsontable .ht_master table.htCore>tbody>tr>th,.handsontable .ht_clone_inline_start table.htCore>thead{visibility:hidden}.ht_clone_top .wtHolder,.ht_clone_inline_start .wtHolder,.ht_clone_bottom .wtHolder{overflow:hidden}.handsontable{position:relative;touch-action:manipulation;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;font-weight:400;color:#373737}.handsontable a{color:#104acc}.handsontable.htAutoSize{visibility:hidden;left:-99000px;position:absolute;top:-99000px}.handsontable td.htInvalid{background-color:#ffbeba!important}.handsontable td.htNoWrap{white-space:nowrap}.handsontable td.invisibleSelection,.handsontable th.invisibleSelection{outline:none}.handsontable td.invisibleSelection::selection,.handsontable th.invisibleSelection::selection{background:#fff0}.hot-display-license-info{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:400;color:#373737;padding:5px 0 3px;text-align:left}.hot-display-license-info a{color:#104acc;font-size:10px}.htFocusCatcher{position:absolute;z-index:-1;opacity:0;border:0;margin:0;padding:0;width:0;height:0}.handsontable .htTextEllipsis{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.handsontable .manualColumnResizer{position:absolute;top:0;cursor:col-resize;z-index:210;width:5px;height:25px}.handsontable .manualRowResizer{position:absolute;left:0;cursor:row-resize;z-index:210;height:5px;width:50px}.handsontable .manualColumnResizer:hover,.handsontable .manualColumnResizer.active,.handsontable .manualRowResizer:hover,.handsontable .manualRowResizer.active{background-color:#34a9db}.handsontable .manualColumnResizerGuide{position:absolute;right:unset;top:0;background-color:#34a9db;display:none;width:0;border-right:1px dashed #777;border-left:none;margin-left:5px;margin-right:unset}[dir=rtl].handsontable .manualColumnResizerGuide{left:unset;border-left:1px dashed #777;border-right:none;margin-right:5px;margin-left:unset}.handsontable .manualRowResizerGuide{position:absolute;left:0;bottom:0;background-color:#34a9db;display:none;height:0;border-bottom:1px dashed #777;margin-top:5px}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block;z-index:209}.handsontable td.area,.handsontable td.area-1,.handsontable td.area-2,.handsontable td.area-3,.handsontable td.area-4,.handsontable td.area-5,.handsontable td.area-6,.handsontable td.area-7{position:relative}.handsontable td.area:before,.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before{content:\"\";position:absolute;inset:0;background:#005eff}.handsontable td.area:before{opacity:.1}.handsontable td.area-1:before{opacity:.2}.handsontable td.area-2:before{opacity:.27}.handsontable td.area-3:before{opacity:.35}.handsontable td.area-4:before{opacity:.41}.handsontable td.area-5:before{opacity:.47}.handsontable td.area-6:before{opacity:.54}.handsontable td.area-7:before{opacity:.58}.handsontable tbody th.current,.handsontable thead th.current{box-shadow:inset 0 0 0 2px #4b89ff}.handsontable tbody th.ht__highlight,.handsontable thead th.ht__highlight{background-color:#dcdcdc}.handsontable tbody th.ht__active_highlight,.handsontable thead th.ht__active_highlight{background-color:#8eb0e7;color:#000}.handsontableInput{border:none;outline-width:0;margin:0;padding:1px 5px 0;font-family:inherit;line-height:21px;font-size:inherit;box-shadow:0 0 0 2px #5292f7 inset;resize:none;display:block;color:#000;border-radius:0;background-color:#fff;box-sizing:border-box!important}.handsontableInput:focus{outline:none}.handsontableInputHolder{position:absolute;top:0;left:0}.htSelectEditor{position:absolute;select{-webkit-appearance:menulist-button!important;width:100%;height:100%;border:2px solid #4b89ff;box-sizing:border-box!important}}.htSelectEditor select:focus{outline:none}.htSelectEditor .htAutocompleteArrow{display:none}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{content:\"\\25b6\";color:#777;position:absolute;right:5px;font-size:9px}[dir=rtl].handsontable .htSubmenu :after{content:\"\"}[dir=rtl].handsontable .htSubmenu :before{content:\"\\25c0\";color:#777;position:absolute;left:5px;font-size:9px}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable.listbox{border:1px solid #ccc;margin:0}.handsontable.listbox.autocompleteEditor,.handsontable.listbox.dropdownEditor{border-width:0}.handsontable.listbox .ht_master table{border-collapse:separate;background:#fff}.handsontable.listbox.autocompleteEditor .ht_master table,.handsontable.listbox.dropdownEditor .ht_master table{border:1px solid #ccc}.handsontable.listbox th,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th,.handsontable.listbox tr:first-child td,.handsontable.listbox td{border-color:transparent!important}.handsontable.listbox th,.handsontable.listbox td{white-space:nowrap;text-overflow:ellipsis}.handsontable.listbox td.htDimmed{cursor:default;color:inherit;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_editor_hidden{z-index:-1}.ht_editor_visible{z-index:200}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch}.handsontable.mobile .handsontableInput:focus{-webkit-box-shadow:0 0 0 2px #5292f7 inset;-moz-box-shadow:0 0 0 2px #5292f7 inset;box-shadow:0 0 0 2px #5292f7 inset;-webkit-appearance:none}.handsontable .topSelectionHandle,.handsontable .topSelectionHandle-HitArea,.handsontable .bottomSelectionHandle,.handsontable .bottomSelectionHandle-HitArea{left:-10000px;right:unset;top:-10000px;z-index:9999}[dir=rtl].handsontable .topSelectionHandle,[dir=rtl].handsontable .topSelectionHandle-HitArea,[dir=rtl].handsontable .bottomSelectionHandle,[dir=rtl].handsontable .bottomSelectionHandle-HitArea{right:-10000px;left:unset}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable .htAutocompleteArrow{float:right;font-size:10px;color:#bbb;cursor:default;width:16px;text-align:center}[dir=rtl].handsontable .htAutocompleteArrow{float:left}.handsontable td.htInvalid .htAutocompleteArrow{color:#555}.handsontable td.htInvalid .htAutocompleteArrow:hover{color:#1a1a1a}.handsontable td .htAutocompleteArrow:hover{color:#777}.handsontable td.area .htAutocompleteArrow{color:#d3d3d3}.handsontable .htCheckboxRendererInput.noValue{opacity:.5}.handsontable .htCheckboxRendererLabel{font-size:inherit;vertical-align:middle;cursor:pointer;display:inline-block}.handsontable .htCheckboxRendererLabel.fullWidth{width:100%}.handsontable .collapsibleIndicator{position:absolute;top:50%;transform:translateY(-50%);left:unset;right:5px;border:1px solid #A6A6A6;line-height:8px;color:#222;border-radius:10px;font-size:10px;width:10px;height:10px;cursor:pointer;-webkit-box-shadow:0 0 0 6px rgb(238,238,238);-moz-box-shadow:0 0 0 6px rgb(238,238,238);box-shadow:0 0 0 3px #eee;background:#eee;text-align:center}[dir=rtl].handsontable .collapsibleIndicator{right:unset;left:5px}.handsontable[dir=ltr] thead th:has(.collapsibleIndicator) div.htRight span.colHeader{margin-right:20px}.handsontable[dir=rtl] thead th:has(.collapsibleIndicator) div.htLeft span.colHeader{margin-left:20px}.handsontable .columnSorting{position:relative}.handsontable[dir=ltr] div.htRight span[class*=ascending],.handsontable[dir=ltr] div.htRight span[class*=descending]{margin-right:10px;margin-left:-10px}.handsontable[dir=rtl] div.htLeft span[class*=ascending],.handsontable[dir=rtl] div.htLeft span[class*=descending]{margin-left:10px;margin-right:-10px}.handsontable[dir=ltr] div.htRight span[class*=ascending]:only-child,.handsontable[dir=ltr] div.htRight span[class*=descending]:only-child{margin-right:15px;margin-left:-15px}.handsontable[dir=rtl] div.htLeft span[class*=ascending]:only-child,.handsontable[dir=rtl] div.htLeft span[class*=descending]:only-child{margin-left:15px;margin-right:-15px}.handsontable .columnSorting.sortAction:hover{text-decoration:underline;cursor:pointer}.handsontable span.colHeader.columnSorting:before{top:50%;margin-top:-6px;padding-left:8px;padding-right:0;position:absolute;right:-9px;left:unset;content:\"\";height:10px;width:5px;background-size:contain;background-repeat:no-repeat;background-position-x:right}[dir=rtl].handsontable span.colHeader.columnSorting:before{padding-right:8px;padding-left:0;left:-9px;right:unset;background-position-x:left}.handsontable span.colHeader.columnSorting.ascending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFNJREFUeAHtzjkSgCAUBNHPgsoy97+ulGXRqJE5L+xkxoYt2UdsLb5bqFINz+aLuuLn5rIu2RkO3fZpWENimNgiw6iBYRTPMLJjGFxQZ1hxxb/xBI1qC8k39CdKAAAAAElFTkSuQmCC)}.handsontable span.colHeader.columnSorting.descending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFJJREFUeAHtzjkSgCAQRNFmQYUZ7n9dKUvru0TmvPAn3br0QfgdZ5xx6x+rQn23GqTYnq1FDcnuzZIO2WmedVqIRVxgGKEyjNgYRjKGkZ1hFIZ3I70LyM0VtU8AAAAASUVORK5CYII=)}.htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled):before{content:\"*\";display:inline-block;position:relative;padding-right:20px}.handsontable.htGhostTable table thead th{border-bottom-width:0}.handsontable.htGhostTable table tbody tr th,.handsontable.htGhostTable table tbody tr td{border-top-width:0}.handsontable .htCommentCell{position:relative}.handsontable .htCommentCell:after{content:\"\";position:absolute;top:0;right:0;left:unset;border-left:6px solid transparent;border-right:none;border-top:6px solid black}[dir=rtl].handsontable .htCommentCell:after{left:0;right:unset;border-right:6px solid transparent;border-left:none}.htCommentsContainer .htComments{display:none;z-index:1059;position:absolute}.htCommentsContainer .htCommentTextArea{box-shadow:#0000001e 0 1px 3px,#0000003d 0 1px 2px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:none;border-left:3px solid #ccc;border-right:none;background-color:#fff;width:215px;height:90px;font-size:12px;padding:5px;outline:0!important;-webkit-appearance:none}[dir=rtl].htCommentsContainer .htCommentTextArea{border-right:3px solid #ccc;border-left:none}.htCommentsContainer .htCommentTextArea:focus{box-shadow:#0000001e 0 1px 3px,#0000003d 0 1px 2px,inset 0 0 0 1px #5292f7;border-left:3px solid #5292f7;border-right:none}[dir=rtl].htCommentsContainer .htCommentTextArea:focus{border-right:3px solid #5292f7;border-left:none}.htContextMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_bottom,.htContextMenu .ht_clone_inline_start,.htContextMenu .ht_clone_top_inline_start_corner,.htContextMenu .ht_clone_bottom_inline_start_corner{display:none}.htContextMenu .ht_master table.htCore{border-color:#ccc;border-style:solid;border-top-width:1px;border-bottom-width:2px;border-left-width:1px;border-right-width:2px}[dir=rtl].htContextMenu .ht_master table.htCore{border-right-width:1px;border-left-width:2px}.htContextMenu.handsontable:focus{outline:none}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htContextMenu table tbody tr td:first-child{border-top-width:0;border-bottom-width:0;border-left-width:0;border-right-width:0}[dir=rtl].htContextMenu table tbody tr td:first-child{border-right-width:0;border-left-width:0}.htContextMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htContextMenu table tbody tr td.current{background:#f3f3f3}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0;cursor:default}.htContextMenu table tbody tr td.htDisabled{color:#999;cursor:default}.htContextMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htContextMenu table tbody tr.htHidden{display:none}.htContextMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:6px}[dir=rtl].htContextMenu table tbody tr td .htItemWrapper{margin-right:10px;margin-left:6px}.htContextMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px;right:0}[dir=rtl].htContextMenu table tbody tr td div span.selected{right:4px;left:0}.htContextMenu .ht_master .wtHolder{overflow:hidden}textarea.HandsontableCopyPaste{position:fixed!important;top:0!important;right:100%!important;overflow:hidden;opacity:0;outline:0 none!important}.handsontable .changeType{background:#eee;border-radius:2px;border:1px solid #bbb;color:#bbb;font-size:9px;line-height:9px;padding:2px;margin:3px 1px 0 5px;float:right}[dir=rtl].handsontable .changeType{float:left}.handsontable[dir=rtl] .changeType{margin:3px 5px 0 1px}.handsontable .changeType:before{content:\"\\25bc \"}.handsontable .changeType:hover{border:1px solid #777;color:#777;cursor:pointer}.htDropdownMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htDropdownMenu .ht_clone_top,.htDropdownMenu .ht_clone_bottom,.htDropdownMenu .ht_clone_inline_start,.htDropdownMenu .ht_clone_top_inline_start_corner,.htDropdownMenu .ht_clone_bottom_inline_start_corner{display:none}.htDropdownMenu table.htCore{border-color:#ccc;border-style:solid;border-top-width:1px;border-bottom-width:2px;border-left-width:1px;border-right-width:2px}[dir=rtl].htDropdownMenu table.htCore{border-right-width:1px;border-left-width:2px}.htDropdownMenu.handsontable:focus{outline:none}.htDropdownMenu .wtBorder{visibility:hidden}.htDropdownMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htDropdownMenu table tbody tr td:first-child{border-top-width:0;border-right-width:0;border-bottom-width:0;border-left-width:0}[dir=rtl].htDropdownMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htDropdownMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htDropdownMenu table tbody tr td.current{background:#e9e9e9}.htDropdownMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0;cursor:default}.htDropdownMenu table tbody tr td.htDisabled{color:#999}.htDropdownMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htDropdownMenu:not(.htGhostTable) table tbody tr.htHidden{display:none}.htDropdownMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}[dir=rtl].htDropdownMenu table tbody tr td .htItemWrapper{margin-right:10px;margin-left:10px}.htDropdownMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px;right:0}[dir=rtl].htDropdownMenu table tbody tr td div span.selected{right:4px;left:0}.htDropdownMenu .ht_master .wtHolder{overflow:hidden}.htFiltersConditionsMenu:not(.htGhostTable){display:none;position:absolute;z-index:1070}.htFiltersConditionsMenu .ht_clone_top,.htFiltersConditionsMenu .ht_clone_bottom,.htFiltersConditionsMenu .ht_clone_inline_start,.htFiltersConditionsMenu .ht_clone_top_inline_start_corner,.htFiltersConditionsMenu .ht_clone_bottom_inline_start_corner{display:none}.htFiltersConditionsMenu table.htCore{border:1px solid #bbb;border-bottom-width:2px;border-right-width:2px}.htFiltersConditionsMenu .wtBorder{visibility:hidden}.htFiltersConditionsMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htFiltersConditionsMenu table tbody tr td:first-child{border-top-width:0;border-right-width:0;border-bottom-width:0;border-left-width:0}[dir=rtl].htFiltersConditionsMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htFiltersConditionsMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htFiltersConditionsMenu table tbody tr td.current{background:#e9e9e9}.htFiltersConditionsMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0}.htFiltersConditionsMenu table tbody tr td.htDisabled{color:#999}.htFiltersConditionsMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htFiltersConditionsMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}.htFiltersConditionsMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px}.htFiltersConditionsMenu .ht_master .wtHolder{overflow:hidden}.handsontable .htMenuFiltering{border-bottom:1px dotted #ccc;height:135px;overflow:hidden}.handsontable .ht_master table td.htCustomMenuRenderer{background-color:#fff;cursor:auto}.handsontable .htFiltersMenuLabel{font-size:.75em}.handsontable .htFiltersMenuActionBar{text-align:center;padding-top:10px;padding-bottom:3px}.handsontable .htFiltersMenuCondition.border{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuCondition .htUIInput{padding:0 0 5px}.handsontable .htFiltersMenuValue{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch{padding:0}.handsontable .htFiltersMenuCondition .htUIInput input,.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input{font-family:inherit;font-size:.75em;padding:4px;box-sizing:border-box;width:100%}.htUIMultipleSelect .ht_master .wtHolder{overflow:auto}.handsontable .htFiltersActive .changeType{border:1px solid #509272;color:#18804e;background-color:#d2e0d9}.handsontable .htUISelectAll{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUISelectAll{margin-right:0;margin-left:10px}.handsontable .htUIClearAll,.handsontable .htUISelectAll{display:inline-block}.handsontable .htUIClearAll a,.handsontable .htUISelectAll a{font-size:.75em}.handsontable .htUISelectionControls{text-align:right}[dir=rtl].handsontable .htUISelectionControls{text-align:left}.handsontable .htCheckboxRendererInput{display:inline-block;margin:0 5px 0 0;vertical-align:middle;height:1em}[dir=rtl].handsontable .htCheckboxRendererInput{margin-left:5px;margin-right:0}.handsontable .htUIInput{padding:3px 0 7px;position:relative;text-align:center}.handsontable .htUIInput input{border-radius:2px;border:1px solid #d2d1d1}.handsontable .htUIInputIcon{position:absolute}.handsontable .htUIInput.htUIButton{cursor:pointer;display:inline-block}.handsontable .htUIInput.htUIButton input{background-color:#eee;color:#000;cursor:pointer;font-family:inherit;font-size:.75em;font-weight:700;height:19px;min-width:64px}.handsontable .htUIInput.htUIButton input:hover{border-color:#b9b9b9}.handsontable .htUIInput.htUIButtonOK{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUIInput.htUIButtonOK{margin-right:0;margin-left:10px}.handsontable .htUIInput.htUIButtonOK input{background-color:#0f9d58;border-color:#18804e;color:#fff}.handsontable .htUIInput.htUIButtonOK input:focus-visible{background-color:#92dd8d;border-color:#7cb878;color:#000}.handsontable .htUIInput.htUIButtonOK input:hover{border-color:#1a6f46}.handsontable .htUISelect{cursor:pointer;margin-bottom:7px;position:relative}.handsontable .htUISelectCaption{background-color:#e8e8e8;border-radius:2px;border:1px solid #d2d1d1;font-family:inherit;font-size:.75em;font-weight:700;padding:3px 20px 3px 10px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.handsontable .htUISelectCaption:hover{background-color:#e8e8e8;border:1px solid #b9b9b9}.handsontable .htUISelectDropdown:after{content:\"\\25b2\";font-size:7px;position:absolute;right:10px;top:0}.handsontable .htUISelectDropdown:before{content:\"\\25bc\";font-size:7px;position:absolute;right:10px;top:8px}.handsontable .htUIMultipleSelect .handsontable .htCore{border:none}.handsontable .htUIMultipleSelect .handsontable .htCore td:hover{background-color:#f5f5f5}.handsontable .htUIMultipleSelectSearch input{border-radius:2px;border:1px solid #d2d1d1;padding:3px}.handsontable .htUIRadio{display:inline-block;margin-left:0;margin-right:5px;height:100%}[dir=rtl].handsontable .htUIRadio{margin-right:0;margin-left:5px}.handsontable .htUIRadio:last-child{margin-right:0}.handsontable .htUIRadio>input[type=radio]{margin-left:0;margin-right:.5ex}[dir=rtl].handsontable .htUIRadio>input[type=radio]{margin-right:0;margin-left:.5ex}.handsontable .htUIRadio label{vertical-align:middle}.handsontable .htFiltersMenuOperators{padding-bottom:5px}.handsontable th.beforeHiddenColumn{position:relative}.handsontable th.beforeHiddenColumn:after,.handsontable th.afterHiddenColumn:before{color:#bbb;position:absolute;top:50%;font-size:5pt;transform:translateY(-50%)}.handsontable th.afterHiddenColumn{position:relative}.handsontable[dir=ltr] th.afterHiddenColumn div.htLeft{margin-left:10px}.handsontable[dir=ltr] th.beforeHiddenColumn div.htRight,.handsontable[dir=rtl] th.afterHiddenColumn div.htRight{margin-right:10px}.handsontable[dir=rtl] th.beforeHiddenColumn div.htLeft{margin-left:10px}.handsontable th.beforeHiddenColumn:after{right:1px;content:\"\\25c0\"}[dir=rtl].handsontable th.beforeHiddenColumn:after{right:initial;left:1px;content:\"\\25b6\"}.handsontable th.afterHiddenColumn:before{left:1px;content:\"\\25b6\"}[dir=rtl].handsontable th.afterHiddenColumn:before{right:1px;left:initial;content:\"\\25c0\"}.handsontable th.beforeHiddenRow:before,.handsontable th.afterHiddenRow:after{color:#bbb;font-size:6pt;line-height:6pt;position:absolute;left:2px}.handsontable th.beforeHiddenRow,.handsontable th.afterHiddenRow{position:relative}.handsontable th.beforeHiddenRow:before{content:\"\\25b2\";bottom:2px}.handsontable th.afterHiddenRow:after{content:\"\\25bc\";top:2px}.handsontable.ht__selection--rows tbody th.beforeHiddenRow.ht__highlight:before,.handsontable.ht__selection--rows tbody th.afterHiddenRow.ht__highlight:after{color:#eee}.handsontable td.afterHiddenRow.firstVisibleRow,.handsontable th.afterHiddenRow.firstVisibleRow{border-top:1px solid #CCC}.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_top_inline_start_corner th:nth-child(2),.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_inline_start td:first-of-type{border-left:0 none}.handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualColumnMove.on-moving--columns *,.handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer{display:none}.handsontable .ht__manualColumnMove--guideline,.handsontable .ht__manualColumnMove--backlight{position:absolute;height:100%;display:none}.handsontable .ht__manualColumnMove--guideline{background:#757575;width:2px;top:0;margin-inline-start:-1px;margin-inline-end:0;z-index:205}.handsontable .ht__manualColumnMove--backlight{background:#343434;background:#34343440;display:none;z-index:205;pointer-events:none}.handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline,.handsontable.on-moving--columns .ht__manualColumnMove--backlight{display:block}.handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualRowMove.on-moving--rows *,.handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer{display:none}.handsontable .ht__manualRowMove--guideline,.handsontable .ht__manualRowMove--backlight{position:absolute;width:100%;display:none}.handsontable .ht__manualRowMove--guideline{background:#757575;height:2px;left:0;margin-top:-1px;z-index:205}.handsontable .ht__manualRowMove--backlight{background:#343434;background:#34343440;display:none;z-index:205;pointer-events:none}.handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline,.handsontable.on-moving--rows .ht__manualRowMove--backlight{display:block}.handsontable tbody td[rowspan][class*=area][class*=highlight]:not([class*=fullySelectedMergedCell]):before{opacity:0}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-multiple]:before{opacity:.1}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-0]:before{opacity:.1}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-1]:before{opacity:.2}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-2]:before{opacity:.27}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-3]:before{opacity:.35}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-4]:before{opacity:.41}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-5]:before{opacity:.47}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-6]:before{opacity:.54}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-7]:before{opacity:.58}.handsontable[dir=ltr] div.htRight span[class*=sort-]{margin-right:15px;margin-left:-15px}.handsontable[dir=rtl] div.htLeft span[class*=sort-]{margin-left:15px;margin-right:-15px}.handsontable[dir=ltr] div.htRight span[class*=sort-]:only-child{margin-right:20px;margin-left:-20px}.handsontable[dir=rtl] div.htLeft span[class*=sort-]:only-child{margin-left:20px;margin-right:-20px}.handsontable span.colHeader.columnSorting:after{top:50%;margin-top:-2px;position:absolute;right:-15px;left:unset;padding-left:5px;padding-right:unset;font-size:8px;height:8px;line-height:1.1}[dir=rtl].handsontable span.colHeader.columnSorting:after{left:-15px;right:unset;padding-right:5px;padding-left:unset}.handsontable span.colHeader.columnSorting[class^=sort-]:after,.handsontable span.colHeader.columnSorting[class*=\" sort-\"]:after{content:\"+\"}.handsontable span.colHeader.columnSorting.sort-1:after{content:\"1\"}.handsontable span.colHeader.columnSorting.sort-2:after{content:\"2\"}.handsontable span.colHeader.columnSorting.sort-3:after{content:\"3\"}.handsontable span.colHeader.columnSorting.sort-4:after{content:\"4\"}.handsontable span.colHeader.columnSorting.sort-5:after{content:\"5\"}.handsontable span.colHeader.columnSorting.sort-6:after{content:\"6\"}.handsontable span.colHeader.columnSorting.sort-7:after{content:\"7\"}.htGhostTable th div button.changeType+span.colHeader.columnSorting:not(.indicatorDisabled){padding-right:5px}.handsontable thead th.hiddenHeader:not(:first-of-type){display:none}thead th.hiddenHeaderText .colHeader{opacity:0}.handsontable th.ht_nestingLevels{text-align:left;padding-left:7px}[dir=rtl].handsontable th.ht_nestingLevels{text-align:right;padding-right:7px}.handsontable th div.ht_nestingLevels{display:inline-block;position:absolute;left:11px;right:unset}[dir=rtl].handsontable th div.ht_nestingLevels{right:11px;left:unset}.handsontable.innerBorderInlineStart th div.ht_nestingLevels,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{right:10px;left:unset}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingLevels,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{left:10px;right:unset}.handsontable th span.ht_nestingLevel{display:inline-block}.handsontable th span.ht_nestingLevel_empty{display:inline-block;width:10px;height:1px;float:left}[dir=rtl].handsontable th span.ht_nestingLevel_empty{float:right}.handsontable th span.ht_nestingLevel:after{content:\"\\2510\";font-size:9px;display:inline-block;position:relative;bottom:3px}.handsontable th div.ht_nestingButton{display:inline-block;position:absolute;right:-2px;left:unset;cursor:pointer}[dir=rtl].handsontable th div.ht_nestingButton{left:-2px;right:unset}.handsontable th div.ht_nestingButton.ht_nestingExpand:after{content:\"+\"}.handsontable th div.ht_nestingButton.ht_nestingCollapse:after{content:\"-\"}.handsontable.innerBorderInlineStart th div.ht_nestingButton,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{right:0;left:unset}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingButton,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{left:0;right:unset}.ht-root-wrapper{position:relative;display:flex;flex-direction:column;height:100%}.ht-grid{flex:1 1 auto;min-height:0}.ht-dialog{position:absolute;top:0;left:0;display:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;width:100%;height:100%;z-index:1060;opacity:0;overflow-y:auto;border:1px solid #ccc;box-sizing:border-box!important}.ht-dialog[dir=rtl]{left:auto;right:0}.ht-dialog:focus{border:1px solid #4b89ff;outline:none}.ht-dialog:has(.htFocusCatcher:focus){border:1px solid #4b89ff;outline:none}.ht-dialog *{box-sizing:border-box!important}.ht-dialog--background-solid{background-color:#fff}.ht-dialog--background-semi-transparent{background-color:#ffffff80}.ht-dialog--animation{transition:opacity .15s ease-in-out}.ht-dialog--show{opacity:1}.ht-dialog__content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;min-height:100%;padding:16px}.ht-dialog__content-wrapper:focus{border:1px solid #4b89ff;outline:none}.ht-dialog__content{position:relative;padding:8px;display:flex;gap:8px;max-width:480px;color:#222}.ht-dialog__content--background{box-shadow:0 8px 16px #00000014;background-color:#f7f7f9}.ht-dialog--confirm .ht-dialog__content-wrapper{text-align:center}.ht-dialog--confirm .ht-dialog__content-wrapper-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;max-width:480px}.ht-dialog--confirm .ht-dialog__content-wrapper-inner--background{box-shadow:0 8px 16px #00000014;background-color:#f7f7f9}.ht-dialog--confirm .ht-dialog__content{display:flex;flex-direction:column;align-items:center;justify-content:center}.ht-dialog--confirm .ht-dialog__content:has(.ht-dialog__buttons){gap:4px}.ht-dialog--confirm .ht-dialog__title{margin:0;font-size:16px;font-weight:400;line-height:24px}.ht-dialog--confirm .ht-dialog__description{margin:0;color:#222;font-size:12px;font-weight:400;line-height:16px}.ht-dialog--confirm .ht-dialog__buttons{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px}.ht-root-wrapper .ht-pagination{color:#222;background:#f0f0f0;border:1px solid #ccc;border-top-color:transparent;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:12px;font-weight:400;box-sizing:border-box;overflow-x:auto}.ht-root-wrapper .ht-pagination__inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding-inline:8px;padding-block:4px;min-width:230px}.ht-root-wrapper .ht-pagination--bordered{border-top-color:#ccc}.ht-root-wrapper .ht-page-size-section{display:flex;align-items:center;gap:8px}.ht-root-wrapper .ht-page-size-section span{white-space:nowrap}.ht-root-wrapper .ht-page-size-section__select-wrapper{position:relative;border-radius:2px;border:1px solid #ccc}.ht-root-wrapper .ht-page-size-section__select-wrapper select{padding-inline-start:8px;padding-inline-end:8px;padding-top:4px;padding-bottom:4px;border-radius:2px;color:#222;background-color:#f0f0f0;border:none;-webkit-appearance:none;font-size:inherit;cursor:pointer}.ht-root-wrapper .ht-page-size-section__select-wrapper select:disabled{opacity:.4;cursor:default}.ht-root-wrapper .ht-page-size-section__select-wrapper select:hover:not(:disabled){background-color:#e0e0e0}.ht-root-wrapper .ht-page-size-section__select-wrapper select:focus{background-color:#e0e0e0;outline:1px solid #4b89ff}.ht-root-wrapper .ht-page-counter-section{margin-inline-end:auto}.ht-root-wrapper .ht-page-navigation-section{display:flex;align-items:center;gap:8px}.ht-root-wrapper .ht-page-navigation-section button{font-size:inherit;color:#222;background-color:transparent;border:none;padding:4px;border-radius:2px;cursor:pointer}.ht-root-wrapper .ht-page-navigation-section button:before{display:block;width:16px;height:16px;line-height:16px;text-align:center}.ht-root-wrapper .ht-page-navigation-section button:disabled{opacity:.4;cursor:default}.ht-root-wrapper .ht-page-navigation-section button:hover:not(:disabled){background-color:#e0e0e0}.ht-root-wrapper .ht-page-navigation-section button:focus{outline:1px solid #4b89ff}.ht-root-wrapper .ht-page-navigation-section .ht-page-first:before{content:\"\\21a4\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-first:before{content:\"\\21a6\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-prev:before{content:\"\\21a2\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-prev:before{content:\"\\21a3\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-next:before{content:\"\\21a3\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-next:before{content:\"\\21a2\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-last:before{content:\"\\21a6\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-last:before{content:\"\\21a4\"}.ht-root-wrapper .ht-page-navigation-section span{white-space:nowrap}.ht-loading__icon-svg{display:block;width:16px;height:16px;color:#5292f7;animation:ht-loading-spin 1s linear infinite;transform-origin:50% 50%}.ht-loading__content{display:flex;align-items:center;gap:8px}.ht-loading__title{margin:0;font-size:13px;font-weight:400;line-height:18px}.ht-loading__description{margin:0;color:#222;font-size:12px;line-height:16px;font-weight:400}@keyframes ht-loading-spin{to{transform:rotate(360deg)}}.ht-empty-data-state{display:none;position:absolute;width:100%;left:0;z-index:999;overflow-y:auto;border:1px solid #ccc;box-sizing:border-box;background-color:#fff}.ht-empty-data-state *{box-sizing:border-box!important}.ht-empty-data-state__content-wrapper{display:flex;align-items:center;justify-content:center;text-align:center;width:100%;min-height:100%;padding:16px}.ht-empty-data-state__content-wrapper-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:480px;padding:16px}.ht-empty-data-state__content-wrapper-inner:focus{outline:none;box-shadow:0 0 0 1px #4b89ff}.ht-empty-data-state__content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.ht-empty-data-state__title{margin:0;font-size:16px;font-weight:400;line-height:24px}.ht-empty-data-state__description{margin:0;color:#222;font-size:12px;line-height:16px;font-weight:400}.ht-empty-data-state__buttons{display:flex;justify-content:center;flex-direction:row;flex-wrap:wrap;gap:8px}.ht-empty-data-state__buttons--has-buttons{margin-top:8px}.ht-empty-data-state--disable-top-border{border-top-width:0}.ht-empty-data-state--disable-inline-border{border-inline-start-width:0}.ht-empty-data-state--disable-bottom-border,.ht-empty-data-state:has(~.ht-pagination){border-bottom-width:0}.pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.pika-single:before,.pika-single:after{content:\" \";display:table}.pika-single:after{clear:both}.pika-single.is-hidden{display:none}.pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px #00000080}.pika-lendar{float:left;width:240px;margin:8px}.pika-title{position:relative;text-align:center}.pika-label{display:inline-block;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:700;background-color:#fff}.pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;opacity:0}.pika-prev,.pika-next{display:block;cursor:pointer;position:relative;outline:none;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5}.pika-prev:hover,.pika-next:hover{opacity:1}.pika-prev,.is-rtl .pika-next{float:left;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==)}.pika-next,.is-rtl .pika-prev{float:right;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=)}.pika-prev.is-disabled,.pika-next.is-disabled{cursor:default;opacity:.2}.pika-select{display:inline-block}.pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.pika-table th,.pika-table td{width:14.285714285714286%;padding:0}.pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:700;text-align:center}.pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:none;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:center;background:#f5f5f5;height:initial}.pika-week{font-size:11px;color:#999}.is-today .pika-button{color:#3af;font-weight:700}.is-selected .pika-button,.has-event .pika-button{color:#fff;font-weight:700;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.has-event .pika-button{background:#005da9;box-shadow:inset 0 1px 3px #0076c9}.is-disabled .pika-button,.is-inrange .pika-button{background:#d5e9f7}.is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.is-disabled .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.is-outside-current-month .pika-button{color:#999;opacity:.3}.is-selection-disabled{pointer-events:none;cursor:default}.pika-button:hover,.pika-row.pick-whole-week:hover .pika-button{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.pika-table abbr{border-bottom:none;cursor:help}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}.document-viewer-container{height:100%;min-height:0;width:100%;display:flex;flex-direction:column;padding:20px;box-sizing:border-box;background-color:#f5f5f5;overflow:hidden}.loader,.error-message{text-align:center;padding:40px 20px;font-family:Arial,sans-serif;background-color:#fff;border-radius:4px;margin:20px;box-shadow:0 2px 4px #0000001a}.error-message{color:#d32f2f;background-color:#ffebee;border:1px solid #ffcdd2}.text-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;margin:10px;overflow:auto;border:1px solid #ddd;box-shadow:0 2px 4px #0000001a;font-family:Courier New,monospace}.text-viewer pre{margin:0;font-size:14px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.word-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;box-shadow:0 2px 10px #0000001a;margin:10px;overflow:auto;font-family:Calibri,Arial,sans-serif}.word-viewer h1,.word-viewer h2,.word-viewer h3{color:#333}.word-viewer p{line-height:1.6;margin-bottom:15px}.presentation-viewer{flex:1 1 auto;min-height:0;background-color:#f5f5f5;padding:20px;border-radius:4px;margin:10px;display:flex;justify-content:center;align-items:center}.presentation-placeholder{text-align:center;color:#666;font-style:italic;padding:50px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}::ng-deep ngx-extended-pdf-viewer{flex:1 1 auto;min-height:0;height:auto;width:calc(100% - 20px);margin:10px;border:1px solid #ddd;border-radius:4px;display:block}.excel-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;box-shadow:0 2px 10px #0000001a;margin:10px;overflow:auto}.excel-sheet{margin-bottom:30px;background:#fff}.excel-sheet h3{background-color:#f3f2f1;padding:12px 16px;margin:0;border-radius:4px 4px 0 0;font-size:14px;font-weight:600;color:#333;border-bottom:1px solid #e1dfdd}.excel-container{overflow-x:auto;overflow-y:auto;border:1px solid #e1dfdd;border-top:none;border-radius:0 0 4px 4px;max-height:calc(100% - 50px)}.excel-table{border-collapse:collapse;width:100%;font-family:Segoe UI,Calibri,Arial,sans-serif;font-size:13px;background:#fff}.excel-table td,.excel-table th{border:1px solid #e1dfdd;padding:8px 12px;white-space:nowrap;color:#333}.excel-table th{background-color:#f2f2f2;font-weight:700}.excel-table tr:first-child td{background-color:#f3f2f1;font-weight:600;color:#333;border-bottom:2px solid #8a8886}.excel-table td.number-cell,.excel-table td.percentage-cell,.excel-table td[data-format*=\"%\"]{text-align:right}.excel-table td.percentage-cell{color:#107c41}.excel-table td.text-cell{text-align:left}.excel-table tr:nth-child(2n) td{background-color:#faf9f8}.excel-table tr:hover td{background-color:#edf3fa}.excel-table td.selected{background-color:#cce8ff;border:2px solid #0078d4}.excel-viewer-container{flex:1 1 auto;min-height:0;width:calc(100% - 20px);margin:10px;border-radius:4px;overflow:hidden;box-shadow:0 2px 10px #0000001a;background:#fff;display:flex;flex-direction:column}.excel-sheet-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:12px 10px 0 8px;background:#f3f2f1;border-bottom:1px solid #e1dfdd;min-height:44px}.excel-sheet-tab{padding:8px 16px;border:1px solid #e1dfdd;border-bottom:none;border-radius:4px 4px 0 0;font-size:13px;font-family:Segoe UI,Arial,sans-serif;color:#333;cursor:pointer;transition:background .15s,border-color .15s}.excel-sheet-tab:hover{background:#edebe9;border-bottom:1px solid #000000}.excel-sheet-tab.active{background:#fff;font-weight:600;border-bottom:1px solid #000000;margin-bottom:2px;z-index:1}.excel-container-custom{width:100%;overflow-x:auto;overflow-y:auto}::ng-deep .handsontable{font-family:Segoe UI,Arial,sans-serif;font-size:13px;overflow:hidden!important}::ng-deep .wtHolder{width:100%!important;height:100%!important}::ng-deep .handsontable td{border:1px solid #e1dfdd;padding:8px 12px;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;word-break:break-word;line-height:1.4;vertical-align:top;max-width:300px;min-width:80px;margin:0!important}::ng-deep .handsontable td:hover{overflow:visible;background-color:#edf3fa;position:relative;z-index:10;box-shadow:0 2px 8px #00000026}::ng-deep .handsontable .htRight{text-align:right;font-family:Segoe UI,Consolas,monospace}::ng-deep .handsontable .htLeft{text-align:left}::ng-deep .handsontable .htCenter{text-align:center}::ng-deep .handsontable tr:nth-child(2n) td{background-color:#faf9f8}::ng-deep .handsontable tr:hover td{background-color:#edf3fa}::ng-deep .handsontable .current-row td{background-color:#e5f3ff}::ng-deep .handsontable .manualColumnResizer{background-color:#34a9db;width:5px;cursor:col-resize;opacity:0;transition:opacity .2s}::ng-deep .handsontable .manualColumnResizer:hover,::ng-deep .handsontable .manualColumnResizer.active{opacity:1;background-color:#0078d4}::ng-deep .handsontable .manualRowResizer{background-color:#34a9db;height:5px;cursor:row-resize;opacity:0;transition:opacity .2s}::ng-deep .handsontable .manualRowResizer:hover,::ng-deep .handsontable .manualRowResizer.active{opacity:1;background-color:#0078d4}::ng-deep .wtHolder::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::ng-deep .wtHolder::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::ng-deep .wtHolder::-webkit-scrollbar-thumb:hover{background:#a8a8a8}::ng-deep .htContextMenu table{font-family:Segoe UI,Arial,sans-serif;font-size:12px}::ng-deep .htContextMenu .htItemWrapper{padding:6px 12px}::ng-deep .htContextMenu .current{background-color:#e5f3ff}@media(max-width:768px){.document-viewer-container{padding:10px}.excel-viewer-container{width:calc(100% - 10px);margin:5px}.excel-viewer,.image-viewer,.text-viewer,.word-viewer,.presentation-viewer{margin:5px;padding:10px}::ng-deep .handsontable td{font-size:11px;padding:4px 6px}::ng-deep .handsontable th{font-size:11px;padding:6px}::ng-deep ngx-extended-pdf-viewer{width:calc(100% - 10px);margin:5px}}.excel-viewer-container{overflow:hidden;position:relative}.excel-container-custom{overflow:auto;position:relative;height:100%;width:100%}.image-viewer{flex:1 1 auto;width:100%;height:100%;display:flex;flex-direction:column;background-color:#fff}.image-toolbar{padding:10px;background-color:#fff;border-bottom:1px solid #ddd;display:flex;gap:8px;align-items:center;z-index:10}.image-toolbar button{padding:5px 10px;border:1px solid #ccc;background-color:#fff;border-radius:4px;cursor:pointer;font-size:16px;min-width:36px}.image-toolbar button:hover{background-color:#f0f0f0}.image-container{flex:1;overflow:hidden;position:relative;display:flex;justify-content:center;align-items:center;background-color:#fff}.responsive-image{max-width:100%;max-height:100%;object-fit:contain;transition:transform .1s ease;transform-origin:center center;will-change:transform;-webkit-user-select:none;user-select:none}::ng-deep .handsontable .ht_clone_top,::ng-deep .handsontable .ht_clone_top_left_corner,::ng-deep .handsontable .ht_clone_left{display:none!important}\n/*! Bundled license information:\n\nhandsontable/dist/handsontable.full.css:\n (*!\n * Copyright (c) HANDSONCODE sp. z o. o.\n *\n * HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in\n * Gdynia, Poland, at Aleja Zwyciestwa 96-98, registered by the District Court in Gdansk under number\n * 538651, EU tax ID number: PL5862294002, share capital: PLN 62,800.00.\n *\n * This software is protected by applicable copyright laws, including international treaties, and dual-\n * licensed - depending on whether your use for commercial purposes, meaning intended for or\n * resulting in commercial advantage or monetary compensation, or not.\n *\n * If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing\n * the suitability, performance, and usefulness of this software outside the production environment,\n * you agree to be bound by the terms included in the \"handsontable-non-commercial-license.pdf\" file.\n *\n * Your use of this software for commercial purposes is subject to the terms included in an applicable\n * license agreement.\n *\n * In any case, you must not make any such use of this software as to develop software which may be\n * considered competitive with this software.\n *\n * UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN \"AS IS\"\n * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO\n * LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,\n * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM\n * USE OR INABILITY TO USE THIS SOFTWARE.\n *\n * Version: 16.2.0\n * Release date: 25/11/2025 (built at 20/11/2025 13:27:05)\n *)\n (*!\n * Handsontable ContextMenu\n *)\n (*!\n * Handsontable DropdownMenu\n *)\n (*!\n * Handsontable Filters\n *)\n (*!\n * Handsontable HiddenRows\n *)\n (*!\n * Pikaday\n * Copyright \u00A9 2014 David Bushell | BSD & MIT license | https://dbushell.com/\n *)\n*/\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: NgxExtendedPdfViewerModule }, { kind: "component", type: i4.NgxExtendedPdfViewerComponent, selector: "ngx-extended-pdf-viewer", inputs: ["customFindbarInputArea", "customToolbar", "customFindbar", "customFindbarButtons", "customPdfViewer", "customSecondaryToolbar", "customSidebar", "customThumbnail", "customFreeFloatingBar", "showFreeFloatingBar", "enableDragAndDrop", "forceUsingLegacyES5", "formData", "disableForms", "pageViewMode", "scrollMode", "authorization", "httpHeaders", "contextMenuAllowed", "enablePrint", "enablePrintAutoRotate", "forceFullReloadOfJavaScriptCode", "showTextEditor", "showStampEditor", "showCommentEditor", "showDrawEditor", "showHighlightEditor", "showSignatureEditor", "logLevel", "minifiedJSLibraries", "printResolution", "rotation", "src", "base64Src", "minHeight", "height", "backgroundColor", "pdfBackgroundColor", "filenameForDownload", "ignoreKeyboard", "ignoreKeys", "acceptKeys", "imageResourcesPath", "localeFolderPath", "language", "listenToURL", "nameddest", "password", "replaceBrowserPrint", "useInlineScripts", "showUnverifiedSignatures", "startTabindex", "showSidebarButton", "sidebarVisible", "activeSidebarView", "findbarVisible", "propertiesDialogVisible", "showFindButton", "showFindHighlightAll", "showFindMatchCase", "showFindMultiple", "showFindRegexp", "showFindEntireWord", "showFindMatchDiacritics", "showFindResultsCount", "showFindMessages", "showMovePageButton", "showPagingButtons", "showFirstAndLastPageButtons", "showPreviousAndNextPageButtons", "showPageNumber", "showPageLabel", "showZoomButtons", "showZoomDropdown", "showPresentationModeButton", "showOpenFileButton", "showPrintButton", "showDownloadButton", "theme", "showToolbar", "showSecondaryToolbarButton", "showSinglePageModeButton", "showVerticalScrollButton", "showHorizontalScrollButton", "showWrappedScrollButton", "showInfiniteScrollButton", "showBookModeButton", "showRotateButton", "showRotateCwButton", "showRotateCcwButton", "handTool", "showHandToolButton", "showSpreadButton", "showPropertiesButton", "showBorders", "spread", "showScrollingButtons", "page", "pageLabel", "textLayer", "zoom", "zoomLevels", "maxZoom", "minZoom", "mobileFriendlyZoom"], outputs: ["annotationEditorEvent", "formDataChange", "pageViewModeChange", "progress", "srcChange", "scrollModeChange", "afterPrint", "beforePrint", "currentZoomFactor", "rotationChange", "annotationLayerRendered", "annotationEditorLayerRendered", "xfaLayerRendered", "outlineLoaded", "attachmentsloaded", "layersloaded", "sidebarVisibleChange", "activeSidebarViewChange", "findbarVisibleChange", "propertiesDialogVisibleChange", "handToolChange", "spreadChange", "thumbnailDrawn", "pageChange", "pageLabelChange", "pagesLoaded", "pageRender", "pageRendered", "pdfDownloaded", "pdfLoaded", "pdfLoadingStarts", "pdfLoadingFailed", "textLayerRendered", "annotationEditorModeChanged", "updateFindMatchesCount", "updateFindState", "zoomChange"] }, { kind: "ngmodule", type: HotTableModule }, { kind: "component", type: i5.HotTableComponent, selector: "hot-table", inputs: ["settings", "hotId", "activeHeaderClassName", "allowEmpty", "allowHtml", "allowInsertColumn", "allowInsertRow", "allowInvalid", "allowRemoveColumn", "allowRemoveRow", "ariaTags", "autoColumnSize", "autoRowSize", "autoWrapCol", "autoWrapRow", "bindRowsWithHeaders", "cell", "cells", "checkedTemplate", "className", "colHeaders", "collapsibleColumns", "columnHeaderHeight", "columns", "columnSorting", "columnSummary", "colWidths", "commentedCellClassName", "comments", "contextMenu", "copyable", "copyPaste", "correctFormat", "currentColClassName", "currentHeaderClassName", "currentRowClassName", "customBorders", "data", "dataDotNotation", "dataSchema", "dateFormat", "datePickerConfig", "defaultDate", "tabNavigation", "themeName", "disableVisualSelection", "dragToScroll", "dropdownMenu", "editor", "enterBeginsEditing", "enterMoves", "fillHandle", "filter", "filteringCaseSensitive", "filters", "fixedColumnsLeft", "fixedColumnsStart", "fixedRowsBottom", "fixedRowsTop", "formulas", "fragmentSelection", "headerClassName", "height", "hiddenColumns", "hiddenRows", "initialState", "invalidCellClassName", "imeFastEdit", "label", "language", "layoutDirection", "licenseKey", "locale", "manualColumnFreeze", "manualColumnMove", "manualColumnResize", "manualRowMove", "manualRowResize", "maxCols", "maxRows", "mergeCells", "minCols", "minRowHeights", "minRows", "minSpareCols", "minSpareRows", "multiColumnSorting", "navigableHeaders", "nestedHeaders", "nestedRows", "noWordWrapClassName", "numericFormat", "observeDOMVisibility", "outsideClickDeselects", "pagination", "persistentState", "placeholder", "placeholderCellClassName", "preventOverflow", "preventWheel", "readOnly", "readOnlyCellClassName", "renderAllColumns", "renderAllRows", "renderer", "rowHeaders", "rowHeaderWidth", "rowHeights", "search", "selectionMode", "selectOptions", "skipColumnOnPaste", "skipRowOnPaste", "sortByRelevance", "source", "startCols", "startRows", "stretchH", "strict", "tableClassName", "tabMoves", "title", "trimDropdown", "trimRows", "trimWhitespace", "type", "uncheckedTemplate", "undo", "validator", "valueGetter", "valueSetter", "viewportColumnRenderingOffset", "viewportRowRenderingOffset", "visibleRows", "width", "wordWrap", "afterAddChild", "afterAutofill", "afterBeginEditing", "afterCellMetaReset", "afterChange", "afterChangesObserved", "afterColumnCollapse", "afterColumnExpand", "afterColumnFreeze", "afterColumnMove", "afterColumnResize", "afterColumnSequenceCacheUpdate", "afterColumnSequenceChange", "afterColumnSort", "afterColumnUnfreeze", "afterContextMenuDefaultOptions", "afterContextMenuHide", "afterContextMenuShow", "afterCopy", "afterCopyLimit", "afterCreateCol", "afterCreateRow", "afterCut", "afterDeselect", "afterDestroy", "afterDetachChild", "afterDocumentKeyDown", "afterDrawSelection", "afterDropdownMenuDefaultOptions", "afterDropdownMenuHide", "afterDropdownMenuShow", "afterFilter", "afterFormulasValuesUpdate", "afterGetCellMeta", "afterGetColHeader", "afterGetColumnHeaderRenderers", "afterGetRowHeader", "afterGetRowHeaderRenderers", "afterHideColumns", "afterHideRows", "afterInit", "afterLanguageChange", "afterListen", "afterLoadData", "afterMergeCells", "afterModifyTransformEnd", "afterModifyTransformFocus", "afterModifyTransformStart", "afterMomentumScroll", "afterNamedExpressionAdded", "afterNamedExpressionRemoved", "afterOnCellContextMenu", "afterOnCellCornerDblClick", "afterOnCellCornerMouseDown", "afterOnCellMouseDown", "afterOnCellMouseOut", "afterOnCellMouseOver", "afterOnCellMouseUp", "afterPageChange", "afterPageSizeChange", "afterPageSizeVisibilityChange", "afterPageCounterVisibilityChange", "afterPageNavigationVisibilityChange", "afterPaste", "afterPluginsInitialized", "afterRedo", "afterRedoStackChange", "afterRefreshDimensions", "afterRemoveCellMeta", "afterRemoveCol", "afterRemoveRow", "afterRender", "afterRenderer", "afterRowMove", "afterRowResize", "afterRowSequenceCacheUpdate", "afterRowSequenceChange", "afterScrollHorizontally", "afterScrollVertically", "afterScroll", "afterSelectColumns", "afterSelection", "afterSelectionByProp", "afterSelectionEnd", "afterSelectionEndByProp", "afterSelectionFocusSet", "afterSelectRows", "afterSetCellMeta", "afterSetDataAtCell", "afterSetDataAtRowProp", "afterSetSourceDataAtCell", "afterSetTheme", "afterSheetAdded", "afterSheetRenamed", "afterSheetRemoved", "afterTrimRow", "afterUndo", "afterUndoStackChange", "afterUnhideColumns", "afterUnhideRows", "afterUnlisten", "afterUnmergeCells", "afterUntrimRow", "afterUpdateData", "afterUpdateSettings", "afterValidate", "afterViewportColumnCalculatorOverride", "afterViewportRowCalculatorOverride", "afterViewRender", "beforeAddChild", "beforeAutofill", "beforeBeginEditing", "beforeCellAlignment", "beforeChange", "beforeChangeRender", "beforeColumnCollapse", "beforeColumnExpand", "beforeColumnFreeze", "beforeColumnMove", "beforeColumnResize", "beforeColumnSort", "beforeColumnWrap", "beforeColumnUnfreeze", "beforeCompositionStart", "beforeContextMenuSetItems", "beforeContextMenuShow", "beforeCopy", "beforeCreateCol", "beforeCreateRow", "beforeCut", "beforeDetachChild", "beforeDrawBorders", "beforeDropdownMenuSetItems", "beforeDropdownMenuShow", "beforeFilter", "beforeGetCellMeta", "beforeHeightChange", "beforeHideColumns", "beforeHideRows", "beforeHighlightingColumnHeader", "beforeHighlightingRowHeader", "beforeInit", "beforeInitWalkontable", "beforeKeyDown", "beforeLanguageChange", "beforeLoadData", "beforeMergeCells", "beforeOnCellContextMenu", "beforeOnCellMouseDown", "beforeOnCellMouseOut", "beforeOnCellMouseOver", "beforeOnCellMouseUp", "beforePageChange", "beforePageSizeChange", "beforePaste", "beforeRedo", "beforeRedoStackChange", "beforeRefreshDimensions", "beforeRemoveCellClassNames", "beforeRemoveCellMeta", "beforeRemoveCol", "beforeRemoveRow", "beforeRender", "beforeRenderer", "beforeRowMove", "beforeRowResize", "beforeRowWrap", "beforeSelectColumns", "beforeSelectionFocusSet", "beforeSelectionHighlightSet", "beforeSelectRows", "beforeSetCellMeta", "beforeSetRangeEnd", "beforeSetRangeStart", "beforeSetRangeStartOnly", "beforeStretchingColumnWidth", "beforeTouchScroll", "beforeTrimRow", "beforeUndo", "beforeUndoStackChange", "beforeUnhideColumns", "beforeUnhideRows", "beforeUnmergeCells", "beforeUntrimRow", "beforeUpdateData", "beforeValidate", "beforeValueRender", "beforeViewportScroll", "beforeViewportScrollHorizontally", "beforeViewportScrollVertically", "beforeViewRender", "beforeWidthChange", "construct", "init", "modifyAutoColumnSizeSeed", "modifyAutofillRange", "modifyColHeader", "modifyColumnHeaderHeight", "modifyColumnHeaderValue", "modifyColWidth", "modifyCopyableRange", "modifyFiltersMultiSelectValue", "modifyFocusedElement", "modifyData", "modifyFocusOnTabNavigation", "modifyGetCellCoords", "modifyGetCoordsElement", "modifyRowData", "modifyRowHeader", "modifyRowHeaderWidth", "modifyRowHeight", "modifyRowHeightByOverlayName", "modifySourceData", "modifyTransformEnd", "modifyTransformFocus", "modifyTransformStart", "persistentStateLoad", "persistentStateReset", "persistentStateSave"] }] });
|
|
729
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: PdfViewerComponent, deps: [{ token: DocumentViewerFileService }], target: i0.ɵɵFactoryTarget.Component });
|
|
730
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: PdfViewerComponent, isStandalone: true, selector: "sgdea-document-viewer", inputs: { url: "url", token: "token", fileBlob: "fileBlob", fileBlobName: "fileBlobName", pdfAssetsBaseUrl: "pdfAssetsBaseUrl" }, viewQueries: [{ propertyName: "imageContainer", first: true, predicate: ["imageContainer"], descendants: true }, { propertyName: "mainImage", first: true, predicate: ["mainImage"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"loading()\" class=\"loader\">Cargando documento...</div>\n\n<div *ngIf=\"errorMessage() && !loading()\" class=\"error-message\">\n {{ errorMessage() }}\n</div>\n\n<div *ngIf=\"!loading() && !errorMessage()\" class=\"document-viewer-container\">\n\n <!-- PDF: altura expl\u00EDcita v\u00EDa host; \"auto\" suele dejar 0px en flex/modales -->\n <div\n class=\"pdf-viewer-host\"\n *ngIf=\"fileType() === 'pdf' && pdfSrc\"\n >\n <ngx-extended-pdf-viewer\n [src]=\"pdfSrc\"\n [height]=\"'100%'\"\n useBrowserLocale=\"false\"\n [showDownloadButton]=\"false\"\n [showPrintButton]=\"false\"\n [showOpenFileButton]=\"false\"\n [showSecondaryToolbarButton]=\"false\"\n [showFirstAndLastPageButtons]=\"false\"\n [showPagingButtons]=\"false\"\n [showZoomButtons]=\"true\"\n [showDrawEditor]=\"false\"\n [showTextEditor]=\"false\"\n [showStampEditor]=\"false\"\n [showHighlightEditor]=\"false\"\n >\n </ngx-extended-pdf-viewer>\n </div>\n\n <!-- Imagen -->\n<!-- Visor de im\u00E1genes con zoom y rotaci\u00F3n -->\n <div *ngIf=\"isImageType() && imageSrc\" class=\"image-viewer\">\n <!-- Barra de herramientas -->\n <div class=\"image-toolbar\">\n <button (click)=\"zoomIn()\" title=\"Acercar (Ctrl +)\">\u2795</button>\n <button (click)=\"zoomOut()\" title=\"Alejar (Ctrl -)\">\u2796</button>\n <!-- Separador -->\n <span class=\"separator\"></span>\n\n <!-- Botones de rotaci\u00F3n AHORA FUNCIONALES -->\n <button (click)=\"rotateLeft()\" title=\"Rotar izquierda (\u21BA)\">\u21BA</button>\n <button (click)=\"rotateRight()\" title=\"Rotar derecha (\u21BB)\">\u21BB</button>\n\n <!-- Informaci\u00F3n -->\n <span class=\"zoom-info\">{{ zoomLevel() }}%</span>\n <span class=\"rotation-info\" *ngIf=\"rotation() !== 0\">\n {{ rotation() }}\u00B0\n </span>\n\n <span class=\"image-dimensions\" *ngIf=\"imageDimensions.width\">\n {{ imageDimensions.width }} x {{ imageDimensions.height }}\n </span>\n </div>\n\n <!-- Contenedor de la imagen -->\n <div\n class=\"image-container\" \n #imageContainer \n (wheel)=\"onMouseWheel($event)\"\n >\n <img\n #mainImage\n [src]=\"imageSrc\"\n [alt]=\"fileName()\"\n [style.transform]=\"getImageTransform()\"\n [style.cursor]=\"getCursorStyle()\"\n (load)=\"onImageLoad()\"\n (mousedown)=\"startDrag($event)\"\n (mousemove)=\"onDrag($event)\"\n (mouseup)=\"stopDrag()\"\n (mouseleave)=\"stopDrag()\"\n class=\"zoomable-image\"\n />\n </div>\n\n <!-- Instrucciones -->\n <div class=\"image-footer\" *ngIf=\"zoomLevel() > 100\">\n <small>Arrastra para mover la imagen</small>\n </div>\n </div>\n <!-- Excel -->\n <div *ngIf=\"isExcelType()\" class=\"excel-viewer-container\">\n\n <!-- Tabs -->\n <div *ngIf=\"excelSheetNames.length > 1\" class=\"excel-sheet-tabs\">\n <button\n *ngFor=\"let sheet of excelSheetNames; let i = index\"\n type=\"button\"\n class=\"excel-sheet-tab\"\n [class.active]=\"excelCurrentSheetIndex() === i\"\n (click)=\"selectExcelSheet(i)\"\n >\n {{ sheet }}\n </button>\n </div>\n\n <hot-table\n *ngIf=\"showExcelViewer\"\n #hotTable\n [settings]=\"excelSettings\"\n [data]=\"excelData\"\n [colHeaders]=\"excelColumnHeaders\"\n [rowHeaders]=\"true\"\n [width]=\"'100%'\"\n [height]=\"'100%'\"\n licenseKey=\"non-commercial-and-evaluation\"\n [columns]=\"excelColumns\"\n >\n </hot-table>\n\n <div *ngIf=\"!showExcelViewer\" class=\"loader\">\n Cargando hoja...\n </div>\n\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.handsontable .table th,.handsontable .table td{border-top:none}.handsontable tr{background:#fff}.handsontable td{background-color:inherit}.handsontable .table caption+thead tr:first-child th,.handsontable .table caption+thead tr:first-child td,.handsontable .table colgroup+thead tr:first-child th,.handsontable .table colgroup+thead tr:first-child td,.handsontable .table thead:first-child tr:first-child th,.handsontable .table thead:first-child tr:first-child td{border-top:1px solid #CCCCCC}.handsontable .table-bordered{border:0;border-collapse:separate}.handsontable .table-bordered th,.handsontable .table-bordered td{border-left:none}.handsontable .table-bordered th:first-child,.handsontable .table-bordered td:first-child{border-left:1px solid #CCCCCC}.handsontable .table>tbody>tr>td,.handsontable .table>tbody>tr>th,.handsontable .table>tfoot>tr>td,.handsontable .table>tfoot>tr>th,.handsontable .table>thead>tr>td,.handsontable .table>thead>tr>th{line-height:21px;padding:0}.col-lg-1.handsontable,.col-lg-10.handsontable,.col-lg-11.handsontable,.col-lg-12.handsontable,.col-lg-2.handsontable,.col-lg-3.handsontable,.col-lg-4.handsontable,.col-lg-5.handsontable,.col-lg-6.handsontable,.col-lg-7.handsontable,.col-lg-8.handsontable,.col-lg-9.handsontable,.col-md-1.handsontable,.col-md-10.handsontable,.col-md-11.handsontable,.col-md-12.handsontable,.col-md-2.handsontable,.col-md-3.handsontable,.col-md-4.handsontable,.col-md-5.handsontable,.col-md-6.handsontable,.col-md-7.handsontable,.col-md-8.handsontable,.col-md-9.handsontable .col-sm-1.handsontable,.col-sm-10.handsontable,.col-sm-11.handsontable,.col-sm-12.handsontable,.col-sm-2.handsontable,.col-sm-3.handsontable,.col-sm-4.handsontable,.col-sm-5.handsontable,.col-sm-6.handsontable,.col-sm-7.handsontable,.col-sm-8.handsontable,.col-sm-9.handsontable .col-xs-1.handsontable,.col-xs-10.handsontable,.col-xs-11.handsontable,.col-xs-12.handsontable,.col-xs-2.handsontable,.col-xs-3.handsontable,.col-xs-4.handsontable,.col-xs-5.handsontable,.col-xs-6.handsontable,.col-xs-7.handsontable,.col-xs-8.handsontable,.col-xs-9.handsontable{padding-left:0;padding-right:0}.handsontable.ht-wrapper{height:100%;width:100%}.handsontable .table-striped>tbody>tr:nth-of-type(2n){background-color:#fff}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable .wtHider{position:relative;width:0}.handsontable .wtSpreader{position:relative;width:0;height:auto}.handsontable table,.handsontable tbody,.handsontable thead,.handsontable td,.handsontable th,.handsontable input,.handsontable textarea,.handsontable div{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:initial}.handsontable table.htCore{border-collapse:separate;border-spacing:0;margin:0;border-width:0;table-layout:fixed;width:0;outline-width:0;cursor:default;max-width:none;max-height:none}.handsontable col,.handsontable col.rowHeader{width:50px}.handsontable th,.handsontable td{border-top-width:0;border-left-width:0;border-right:1px solid #ccc;border-bottom:1px solid #ccc;height:22px;empty-cells:show;line-height:21px;padding:0 4px;background-color:#fff;vertical-align:top;overflow:hidden;outline:none;outline-width:0;white-space:pre-wrap}[dir=rtl].handsontable th,[dir=rtl].handsontable td{border-right-width:0;border-left:1px solid #ccc}.handsontable th:last-child{border-left:none;border-right:1px solid #ccc;border-bottom:1px solid #ccc}[dir=rtl].handsontable th:last-child{border-right:none;border-left:1px solid #ccc}.handsontable th:first-child,.handsontable .ht_clone_inline_start td:first-of-type,.handsontable .ht_clone_top_inline_start_corner td:first-of-type,.handsontable .ht_clone_bottom_inline_start_corner td:first-of-type,.handsontable.ht-wrapper:not(.htFirstDatasetColumnNotRendered) td:first-of-type{border-left:1px solid #ccc}[dir=rtl].handsontable th:first-child,[dir=rtl].handsontable.ht-wrapper:not(.htFirstDatasetColumnNotRendered) td:first-of-type{border-right:1px solid #ccc}.handsontable .ht_clone_top th:nth-child(2){border-left-width:0;border-right:1px solid #ccc}[dir=rtl].handsontable .ht_clone_top th:nth-child(2){border-right-width:0;border-left:1px solid #ccc}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable.htRowHeaders thead tr th:nth-child(2){border-right:1px solid #ccc}.handsontable tr:first-child th,.handsontable tr:first-child td{border-top:1px solid #ccc}.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-right-width:0;border-left:1px solid #ccc}[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-left-width:0;border-right:1px solid #ccc}.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr.lastChild th{border-bottom-width:0}.handsontable th{background-color:#f0f0f0;color:#222;text-align:center;font-weight:400;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#ccc}.handsontable thead th .relative{padding:2px 4px}.handsontable span.colHeader{display:inline-block;line-height:1.1}.handsontable .wtBorder{position:absolute;font-size:0}.handsontable .wtBorder.hidden{display:none!important}.handsontable .wtBorder:nth-child(1),.handsontable .wtBorder:nth-child(3){z-index:2}.handsontable .wtBorder:nth-child(2),.handsontable .wtBorder:nth-child(4){z-index:1}.handsontable .wtBorder.current{z-index:10}.handsontable .wtBorder.area{z-index:8}.handsontable .wtBorder.fill{z-index:6}.handsontable .wtBorder.corner{font-size:0;cursor:crosshair}.htBorders .wtBorder.ht-border-style-dashed-vertical{background-image:repeating-linear-gradient(to bottom,var(--ht-custom-border-color) 0 5px,transparent 0 10px)}.htBorders .wtBorder.ht-border-style-dashed-horizontal{background-image:repeating-linear-gradient(to right,var(--ht-custom-border-color) 0 5px,transparent 0 10px)}.htBorders .wtBorder.ht-border-style-dotted-horizontal{background-image:radial-gradient(circle,var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2),transparent 0);background-size:calc(var(--ht-custom-border-size) * 2) var(--ht-custom-border-size);background-repeat:repeat-x}.htBorders .wtBorder.ht-border-style-dotted-vertical{background-image:radial-gradient(circle,var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2),transparent 0);background-size:var(--ht-custom-border-size) calc(var(--ht-custom-border-size) * 2);background-repeat:repeat-y}.ht_clone_master{z-index:100}.ht_clone_inline_start{z-index:120}.ht_clone_bottom{z-index:130}.ht_clone_bottom_inline_start_corner{z-index:150}.ht_clone_top{z-index:160}.ht_clone_top_inline_start_corner{z-index:180}.handsontable col.hidden{width:0!important}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_master,.ht_clone_inline_start,.ht_clone_top,.ht_clone_bottom{overflow:hidden}.ht_master .wtHolder{overflow:auto}.handsontable .ht_master table.htCore>thead,.handsontable .ht_master table.htCore>tbody>tr>th,.handsontable .ht_clone_inline_start table.htCore>thead{visibility:hidden}.ht_clone_top .wtHolder,.ht_clone_inline_start .wtHolder,.ht_clone_bottom .wtHolder{overflow:hidden}.handsontable{position:relative;touch-action:manipulation;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;font-weight:400;color:#373737}.handsontable a{color:#104acc}.handsontable.htAutoSize{visibility:hidden;left:-99000px;position:absolute;top:-99000px}.handsontable td.htInvalid{background-color:#ffbeba!important}.handsontable td.htNoWrap{white-space:nowrap}.handsontable td.invisibleSelection,.handsontable th.invisibleSelection{outline:none}.handsontable td.invisibleSelection::selection,.handsontable th.invisibleSelection::selection{background:#fff0}.hot-display-license-info{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:400;color:#373737;padding:5px 0 3px;text-align:left}.hot-display-license-info a{color:#104acc;font-size:10px}.htFocusCatcher{position:absolute;z-index:-1;opacity:0;border:0;margin:0;padding:0;width:0;height:0}.handsontable .htTextEllipsis{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.handsontable .manualColumnResizer{position:absolute;top:0;cursor:col-resize;z-index:210;width:5px;height:25px}.handsontable .manualRowResizer{position:absolute;left:0;cursor:row-resize;z-index:210;height:5px;width:50px}.handsontable .manualColumnResizer:hover,.handsontable .manualColumnResizer.active,.handsontable .manualRowResizer:hover,.handsontable .manualRowResizer.active{background-color:#34a9db}.handsontable .manualColumnResizerGuide{position:absolute;right:unset;top:0;background-color:#34a9db;display:none;width:0;border-right:1px dashed #777;border-left:none;margin-left:5px;margin-right:unset}[dir=rtl].handsontable .manualColumnResizerGuide{left:unset;border-left:1px dashed #777;border-right:none;margin-right:5px;margin-left:unset}.handsontable .manualRowResizerGuide{position:absolute;left:0;bottom:0;background-color:#34a9db;display:none;height:0;border-bottom:1px dashed #777;margin-top:5px}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block;z-index:209}.handsontable td.area,.handsontable td.area-1,.handsontable td.area-2,.handsontable td.area-3,.handsontable td.area-4,.handsontable td.area-5,.handsontable td.area-6,.handsontable td.area-7{position:relative}.handsontable td.area:before,.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before{content:\"\";position:absolute;inset:0;background:#005eff}.handsontable td.area:before{opacity:.1}.handsontable td.area-1:before{opacity:.2}.handsontable td.area-2:before{opacity:.27}.handsontable td.area-3:before{opacity:.35}.handsontable td.area-4:before{opacity:.41}.handsontable td.area-5:before{opacity:.47}.handsontable td.area-6:before{opacity:.54}.handsontable td.area-7:before{opacity:.58}.handsontable tbody th.current,.handsontable thead th.current{box-shadow:inset 0 0 0 2px #4b89ff}.handsontable tbody th.ht__highlight,.handsontable thead th.ht__highlight{background-color:#dcdcdc}.handsontable tbody th.ht__active_highlight,.handsontable thead th.ht__active_highlight{background-color:#8eb0e7;color:#000}.handsontableInput{border:none;outline-width:0;margin:0;padding:1px 5px 0;font-family:inherit;line-height:21px;font-size:inherit;box-shadow:0 0 0 2px #5292f7 inset;resize:none;display:block;color:#000;border-radius:0;background-color:#fff;box-sizing:border-box!important}.handsontableInput:focus{outline:none}.handsontableInputHolder{position:absolute;top:0;left:0}.htSelectEditor{position:absolute;select{-webkit-appearance:menulist-button!important;width:100%;height:100%;border:2px solid #4b89ff;box-sizing:border-box!important}}.htSelectEditor select:focus{outline:none}.htSelectEditor .htAutocompleteArrow{display:none}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{content:\"\\25b6\";color:#777;position:absolute;right:5px;font-size:9px}[dir=rtl].handsontable .htSubmenu :after{content:\"\"}[dir=rtl].handsontable .htSubmenu :before{content:\"\\25c0\";color:#777;position:absolute;left:5px;font-size:9px}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable.listbox{border:1px solid #ccc;margin:0}.handsontable.listbox.autocompleteEditor,.handsontable.listbox.dropdownEditor{border-width:0}.handsontable.listbox .ht_master table{border-collapse:separate;background:#fff}.handsontable.listbox.autocompleteEditor .ht_master table,.handsontable.listbox.dropdownEditor .ht_master table{border:1px solid #ccc}.handsontable.listbox th,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th,.handsontable.listbox tr:first-child td,.handsontable.listbox td{border-color:transparent!important}.handsontable.listbox th,.handsontable.listbox td{white-space:nowrap;text-overflow:ellipsis}.handsontable.listbox td.htDimmed{cursor:default;color:inherit;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_editor_hidden{z-index:-1}.ht_editor_visible{z-index:200}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch}.handsontable.mobile .handsontableInput:focus{-webkit-box-shadow:0 0 0 2px #5292f7 inset;-moz-box-shadow:0 0 0 2px #5292f7 inset;box-shadow:0 0 0 2px #5292f7 inset;-webkit-appearance:none}.handsontable .topSelectionHandle,.handsontable .topSelectionHandle-HitArea,.handsontable .bottomSelectionHandle,.handsontable .bottomSelectionHandle-HitArea{left:-10000px;right:unset;top:-10000px;z-index:9999}[dir=rtl].handsontable .topSelectionHandle,[dir=rtl].handsontable .topSelectionHandle-HitArea,[dir=rtl].handsontable .bottomSelectionHandle,[dir=rtl].handsontable .bottomSelectionHandle-HitArea{right:-10000px;left:unset}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable .htAutocompleteArrow{float:right;font-size:10px;color:#bbb;cursor:default;width:16px;text-align:center}[dir=rtl].handsontable .htAutocompleteArrow{float:left}.handsontable td.htInvalid .htAutocompleteArrow{color:#555}.handsontable td.htInvalid .htAutocompleteArrow:hover{color:#1a1a1a}.handsontable td .htAutocompleteArrow:hover{color:#777}.handsontable td.area .htAutocompleteArrow{color:#d3d3d3}.handsontable .htCheckboxRendererInput.noValue{opacity:.5}.handsontable .htCheckboxRendererLabel{font-size:inherit;vertical-align:middle;cursor:pointer;display:inline-block}.handsontable .htCheckboxRendererLabel.fullWidth{width:100%}.handsontable .collapsibleIndicator{position:absolute;top:50%;transform:translateY(-50%);left:unset;right:5px;border:1px solid #A6A6A6;line-height:8px;color:#222;border-radius:10px;font-size:10px;width:10px;height:10px;cursor:pointer;-webkit-box-shadow:0 0 0 6px rgb(238,238,238);-moz-box-shadow:0 0 0 6px rgb(238,238,238);box-shadow:0 0 0 3px #eee;background:#eee;text-align:center}[dir=rtl].handsontable .collapsibleIndicator{right:unset;left:5px}.handsontable[dir=ltr] thead th:has(.collapsibleIndicator) div.htRight span.colHeader{margin-right:20px}.handsontable[dir=rtl] thead th:has(.collapsibleIndicator) div.htLeft span.colHeader{margin-left:20px}.handsontable .columnSorting{position:relative}.handsontable[dir=ltr] div.htRight span[class*=ascending],.handsontable[dir=ltr] div.htRight span[class*=descending]{margin-right:10px;margin-left:-10px}.handsontable[dir=rtl] div.htLeft span[class*=ascending],.handsontable[dir=rtl] div.htLeft span[class*=descending]{margin-left:10px;margin-right:-10px}.handsontable[dir=ltr] div.htRight span[class*=ascending]:only-child,.handsontable[dir=ltr] div.htRight span[class*=descending]:only-child{margin-right:15px;margin-left:-15px}.handsontable[dir=rtl] div.htLeft span[class*=ascending]:only-child,.handsontable[dir=rtl] div.htLeft span[class*=descending]:only-child{margin-left:15px;margin-right:-15px}.handsontable .columnSorting.sortAction:hover{text-decoration:underline;cursor:pointer}.handsontable span.colHeader.columnSorting:before{top:50%;margin-top:-6px;padding-left:8px;padding-right:0;position:absolute;right:-9px;left:unset;content:\"\";height:10px;width:5px;background-size:contain;background-repeat:no-repeat;background-position-x:right}[dir=rtl].handsontable span.colHeader.columnSorting:before{padding-right:8px;padding-left:0;left:-9px;right:unset;background-position-x:left}.handsontable span.colHeader.columnSorting.ascending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFNJREFUeAHtzjkSgCAUBNHPgsoy97+ulGXRqJE5L+xkxoYt2UdsLb5bqFINz+aLuuLn5rIu2RkO3fZpWENimNgiw6iBYRTPMLJjGFxQZ1hxxb/xBI1qC8k39CdKAAAAAElFTkSuQmCC)}.handsontable span.colHeader.columnSorting.descending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFJJREFUeAHtzjkSgCAQRNFmQYUZ7n9dKUvru0TmvPAn3br0QfgdZ5xx6x+rQn23GqTYnq1FDcnuzZIO2WmedVqIRVxgGKEyjNgYRjKGkZ1hFIZ3I70LyM0VtU8AAAAASUVORK5CYII=)}.htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled):before{content:\"*\";display:inline-block;position:relative;padding-right:20px}.handsontable.htGhostTable table thead th{border-bottom-width:0}.handsontable.htGhostTable table tbody tr th,.handsontable.htGhostTable table tbody tr td{border-top-width:0}.handsontable .htCommentCell{position:relative}.handsontable .htCommentCell:after{content:\"\";position:absolute;top:0;right:0;left:unset;border-left:6px solid transparent;border-right:none;border-top:6px solid black}[dir=rtl].handsontable .htCommentCell:after{left:0;right:unset;border-right:6px solid transparent;border-left:none}.htCommentsContainer .htComments{display:none;z-index:1059;position:absolute}.htCommentsContainer .htCommentTextArea{box-shadow:#0000001e 0 1px 3px,#0000003d 0 1px 2px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:none;border-left:3px solid #ccc;border-right:none;background-color:#fff;width:215px;height:90px;font-size:12px;padding:5px;outline:0!important;-webkit-appearance:none}[dir=rtl].htCommentsContainer .htCommentTextArea{border-right:3px solid #ccc;border-left:none}.htCommentsContainer .htCommentTextArea:focus{box-shadow:#0000001e 0 1px 3px,#0000003d 0 1px 2px,inset 0 0 0 1px #5292f7;border-left:3px solid #5292f7;border-right:none}[dir=rtl].htCommentsContainer .htCommentTextArea:focus{border-right:3px solid #5292f7;border-left:none}.htContextMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_bottom,.htContextMenu .ht_clone_inline_start,.htContextMenu .ht_clone_top_inline_start_corner,.htContextMenu .ht_clone_bottom_inline_start_corner{display:none}.htContextMenu .ht_master table.htCore{border-color:#ccc;border-style:solid;border-top-width:1px;border-bottom-width:2px;border-left-width:1px;border-right-width:2px}[dir=rtl].htContextMenu .ht_master table.htCore{border-right-width:1px;border-left-width:2px}.htContextMenu.handsontable:focus{outline:none}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htContextMenu table tbody tr td:first-child{border-top-width:0;border-bottom-width:0;border-left-width:0;border-right-width:0}[dir=rtl].htContextMenu table tbody tr td:first-child{border-right-width:0;border-left-width:0}.htContextMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htContextMenu table tbody tr td.current{background:#f3f3f3}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0;cursor:default}.htContextMenu table tbody tr td.htDisabled{color:#999;cursor:default}.htContextMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htContextMenu table tbody tr.htHidden{display:none}.htContextMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:6px}[dir=rtl].htContextMenu table tbody tr td .htItemWrapper{margin-right:10px;margin-left:6px}.htContextMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px;right:0}[dir=rtl].htContextMenu table tbody tr td div span.selected{right:4px;left:0}.htContextMenu .ht_master .wtHolder{overflow:hidden}textarea.HandsontableCopyPaste{position:fixed!important;top:0!important;right:100%!important;overflow:hidden;opacity:0;outline:0 none!important}.handsontable .changeType{background:#eee;border-radius:2px;border:1px solid #bbb;color:#bbb;font-size:9px;line-height:9px;padding:2px;margin:3px 1px 0 5px;float:right}[dir=rtl].handsontable .changeType{float:left}.handsontable[dir=rtl] .changeType{margin:3px 5px 0 1px}.handsontable .changeType:before{content:\"\\25bc \"}.handsontable .changeType:hover{border:1px solid #777;color:#777;cursor:pointer}.htDropdownMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htDropdownMenu .ht_clone_top,.htDropdownMenu .ht_clone_bottom,.htDropdownMenu .ht_clone_inline_start,.htDropdownMenu .ht_clone_top_inline_start_corner,.htDropdownMenu .ht_clone_bottom_inline_start_corner{display:none}.htDropdownMenu table.htCore{border-color:#ccc;border-style:solid;border-top-width:1px;border-bottom-width:2px;border-left-width:1px;border-right-width:2px}[dir=rtl].htDropdownMenu table.htCore{border-right-width:1px;border-left-width:2px}.htDropdownMenu.handsontable:focus{outline:none}.htDropdownMenu .wtBorder{visibility:hidden}.htDropdownMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htDropdownMenu table tbody tr td:first-child{border-top-width:0;border-right-width:0;border-bottom-width:0;border-left-width:0}[dir=rtl].htDropdownMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htDropdownMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htDropdownMenu table tbody tr td.current{background:#e9e9e9}.htDropdownMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0;cursor:default}.htDropdownMenu table tbody tr td.htDisabled{color:#999}.htDropdownMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htDropdownMenu:not(.htGhostTable) table tbody tr.htHidden{display:none}.htDropdownMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}[dir=rtl].htDropdownMenu table tbody tr td .htItemWrapper{margin-right:10px;margin-left:10px}.htDropdownMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px;right:0}[dir=rtl].htDropdownMenu table tbody tr td div span.selected{right:4px;left:0}.htDropdownMenu .ht_master .wtHolder{overflow:hidden}.htFiltersConditionsMenu:not(.htGhostTable){display:none;position:absolute;z-index:1070}.htFiltersConditionsMenu .ht_clone_top,.htFiltersConditionsMenu .ht_clone_bottom,.htFiltersConditionsMenu .ht_clone_inline_start,.htFiltersConditionsMenu .ht_clone_top_inline_start_corner,.htFiltersConditionsMenu .ht_clone_bottom_inline_start_corner{display:none}.htFiltersConditionsMenu table.htCore{border:1px solid #bbb;border-bottom-width:2px;border-right-width:2px}.htFiltersConditionsMenu .wtBorder{visibility:hidden}.htFiltersConditionsMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htFiltersConditionsMenu table tbody tr td:first-child{border-top-width:0;border-right-width:0;border-bottom-width:0;border-left-width:0}[dir=rtl].htFiltersConditionsMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htFiltersConditionsMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htFiltersConditionsMenu table tbody tr td.current{background:#e9e9e9}.htFiltersConditionsMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0}.htFiltersConditionsMenu table tbody tr td.htDisabled{color:#999}.htFiltersConditionsMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htFiltersConditionsMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}.htFiltersConditionsMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px}.htFiltersConditionsMenu .ht_master .wtHolder{overflow:hidden}.handsontable .htMenuFiltering{border-bottom:1px dotted #ccc;height:135px;overflow:hidden}.handsontable .ht_master table td.htCustomMenuRenderer{background-color:#fff;cursor:auto}.handsontable .htFiltersMenuLabel{font-size:.75em}.handsontable .htFiltersMenuActionBar{text-align:center;padding-top:10px;padding-bottom:3px}.handsontable .htFiltersMenuCondition.border{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuCondition .htUIInput{padding:0 0 5px}.handsontable .htFiltersMenuValue{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch{padding:0}.handsontable .htFiltersMenuCondition .htUIInput input,.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input{font-family:inherit;font-size:.75em;padding:4px;box-sizing:border-box;width:100%}.htUIMultipleSelect .ht_master .wtHolder{overflow:auto}.handsontable .htFiltersActive .changeType{border:1px solid #509272;color:#18804e;background-color:#d2e0d9}.handsontable .htUISelectAll{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUISelectAll{margin-right:0;margin-left:10px}.handsontable .htUIClearAll,.handsontable .htUISelectAll{display:inline-block}.handsontable .htUIClearAll a,.handsontable .htUISelectAll a{font-size:.75em}.handsontable .htUISelectionControls{text-align:right}[dir=rtl].handsontable .htUISelectionControls{text-align:left}.handsontable .htCheckboxRendererInput{display:inline-block;margin:0 5px 0 0;vertical-align:middle;height:1em}[dir=rtl].handsontable .htCheckboxRendererInput{margin-left:5px;margin-right:0}.handsontable .htUIInput{padding:3px 0 7px;position:relative;text-align:center}.handsontable .htUIInput input{border-radius:2px;border:1px solid #d2d1d1}.handsontable .htUIInputIcon{position:absolute}.handsontable .htUIInput.htUIButton{cursor:pointer;display:inline-block}.handsontable .htUIInput.htUIButton input{background-color:#eee;color:#000;cursor:pointer;font-family:inherit;font-size:.75em;font-weight:700;height:19px;min-width:64px}.handsontable .htUIInput.htUIButton input:hover{border-color:#b9b9b9}.handsontable .htUIInput.htUIButtonOK{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUIInput.htUIButtonOK{margin-right:0;margin-left:10px}.handsontable .htUIInput.htUIButtonOK input{background-color:#0f9d58;border-color:#18804e;color:#fff}.handsontable .htUIInput.htUIButtonOK input:focus-visible{background-color:#92dd8d;border-color:#7cb878;color:#000}.handsontable .htUIInput.htUIButtonOK input:hover{border-color:#1a6f46}.handsontable .htUISelect{cursor:pointer;margin-bottom:7px;position:relative}.handsontable .htUISelectCaption{background-color:#e8e8e8;border-radius:2px;border:1px solid #d2d1d1;font-family:inherit;font-size:.75em;font-weight:700;padding:3px 20px 3px 10px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.handsontable .htUISelectCaption:hover{background-color:#e8e8e8;border:1px solid #b9b9b9}.handsontable .htUISelectDropdown:after{content:\"\\25b2\";font-size:7px;position:absolute;right:10px;top:0}.handsontable .htUISelectDropdown:before{content:\"\\25bc\";font-size:7px;position:absolute;right:10px;top:8px}.handsontable .htUIMultipleSelect .handsontable .htCore{border:none}.handsontable .htUIMultipleSelect .handsontable .htCore td:hover{background-color:#f5f5f5}.handsontable .htUIMultipleSelectSearch input{border-radius:2px;border:1px solid #d2d1d1;padding:3px}.handsontable .htUIRadio{display:inline-block;margin-left:0;margin-right:5px;height:100%}[dir=rtl].handsontable .htUIRadio{margin-right:0;margin-left:5px}.handsontable .htUIRadio:last-child{margin-right:0}.handsontable .htUIRadio>input[type=radio]{margin-left:0;margin-right:.5ex}[dir=rtl].handsontable .htUIRadio>input[type=radio]{margin-right:0;margin-left:.5ex}.handsontable .htUIRadio label{vertical-align:middle}.handsontable .htFiltersMenuOperators{padding-bottom:5px}.handsontable th.beforeHiddenColumn{position:relative}.handsontable th.beforeHiddenColumn:after,.handsontable th.afterHiddenColumn:before{color:#bbb;position:absolute;top:50%;font-size:5pt;transform:translateY(-50%)}.handsontable th.afterHiddenColumn{position:relative}.handsontable[dir=ltr] th.afterHiddenColumn div.htLeft{margin-left:10px}.handsontable[dir=ltr] th.beforeHiddenColumn div.htRight,.handsontable[dir=rtl] th.afterHiddenColumn div.htRight{margin-right:10px}.handsontable[dir=rtl] th.beforeHiddenColumn div.htLeft{margin-left:10px}.handsontable th.beforeHiddenColumn:after{right:1px;content:\"\\25c0\"}[dir=rtl].handsontable th.beforeHiddenColumn:after{right:initial;left:1px;content:\"\\25b6\"}.handsontable th.afterHiddenColumn:before{left:1px;content:\"\\25b6\"}[dir=rtl].handsontable th.afterHiddenColumn:before{right:1px;left:initial;content:\"\\25c0\"}.handsontable th.beforeHiddenRow:before,.handsontable th.afterHiddenRow:after{color:#bbb;font-size:6pt;line-height:6pt;position:absolute;left:2px}.handsontable th.beforeHiddenRow,.handsontable th.afterHiddenRow{position:relative}.handsontable th.beforeHiddenRow:before{content:\"\\25b2\";bottom:2px}.handsontable th.afterHiddenRow:after{content:\"\\25bc\";top:2px}.handsontable.ht__selection--rows tbody th.beforeHiddenRow.ht__highlight:before,.handsontable.ht__selection--rows tbody th.afterHiddenRow.ht__highlight:after{color:#eee}.handsontable td.afterHiddenRow.firstVisibleRow,.handsontable th.afterHiddenRow.firstVisibleRow{border-top:1px solid #CCC}.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_top_inline_start_corner th:nth-child(2),.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_inline_start td:first-of-type{border-left:0 none}.handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualColumnMove.on-moving--columns *,.handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer{display:none}.handsontable .ht__manualColumnMove--guideline,.handsontable .ht__manualColumnMove--backlight{position:absolute;height:100%;display:none}.handsontable .ht__manualColumnMove--guideline{background:#757575;width:2px;top:0;margin-inline-start:-1px;margin-inline-end:0;z-index:205}.handsontable .ht__manualColumnMove--backlight{background:#343434;background:#34343440;display:none;z-index:205;pointer-events:none}.handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline,.handsontable.on-moving--columns .ht__manualColumnMove--backlight{display:block}.handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualRowMove.on-moving--rows *,.handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer{display:none}.handsontable .ht__manualRowMove--guideline,.handsontable .ht__manualRowMove--backlight{position:absolute;width:100%;display:none}.handsontable .ht__manualRowMove--guideline{background:#757575;height:2px;left:0;margin-top:-1px;z-index:205}.handsontable .ht__manualRowMove--backlight{background:#343434;background:#34343440;display:none;z-index:205;pointer-events:none}.handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline,.handsontable.on-moving--rows .ht__manualRowMove--backlight{display:block}.handsontable tbody td[rowspan][class*=area][class*=highlight]:not([class*=fullySelectedMergedCell]):before{opacity:0}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-multiple]:before{opacity:.1}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-0]:before{opacity:.1}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-1]:before{opacity:.2}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-2]:before{opacity:.27}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-3]:before{opacity:.35}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-4]:before{opacity:.41}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-5]:before{opacity:.47}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-6]:before{opacity:.54}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-7]:before{opacity:.58}.handsontable[dir=ltr] div.htRight span[class*=sort-]{margin-right:15px;margin-left:-15px}.handsontable[dir=rtl] div.htLeft span[class*=sort-]{margin-left:15px;margin-right:-15px}.handsontable[dir=ltr] div.htRight span[class*=sort-]:only-child{margin-right:20px;margin-left:-20px}.handsontable[dir=rtl] div.htLeft span[class*=sort-]:only-child{margin-left:20px;margin-right:-20px}.handsontable span.colHeader.columnSorting:after{top:50%;margin-top:-2px;position:absolute;right:-15px;left:unset;padding-left:5px;padding-right:unset;font-size:8px;height:8px;line-height:1.1}[dir=rtl].handsontable span.colHeader.columnSorting:after{left:-15px;right:unset;padding-right:5px;padding-left:unset}.handsontable span.colHeader.columnSorting[class^=sort-]:after,.handsontable span.colHeader.columnSorting[class*=\" sort-\"]:after{content:\"+\"}.handsontable span.colHeader.columnSorting.sort-1:after{content:\"1\"}.handsontable span.colHeader.columnSorting.sort-2:after{content:\"2\"}.handsontable span.colHeader.columnSorting.sort-3:after{content:\"3\"}.handsontable span.colHeader.columnSorting.sort-4:after{content:\"4\"}.handsontable span.colHeader.columnSorting.sort-5:after{content:\"5\"}.handsontable span.colHeader.columnSorting.sort-6:after{content:\"6\"}.handsontable span.colHeader.columnSorting.sort-7:after{content:\"7\"}.htGhostTable th div button.changeType+span.colHeader.columnSorting:not(.indicatorDisabled){padding-right:5px}.handsontable thead th.hiddenHeader:not(:first-of-type){display:none}thead th.hiddenHeaderText .colHeader{opacity:0}.handsontable th.ht_nestingLevels{text-align:left;padding-left:7px}[dir=rtl].handsontable th.ht_nestingLevels{text-align:right;padding-right:7px}.handsontable th div.ht_nestingLevels{display:inline-block;position:absolute;left:11px;right:unset}[dir=rtl].handsontable th div.ht_nestingLevels{right:11px;left:unset}.handsontable.innerBorderInlineStart th div.ht_nestingLevels,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{right:10px;left:unset}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingLevels,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{left:10px;right:unset}.handsontable th span.ht_nestingLevel{display:inline-block}.handsontable th span.ht_nestingLevel_empty{display:inline-block;width:10px;height:1px;float:left}[dir=rtl].handsontable th span.ht_nestingLevel_empty{float:right}.handsontable th span.ht_nestingLevel:after{content:\"\\2510\";font-size:9px;display:inline-block;position:relative;bottom:3px}.handsontable th div.ht_nestingButton{display:inline-block;position:absolute;right:-2px;left:unset;cursor:pointer}[dir=rtl].handsontable th div.ht_nestingButton{left:-2px;right:unset}.handsontable th div.ht_nestingButton.ht_nestingExpand:after{content:\"+\"}.handsontable th div.ht_nestingButton.ht_nestingCollapse:after{content:\"-\"}.handsontable.innerBorderInlineStart th div.ht_nestingButton,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{right:0;left:unset}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingButton,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{left:0;right:unset}.ht-root-wrapper{position:relative;display:flex;flex-direction:column;height:100%}.ht-grid{flex:1 1 auto;min-height:0}.ht-dialog{position:absolute;top:0;left:0;display:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;width:100%;height:100%;z-index:1060;opacity:0;overflow-y:auto;border:1px solid #ccc;box-sizing:border-box!important}.ht-dialog[dir=rtl]{left:auto;right:0}.ht-dialog:focus{border:1px solid #4b89ff;outline:none}.ht-dialog:has(.htFocusCatcher:focus){border:1px solid #4b89ff;outline:none}.ht-dialog *{box-sizing:border-box!important}.ht-dialog--background-solid{background-color:#fff}.ht-dialog--background-semi-transparent{background-color:#ffffff80}.ht-dialog--animation{transition:opacity .15s ease-in-out}.ht-dialog--show{opacity:1}.ht-dialog__content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;min-height:100%;padding:16px}.ht-dialog__content-wrapper:focus{border:1px solid #4b89ff;outline:none}.ht-dialog__content{position:relative;padding:8px;display:flex;gap:8px;max-width:480px;color:#222}.ht-dialog__content--background{box-shadow:0 8px 16px #00000014;background-color:#f7f7f9}.ht-dialog--confirm .ht-dialog__content-wrapper{text-align:center}.ht-dialog--confirm .ht-dialog__content-wrapper-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;max-width:480px}.ht-dialog--confirm .ht-dialog__content-wrapper-inner--background{box-shadow:0 8px 16px #00000014;background-color:#f7f7f9}.ht-dialog--confirm .ht-dialog__content{display:flex;flex-direction:column;align-items:center;justify-content:center}.ht-dialog--confirm .ht-dialog__content:has(.ht-dialog__buttons){gap:4px}.ht-dialog--confirm .ht-dialog__title{margin:0;font-size:16px;font-weight:400;line-height:24px}.ht-dialog--confirm .ht-dialog__description{margin:0;color:#222;font-size:12px;font-weight:400;line-height:16px}.ht-dialog--confirm .ht-dialog__buttons{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px}.ht-root-wrapper .ht-pagination{color:#222;background:#f0f0f0;border:1px solid #ccc;border-top-color:transparent;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:12px;font-weight:400;box-sizing:border-box;overflow-x:auto}.ht-root-wrapper .ht-pagination__inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding-inline:8px;padding-block:4px;min-width:230px}.ht-root-wrapper .ht-pagination--bordered{border-top-color:#ccc}.ht-root-wrapper .ht-page-size-section{display:flex;align-items:center;gap:8px}.ht-root-wrapper .ht-page-size-section span{white-space:nowrap}.ht-root-wrapper .ht-page-size-section__select-wrapper{position:relative;border-radius:2px;border:1px solid #ccc}.ht-root-wrapper .ht-page-size-section__select-wrapper select{padding-inline-start:8px;padding-inline-end:8px;padding-top:4px;padding-bottom:4px;border-radius:2px;color:#222;background-color:#f0f0f0;border:none;-webkit-appearance:none;font-size:inherit;cursor:pointer}.ht-root-wrapper .ht-page-size-section__select-wrapper select:disabled{opacity:.4;cursor:default}.ht-root-wrapper .ht-page-size-section__select-wrapper select:hover:not(:disabled){background-color:#e0e0e0}.ht-root-wrapper .ht-page-size-section__select-wrapper select:focus{background-color:#e0e0e0;outline:1px solid #4b89ff}.ht-root-wrapper .ht-page-counter-section{margin-inline-end:auto}.ht-root-wrapper .ht-page-navigation-section{display:flex;align-items:center;gap:8px}.ht-root-wrapper .ht-page-navigation-section button{font-size:inherit;color:#222;background-color:transparent;border:none;padding:4px;border-radius:2px;cursor:pointer}.ht-root-wrapper .ht-page-navigation-section button:before{display:block;width:16px;height:16px;line-height:16px;text-align:center}.ht-root-wrapper .ht-page-navigation-section button:disabled{opacity:.4;cursor:default}.ht-root-wrapper .ht-page-navigation-section button:hover:not(:disabled){background-color:#e0e0e0}.ht-root-wrapper .ht-page-navigation-section button:focus{outline:1px solid #4b89ff}.ht-root-wrapper .ht-page-navigation-section .ht-page-first:before{content:\"\\21a4\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-first:before{content:\"\\21a6\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-prev:before{content:\"\\21a2\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-prev:before{content:\"\\21a3\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-next:before{content:\"\\21a3\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-next:before{content:\"\\21a2\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-last:before{content:\"\\21a6\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-last:before{content:\"\\21a4\"}.ht-root-wrapper .ht-page-navigation-section span{white-space:nowrap}.ht-loading__icon-svg{display:block;width:16px;height:16px;color:#5292f7;animation:ht-loading-spin 1s linear infinite;transform-origin:50% 50%}.ht-loading__content{display:flex;align-items:center;gap:8px}.ht-loading__title{margin:0;font-size:13px;font-weight:400;line-height:18px}.ht-loading__description{margin:0;color:#222;font-size:12px;line-height:16px;font-weight:400}@keyframes ht-loading-spin{to{transform:rotate(360deg)}}.ht-empty-data-state{display:none;position:absolute;width:100%;left:0;z-index:999;overflow-y:auto;border:1px solid #ccc;box-sizing:border-box;background-color:#fff}.ht-empty-data-state *{box-sizing:border-box!important}.ht-empty-data-state__content-wrapper{display:flex;align-items:center;justify-content:center;text-align:center;width:100%;min-height:100%;padding:16px}.ht-empty-data-state__content-wrapper-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:480px;padding:16px}.ht-empty-data-state__content-wrapper-inner:focus{outline:none;box-shadow:0 0 0 1px #4b89ff}.ht-empty-data-state__content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.ht-empty-data-state__title{margin:0;font-size:16px;font-weight:400;line-height:24px}.ht-empty-data-state__description{margin:0;color:#222;font-size:12px;line-height:16px;font-weight:400}.ht-empty-data-state__buttons{display:flex;justify-content:center;flex-direction:row;flex-wrap:wrap;gap:8px}.ht-empty-data-state__buttons--has-buttons{margin-top:8px}.ht-empty-data-state--disable-top-border{border-top-width:0}.ht-empty-data-state--disable-inline-border{border-inline-start-width:0}.ht-empty-data-state--disable-bottom-border,.ht-empty-data-state:has(~.ht-pagination){border-bottom-width:0}.pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.pika-single:before,.pika-single:after{content:\" \";display:table}.pika-single:after{clear:both}.pika-single.is-hidden{display:none}.pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px #00000080}.pika-lendar{float:left;width:240px;margin:8px}.pika-title{position:relative;text-align:center}.pika-label{display:inline-block;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:700;background-color:#fff}.pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;opacity:0}.pika-prev,.pika-next{display:block;cursor:pointer;position:relative;outline:none;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5}.pika-prev:hover,.pika-next:hover{opacity:1}.pika-prev,.is-rtl .pika-next{float:left;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==)}.pika-next,.is-rtl .pika-prev{float:right;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=)}.pika-prev.is-disabled,.pika-next.is-disabled{cursor:default;opacity:.2}.pika-select{display:inline-block}.pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.pika-table th,.pika-table td{width:14.285714285714286%;padding:0}.pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:700;text-align:center}.pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:none;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:center;background:#f5f5f5;height:initial}.pika-week{font-size:11px;color:#999}.is-today .pika-button{color:#3af;font-weight:700}.is-selected .pika-button,.has-event .pika-button{color:#fff;font-weight:700;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.has-event .pika-button{background:#005da9;box-shadow:inset 0 1px 3px #0076c9}.is-disabled .pika-button,.is-inrange .pika-button{background:#d5e9f7}.is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.is-disabled .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.is-outside-current-month .pika-button{color:#999;opacity:.3}.is-selection-disabled{pointer-events:none;cursor:default}.pika-button:hover,.pika-row.pick-whole-week:hover .pika-button{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.pika-table abbr{border-bottom:none;cursor:help}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}.document-viewer-container{height:100%;min-height:0;width:100%;display:flex;flex-direction:column;padding:20px;box-sizing:border-box;background-color:#f5f5f5;overflow:hidden}.loader,.error-message{text-align:center;padding:40px 20px;font-family:Arial,sans-serif;background-color:#fff;border-radius:4px;margin:20px;box-shadow:0 2px 4px #0000001a}.error-message{color:#d32f2f;background-color:#ffebee;border:1px solid #ffcdd2}.text-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;margin:10px;overflow:auto;border:1px solid #ddd;box-shadow:0 2px 4px #0000001a;font-family:Courier New,monospace}.text-viewer pre{margin:0;font-size:14px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.word-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;box-shadow:0 2px 10px #0000001a;margin:10px;overflow:auto;font-family:Calibri,Arial,sans-serif}.word-viewer h1,.word-viewer h2,.word-viewer h3{color:#333}.word-viewer p{line-height:1.6;margin-bottom:15px}.presentation-viewer{flex:1 1 auto;min-height:0;background-color:#f5f5f5;padding:20px;border-radius:4px;margin:10px;display:flex;justify-content:center;align-items:center}.presentation-placeholder{text-align:center;color:#666;font-style:italic;padding:50px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.pdf-viewer-host{flex:1 1 auto;min-height:min(70vh,720px);width:calc(100% - 20px);margin:10px;display:flex;flex-direction:column;box-sizing:border-box}::ng-deep .pdf-viewer-host ngx-extended-pdf-viewer{flex:1 1 auto;min-height:0;height:100%;width:100%;border:1px solid #ddd;border-radius:4px;display:block}.excel-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;box-shadow:0 2px 10px #0000001a;margin:10px;overflow:auto}.excel-sheet{margin-bottom:30px;background:#fff}.excel-sheet h3{background-color:#f3f2f1;padding:12px 16px;margin:0;border-radius:4px 4px 0 0;font-size:14px;font-weight:600;color:#333;border-bottom:1px solid #e1dfdd}.excel-container{overflow-x:auto;overflow-y:auto;border:1px solid #e1dfdd;border-top:none;border-radius:0 0 4px 4px;max-height:calc(100% - 50px)}.excel-table{border-collapse:collapse;width:100%;font-family:Segoe UI,Calibri,Arial,sans-serif;font-size:13px;background:#fff}.excel-table td,.excel-table th{border:1px solid #e1dfdd;padding:8px 12px;white-space:nowrap;color:#333}.excel-table th{background-color:#f2f2f2;font-weight:700}.excel-table tr:first-child td{background-color:#f3f2f1;font-weight:600;color:#333;border-bottom:2px solid #8a8886}.excel-table td.number-cell,.excel-table td.percentage-cell,.excel-table td[data-format*=\"%\"]{text-align:right}.excel-table td.percentage-cell{color:#107c41}.excel-table td.text-cell{text-align:left}.excel-table tr:nth-child(2n) td{background-color:#faf9f8}.excel-table tr:hover td{background-color:#edf3fa}.excel-table td.selected{background-color:#cce8ff;border:2px solid #0078d4}.excel-viewer-container{flex:1 1 auto;min-height:0;width:calc(100% - 20px);margin:10px;border-radius:4px;overflow:hidden;box-shadow:0 2px 10px #0000001a;background:#fff;display:flex;flex-direction:column}.excel-sheet-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:12px 10px 0 8px;background:#f3f2f1;border-bottom:1px solid #e1dfdd;min-height:44px}.excel-sheet-tab{padding:8px 16px;border:1px solid #e1dfdd;border-bottom:none;border-radius:4px 4px 0 0;font-size:13px;font-family:Segoe UI,Arial,sans-serif;color:#333;cursor:pointer;transition:background .15s,border-color .15s}.excel-sheet-tab:hover{background:#edebe9;border-bottom:1px solid #000000}.excel-sheet-tab.active{background:#fff;font-weight:600;border-bottom:1px solid #000000;margin-bottom:2px;z-index:1}.excel-container-custom{width:100%;overflow-x:auto;overflow-y:auto}::ng-deep .handsontable{font-family:Segoe UI,Arial,sans-serif;font-size:13px;overflow:hidden!important}::ng-deep .wtHolder{width:100%!important;height:100%!important}::ng-deep .handsontable td{border:1px solid #e1dfdd;padding:8px 12px;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;word-break:break-word;line-height:1.4;vertical-align:top;max-width:300px;min-width:80px;margin:0!important}::ng-deep .handsontable td:hover{overflow:visible;background-color:#edf3fa;position:relative;z-index:10;box-shadow:0 2px 8px #00000026}::ng-deep .handsontable .htRight{text-align:right;font-family:Segoe UI,Consolas,monospace}::ng-deep .handsontable .htLeft{text-align:left}::ng-deep .handsontable .htCenter{text-align:center}::ng-deep .handsontable tr:nth-child(2n) td{background-color:#faf9f8}::ng-deep .handsontable tr:hover td{background-color:#edf3fa}::ng-deep .handsontable .current-row td{background-color:#e5f3ff}::ng-deep .handsontable .manualColumnResizer{background-color:#34a9db;width:5px;cursor:col-resize;opacity:0;transition:opacity .2s}::ng-deep .handsontable .manualColumnResizer:hover,::ng-deep .handsontable .manualColumnResizer.active{opacity:1;background-color:#0078d4}::ng-deep .handsontable .manualRowResizer{background-color:#34a9db;height:5px;cursor:row-resize;opacity:0;transition:opacity .2s}::ng-deep .handsontable .manualRowResizer:hover,::ng-deep .handsontable .manualRowResizer.active{opacity:1;background-color:#0078d4}::ng-deep .wtHolder::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::ng-deep .wtHolder::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::ng-deep .wtHolder::-webkit-scrollbar-thumb:hover{background:#a8a8a8}::ng-deep .htContextMenu table{font-family:Segoe UI,Arial,sans-serif;font-size:12px}::ng-deep .htContextMenu .htItemWrapper{padding:6px 12px}::ng-deep .htContextMenu .current{background-color:#e5f3ff}@media(max-width:768px){.document-viewer-container{padding:10px}.excel-viewer-container{width:calc(100% - 10px);margin:5px}.excel-viewer,.image-viewer,.text-viewer,.word-viewer,.presentation-viewer{margin:5px;padding:10px}::ng-deep .handsontable td{font-size:11px;padding:4px 6px}::ng-deep .handsontable th{font-size:11px;padding:6px}.pdf-viewer-host{width:calc(100% - 10px);margin:5px;min-height:min(60vh,560px)}}.excel-viewer-container{overflow:hidden;position:relative}.excel-container-custom{overflow:auto;position:relative;height:100%;width:100%}.image-viewer{flex:1 1 auto;width:100%;height:100%;display:flex;flex-direction:column;background-color:#fff}.image-toolbar{padding:10px;background-color:#fff;border-bottom:1px solid #ddd;display:flex;gap:8px;align-items:center;z-index:10}.image-toolbar button{padding:5px 10px;border:1px solid #ccc;background-color:#fff;border-radius:4px;cursor:pointer;font-size:16px;min-width:36px}.image-toolbar button:hover{background-color:#f0f0f0}.image-container{flex:1;overflow:hidden;position:relative;display:flex;justify-content:center;align-items:center;background-color:#fff}.responsive-image{max-width:100%;max-height:100%;object-fit:contain;transition:transform .1s ease;transform-origin:center center;will-change:transform;-webkit-user-select:none;user-select:none}::ng-deep .handsontable .ht_clone_top,::ng-deep .handsontable .ht_clone_top_left_corner,::ng-deep .handsontable .ht_clone_left{display:none!important}\n/*! Bundled license information:\n\nhandsontable/dist/handsontable.full.css:\n (*!\n * Copyright (c) HANDSONCODE sp. z o. o.\n *\n * HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in\n * Gdynia, Poland, at Aleja Zwyciestwa 96-98, registered by the District Court in Gdansk under number\n * 538651, EU tax ID number: PL5862294002, share capital: PLN 62,800.00.\n *\n * This software is protected by applicable copyright laws, including international treaties, and dual-\n * licensed - depending on whether your use for commercial purposes, meaning intended for or\n * resulting in commercial advantage or monetary compensation, or not.\n *\n * If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing\n * the suitability, performance, and usefulness of this software outside the production environment,\n * you agree to be bound by the terms included in the \"handsontable-non-commercial-license.pdf\" file.\n *\n * Your use of this software for commercial purposes is subject to the terms included in an applicable\n * license agreement.\n *\n * In any case, you must not make any such use of this software as to develop software which may be\n * considered competitive with this software.\n *\n * UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN \"AS IS\"\n * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO\n * LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,\n * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM\n * USE OR INABILITY TO USE THIS SOFTWARE.\n *\n * Version: 16.2.0\n * Release date: 25/11/2025 (built at 20/11/2025 13:27:05)\n *)\n (*!\n * Handsontable ContextMenu\n *)\n (*!\n * Handsontable DropdownMenu\n *)\n (*!\n * Handsontable Filters\n *)\n (*!\n * Handsontable HiddenRows\n *)\n (*!\n * Pikaday\n * Copyright \u00A9 2014 David Bushell | BSD & MIT license | https://dbushell.com/\n *)\n*/\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: NgxExtendedPdfViewerModule }, { kind: "component", type: i3.NgxExtendedPdfViewerComponent, selector: "ngx-extended-pdf-viewer", inputs: ["customFindbarInputArea", "customToolbar", "customFindbar", "customFindbarButtons", "customPdfViewer", "customSecondaryToolbar", "customSidebar", "customThumbnail", "customFreeFloatingBar", "showFreeFloatingBar", "enableDragAndDrop", "forceUsingLegacyES5", "formData", "disableForms", "pageViewMode", "scrollMode", "authorization", "httpHeaders", "contextMenuAllowed", "enablePrint", "enablePrintAutoRotate", "forceFullReloadOfJavaScriptCode", "showTextEditor", "showStampEditor", "showCommentEditor", "showDrawEditor", "showHighlightEditor", "showSignatureEditor", "logLevel", "minifiedJSLibraries", "printResolution", "rotation", "src", "base64Src", "minHeight", "height", "backgroundColor", "pdfBackgroundColor", "filenameForDownload", "ignoreKeyboard", "ignoreKeys", "acceptKeys", "imageResourcesPath", "localeFolderPath", "language", "listenToURL", "nameddest", "password", "replaceBrowserPrint", "useInlineScripts", "showUnverifiedSignatures", "startTabindex", "showSidebarButton", "sidebarVisible", "activeSidebarView", "findbarVisible", "propertiesDialogVisible", "showFindButton", "showFindHighlightAll", "showFindMatchCase", "showFindMultiple", "showFindRegexp", "showFindEntireWord", "showFindMatchDiacritics", "showFindResultsCount", "showFindMessages", "showMovePageButton", "showPagingButtons", "showFirstAndLastPageButtons", "showPreviousAndNextPageButtons", "showPageNumber", "showPageLabel", "showZoomButtons", "showZoomDropdown", "showPresentationModeButton", "showOpenFileButton", "showPrintButton", "showDownloadButton", "theme", "showToolbar", "showSecondaryToolbarButton", "showSinglePageModeButton", "showVerticalScrollButton", "showHorizontalScrollButton", "showWrappedScrollButton", "showInfiniteScrollButton", "showBookModeButton", "showRotateButton", "showRotateCwButton", "showRotateCcwButton", "handTool", "showHandToolButton", "showSpreadButton", "showPropertiesButton", "showBorders", "spread", "showScrollingButtons", "page", "pageLabel", "textLayer", "zoom", "zoomLevels", "maxZoom", "minZoom", "mobileFriendlyZoom"], outputs: ["annotationEditorEvent", "formDataChange", "pageViewModeChange", "progress", "srcChange", "scrollModeChange", "afterPrint", "beforePrint", "currentZoomFactor", "rotationChange", "annotationLayerRendered", "annotationEditorLayerRendered", "xfaLayerRendered", "outlineLoaded", "attachmentsloaded", "layersloaded", "sidebarVisibleChange", "activeSidebarViewChange", "findbarVisibleChange", "propertiesDialogVisibleChange", "handToolChange", "spreadChange", "thumbnailDrawn", "pageChange", "pageLabelChange", "pagesLoaded", "pageRender", "pageRendered", "pdfDownloaded", "pdfLoaded", "pdfLoadingStarts", "pdfLoadingFailed", "textLayerRendered", "annotationEditorModeChanged", "updateFindMatchesCount", "updateFindState", "zoomChange"] }, { kind: "ngmodule", type: HotTableModule }, { kind: "component", type: i4.HotTableComponent, selector: "hot-table", inputs: ["settings", "hotId", "activeHeaderClassName", "allowEmpty", "allowHtml", "allowInsertColumn", "allowInsertRow", "allowInvalid", "allowRemoveColumn", "allowRemoveRow", "ariaTags", "autoColumnSize", "autoRowSize", "autoWrapCol", "autoWrapRow", "bindRowsWithHeaders", "cell", "cells", "checkedTemplate", "className", "colHeaders", "collapsibleColumns", "columnHeaderHeight", "columns", "columnSorting", "columnSummary", "colWidths", "commentedCellClassName", "comments", "contextMenu", "copyable", "copyPaste", "correctFormat", "currentColClassName", "currentHeaderClassName", "currentRowClassName", "customBorders", "data", "dataDotNotation", "dataSchema", "dateFormat", "datePickerConfig", "defaultDate", "tabNavigation", "themeName", "disableVisualSelection", "dragToScroll", "dropdownMenu", "editor", "enterBeginsEditing", "enterMoves", "fillHandle", "filter", "filteringCaseSensitive", "filters", "fixedColumnsLeft", "fixedColumnsStart", "fixedRowsBottom", "fixedRowsTop", "formulas", "fragmentSelection", "headerClassName", "height", "hiddenColumns", "hiddenRows", "initialState", "invalidCellClassName", "imeFastEdit", "label", "language", "layoutDirection", "licenseKey", "locale", "manualColumnFreeze", "manualColumnMove", "manualColumnResize", "manualRowMove", "manualRowResize", "maxCols", "maxRows", "mergeCells", "minCols", "minRowHeights", "minRows", "minSpareCols", "minSpareRows", "multiColumnSorting", "navigableHeaders", "nestedHeaders", "nestedRows", "noWordWrapClassName", "numericFormat", "observeDOMVisibility", "outsideClickDeselects", "pagination", "persistentState", "placeholder", "placeholderCellClassName", "preventOverflow", "preventWheel", "readOnly", "readOnlyCellClassName", "renderAllColumns", "renderAllRows", "renderer", "rowHeaders", "rowHeaderWidth", "rowHeights", "search", "selectionMode", "selectOptions", "skipColumnOnPaste", "skipRowOnPaste", "sortByRelevance", "source", "startCols", "startRows", "stretchH", "strict", "tableClassName", "tabMoves", "title", "trimDropdown", "trimRows", "trimWhitespace", "type", "uncheckedTemplate", "undo", "validator", "valueGetter", "valueSetter", "viewportColumnRenderingOffset", "viewportRowRenderingOffset", "visibleRows", "width", "wordWrap", "afterAddChild", "afterAutofill", "afterBeginEditing", "afterCellMetaReset", "afterChange", "afterChangesObserved", "afterColumnCollapse", "afterColumnExpand", "afterColumnFreeze", "afterColumnMove", "afterColumnResize", "afterColumnSequenceCacheUpdate", "afterColumnSequenceChange", "afterColumnSort", "afterColumnUnfreeze", "afterContextMenuDefaultOptions", "afterContextMenuHide", "afterContextMenuShow", "afterCopy", "afterCopyLimit", "afterCreateCol", "afterCreateRow", "afterCut", "afterDeselect", "afterDestroy", "afterDetachChild", "afterDocumentKeyDown", "afterDrawSelection", "afterDropdownMenuDefaultOptions", "afterDropdownMenuHide", "afterDropdownMenuShow", "afterFilter", "afterFormulasValuesUpdate", "afterGetCellMeta", "afterGetColHeader", "afterGetColumnHeaderRenderers", "afterGetRowHeader", "afterGetRowHeaderRenderers", "afterHideColumns", "afterHideRows", "afterInit", "afterLanguageChange", "afterListen", "afterLoadData", "afterMergeCells", "afterModifyTransformEnd", "afterModifyTransformFocus", "afterModifyTransformStart", "afterMomentumScroll", "afterNamedExpressionAdded", "afterNamedExpressionRemoved", "afterOnCellContextMenu", "afterOnCellCornerDblClick", "afterOnCellCornerMouseDown", "afterOnCellMouseDown", "afterOnCellMouseOut", "afterOnCellMouseOver", "afterOnCellMouseUp", "afterPageChange", "afterPageSizeChange", "afterPageSizeVisibilityChange", "afterPageCounterVisibilityChange", "afterPageNavigationVisibilityChange", "afterPaste", "afterPluginsInitialized", "afterRedo", "afterRedoStackChange", "afterRefreshDimensions", "afterRemoveCellMeta", "afterRemoveCol", "afterRemoveRow", "afterRender", "afterRenderer", "afterRowMove", "afterRowResize", "afterRowSequenceCacheUpdate", "afterRowSequenceChange", "afterScrollHorizontally", "afterScrollVertically", "afterScroll", "afterSelectColumns", "afterSelection", "afterSelectionByProp", "afterSelectionEnd", "afterSelectionEndByProp", "afterSelectionFocusSet", "afterSelectRows", "afterSetCellMeta", "afterSetDataAtCell", "afterSetDataAtRowProp", "afterSetSourceDataAtCell", "afterSetTheme", "afterSheetAdded", "afterSheetRenamed", "afterSheetRemoved", "afterTrimRow", "afterUndo", "afterUndoStackChange", "afterUnhideColumns", "afterUnhideRows", "afterUnlisten", "afterUnmergeCells", "afterUntrimRow", "afterUpdateData", "afterUpdateSettings", "afterValidate", "afterViewportColumnCalculatorOverride", "afterViewportRowCalculatorOverride", "afterViewRender", "beforeAddChild", "beforeAutofill", "beforeBeginEditing", "beforeCellAlignment", "beforeChange", "beforeChangeRender", "beforeColumnCollapse", "beforeColumnExpand", "beforeColumnFreeze", "beforeColumnMove", "beforeColumnResize", "beforeColumnSort", "beforeColumnWrap", "beforeColumnUnfreeze", "beforeCompositionStart", "beforeContextMenuSetItems", "beforeContextMenuShow", "beforeCopy", "beforeCreateCol", "beforeCreateRow", "beforeCut", "beforeDetachChild", "beforeDrawBorders", "beforeDropdownMenuSetItems", "beforeDropdownMenuShow", "beforeFilter", "beforeGetCellMeta", "beforeHeightChange", "beforeHideColumns", "beforeHideRows", "beforeHighlightingColumnHeader", "beforeHighlightingRowHeader", "beforeInit", "beforeInitWalkontable", "beforeKeyDown", "beforeLanguageChange", "beforeLoadData", "beforeMergeCells", "beforeOnCellContextMenu", "beforeOnCellMouseDown", "beforeOnCellMouseOut", "beforeOnCellMouseOver", "beforeOnCellMouseUp", "beforePageChange", "beforePageSizeChange", "beforePaste", "beforeRedo", "beforeRedoStackChange", "beforeRefreshDimensions", "beforeRemoveCellClassNames", "beforeRemoveCellMeta", "beforeRemoveCol", "beforeRemoveRow", "beforeRender", "beforeRenderer", "beforeRowMove", "beforeRowResize", "beforeRowWrap", "beforeSelectColumns", "beforeSelectionFocusSet", "beforeSelectionHighlightSet", "beforeSelectRows", "beforeSetCellMeta", "beforeSetRangeEnd", "beforeSetRangeStart", "beforeSetRangeStartOnly", "beforeStretchingColumnWidth", "beforeTouchScroll", "beforeTrimRow", "beforeUndo", "beforeUndoStackChange", "beforeUnhideColumns", "beforeUnhideRows", "beforeUnmergeCells", "beforeUntrimRow", "beforeUpdateData", "beforeValidate", "beforeValueRender", "beforeViewportScroll", "beforeViewportScrollHorizontally", "beforeViewportScrollVertically", "beforeViewRender", "beforeWidthChange", "construct", "init", "modifyAutoColumnSizeSeed", "modifyAutofillRange", "modifyColHeader", "modifyColumnHeaderHeight", "modifyColumnHeaderValue", "modifyColWidth", "modifyCopyableRange", "modifyFiltersMultiSelectValue", "modifyFocusedElement", "modifyData", "modifyFocusOnTabNavigation", "modifyGetCellCoords", "modifyGetCoordsElement", "modifyRowData", "modifyRowHeader", "modifyRowHeaderWidth", "modifyRowHeight", "modifyRowHeightByOverlayName", "modifySourceData", "modifyTransformEnd", "modifyTransformFocus", "modifyTransformStart", "persistentStateLoad", "persistentStateReset", "persistentStateSave"] }] });
|
|
645
731
|
}
|
|
646
732
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: PdfViewerComponent, decorators: [{
|
|
647
733
|
type: Component,
|
|
648
|
-
args: [{ selector: 'sgdea-document-viewer', standalone: true, imports: [CommonModule, NgxExtendedPdfViewerModule, HotTableModule], template: "<div *ngIf=\"loading()\" class=\"loader\">Cargando documento...</div>\n\n<div *ngIf=\"errorMessage() && !loading()\" class=\"error-message\">\n {{ errorMessage() }}\n</div>\n\n<div *ngIf=\"!loading() && !errorMessage()\" class=\"document-viewer-container\">\n\n <!-- PDF -->\n <ngx-extended-pdf-viewer\n *ngIf=\"fileType() === 'pdf' && pdfSrc\"\n [src]=\"pdfSrc\"\n height=\"auto\"\n useBrowserLocale=\"false\"\n [showDownloadButton]=\"false\"\n [showPrintButton]=\"false\"\n [showOpenFileButton]=\"false\"\n [showSecondaryToolbarButton]=\"false\"\n [showFirstAndLastPageButtons]=\"false\"\n [showPagingButtons]=\"false\"\n [showZoomButtons]=\"true\"\n [showDrawEditor]=\"false\"\n [showTextEditor]=\"false\"\n [showStampEditor]=\"false\"\n [showHighlightEditor]=\"false\"\n >\n </ngx-extended-pdf-viewer>\n\n <!-- Imagen -->\n<!-- Visor de im\u00E1genes con zoom y rotaci\u00F3n -->\n <div *ngIf=\"isImageType() && imageSrc\" class=\"image-viewer\">\n <!-- Barra de herramientas -->\n <div class=\"image-toolbar\">\n <button (click)=\"zoomIn()\" title=\"Acercar (Ctrl +)\">\u2795</button>\n <button (click)=\"zoomOut()\" title=\"Alejar (Ctrl -)\">\u2796</button>\n <!-- Separador -->\n <span class=\"separator\"></span>\n\n <!-- Botones de rotaci\u00F3n AHORA FUNCIONALES -->\n <button (click)=\"rotateLeft()\" title=\"Rotar izquierda (\u21BA)\">\u21BA</button>\n <button (click)=\"rotateRight()\" title=\"Rotar derecha (\u21BB)\">\u21BB</button>\n\n <!-- Informaci\u00F3n -->\n <span class=\"zoom-info\">{{ zoomLevel() }}%</span>\n <span class=\"rotation-info\" *ngIf=\"rotation() !== 0\">\n {{ rotation() }}\u00B0\n </span>\n\n <span class=\"image-dimensions\" *ngIf=\"imageDimensions.width\">\n {{ imageDimensions.width }} x {{ imageDimensions.height }}\n </span>\n </div>\n\n <!-- Contenedor de la imagen -->\n <div\n class=\"image-container\" \n #imageContainer \n (wheel)=\"onMouseWheel($event)\"\n >\n <img\n #mainImage\n [src]=\"imageSrc\"\n [alt]=\"fileName()\"\n [style.transform]=\"getImageTransform()\"\n [style.cursor]=\"getCursorStyle()\"\n (load)=\"onImageLoad()\"\n (mousedown)=\"startDrag($event)\"\n (mousemove)=\"onDrag($event)\"\n (mouseup)=\"stopDrag()\"\n (mouseleave)=\"stopDrag()\"\n class=\"zoomable-image\"\n />\n </div>\n\n <!-- Instrucciones -->\n <div class=\"image-footer\" *ngIf=\"zoomLevel() > 100\">\n <small>Arrastra para mover la imagen</small>\n </div>\n </div>\n <!-- Excel -->\n <div *ngIf=\"isExcelType()\" class=\"excel-viewer-container\">\n\n <!-- Tabs -->\n <div *ngIf=\"excelSheetNames.length > 1\" class=\"excel-sheet-tabs\">\n <button\n *ngFor=\"let sheet of excelSheetNames; let i = index\"\n type=\"button\"\n class=\"excel-sheet-tab\"\n [class.active]=\"excelCurrentSheetIndex() === i\"\n (click)=\"selectExcelSheet(i)\"\n >\n {{ sheet }}\n </button>\n </div>\n\n <hot-table\n *ngIf=\"showExcelViewer\"\n #hotTable\n [settings]=\"excelSettings\"\n [data]=\"excelData\"\n [colHeaders]=\"excelColumnHeaders\"\n [rowHeaders]=\"true\"\n [width]=\"'100%'\"\n [height]=\"'100%'\"\n licenseKey=\"non-commercial-and-evaluation\"\n [columns]=\"excelColumns\"\n >\n </hot-table>\n\n <div *ngIf=\"!showExcelViewer\" class=\"loader\">\n Cargando hoja...\n </div>\n\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.handsontable .table th,.handsontable .table td{border-top:none}.handsontable tr{background:#fff}.handsontable td{background-color:inherit}.handsontable .table caption+thead tr:first-child th,.handsontable .table caption+thead tr:first-child td,.handsontable .table colgroup+thead tr:first-child th,.handsontable .table colgroup+thead tr:first-child td,.handsontable .table thead:first-child tr:first-child th,.handsontable .table thead:first-child tr:first-child td{border-top:1px solid #CCCCCC}.handsontable .table-bordered{border:0;border-collapse:separate}.handsontable .table-bordered th,.handsontable .table-bordered td{border-left:none}.handsontable .table-bordered th:first-child,.handsontable .table-bordered td:first-child{border-left:1px solid #CCCCCC}.handsontable .table>tbody>tr>td,.handsontable .table>tbody>tr>th,.handsontable .table>tfoot>tr>td,.handsontable .table>tfoot>tr>th,.handsontable .table>thead>tr>td,.handsontable .table>thead>tr>th{line-height:21px;padding:0}.col-lg-1.handsontable,.col-lg-10.handsontable,.col-lg-11.handsontable,.col-lg-12.handsontable,.col-lg-2.handsontable,.col-lg-3.handsontable,.col-lg-4.handsontable,.col-lg-5.handsontable,.col-lg-6.handsontable,.col-lg-7.handsontable,.col-lg-8.handsontable,.col-lg-9.handsontable,.col-md-1.handsontable,.col-md-10.handsontable,.col-md-11.handsontable,.col-md-12.handsontable,.col-md-2.handsontable,.col-md-3.handsontable,.col-md-4.handsontable,.col-md-5.handsontable,.col-md-6.handsontable,.col-md-7.handsontable,.col-md-8.handsontable,.col-md-9.handsontable .col-sm-1.handsontable,.col-sm-10.handsontable,.col-sm-11.handsontable,.col-sm-12.handsontable,.col-sm-2.handsontable,.col-sm-3.handsontable,.col-sm-4.handsontable,.col-sm-5.handsontable,.col-sm-6.handsontable,.col-sm-7.handsontable,.col-sm-8.handsontable,.col-sm-9.handsontable .col-xs-1.handsontable,.col-xs-10.handsontable,.col-xs-11.handsontable,.col-xs-12.handsontable,.col-xs-2.handsontable,.col-xs-3.handsontable,.col-xs-4.handsontable,.col-xs-5.handsontable,.col-xs-6.handsontable,.col-xs-7.handsontable,.col-xs-8.handsontable,.col-xs-9.handsontable{padding-left:0;padding-right:0}.handsontable.ht-wrapper{height:100%;width:100%}.handsontable .table-striped>tbody>tr:nth-of-type(2n){background-color:#fff}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable .wtHider{position:relative;width:0}.handsontable .wtSpreader{position:relative;width:0;height:auto}.handsontable table,.handsontable tbody,.handsontable thead,.handsontable td,.handsontable th,.handsontable input,.handsontable textarea,.handsontable div{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:initial}.handsontable table.htCore{border-collapse:separate;border-spacing:0;margin:0;border-width:0;table-layout:fixed;width:0;outline-width:0;cursor:default;max-width:none;max-height:none}.handsontable col,.handsontable col.rowHeader{width:50px}.handsontable th,.handsontable td{border-top-width:0;border-left-width:0;border-right:1px solid #ccc;border-bottom:1px solid #ccc;height:22px;empty-cells:show;line-height:21px;padding:0 4px;background-color:#fff;vertical-align:top;overflow:hidden;outline:none;outline-width:0;white-space:pre-wrap}[dir=rtl].handsontable th,[dir=rtl].handsontable td{border-right-width:0;border-left:1px solid #ccc}.handsontable th:last-child{border-left:none;border-right:1px solid #ccc;border-bottom:1px solid #ccc}[dir=rtl].handsontable th:last-child{border-right:none;border-left:1px solid #ccc}.handsontable th:first-child,.handsontable .ht_clone_inline_start td:first-of-type,.handsontable .ht_clone_top_inline_start_corner td:first-of-type,.handsontable .ht_clone_bottom_inline_start_corner td:first-of-type,.handsontable.ht-wrapper:not(.htFirstDatasetColumnNotRendered) td:first-of-type{border-left:1px solid #ccc}[dir=rtl].handsontable th:first-child,[dir=rtl].handsontable.ht-wrapper:not(.htFirstDatasetColumnNotRendered) td:first-of-type{border-right:1px solid #ccc}.handsontable .ht_clone_top th:nth-child(2){border-left-width:0;border-right:1px solid #ccc}[dir=rtl].handsontable .ht_clone_top th:nth-child(2){border-right-width:0;border-left:1px solid #ccc}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable.htRowHeaders thead tr th:nth-child(2){border-right:1px solid #ccc}.handsontable tr:first-child th,.handsontable tr:first-child td{border-top:1px solid #ccc}.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-right-width:0;border-left:1px solid #ccc}[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-left-width:0;border-right:1px solid #ccc}.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr.lastChild th{border-bottom-width:0}.handsontable th{background-color:#f0f0f0;color:#222;text-align:center;font-weight:400;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#ccc}.handsontable thead th .relative{padding:2px 4px}.handsontable span.colHeader{display:inline-block;line-height:1.1}.handsontable .wtBorder{position:absolute;font-size:0}.handsontable .wtBorder.hidden{display:none!important}.handsontable .wtBorder:nth-child(1),.handsontable .wtBorder:nth-child(3){z-index:2}.handsontable .wtBorder:nth-child(2),.handsontable .wtBorder:nth-child(4){z-index:1}.handsontable .wtBorder.current{z-index:10}.handsontable .wtBorder.area{z-index:8}.handsontable .wtBorder.fill{z-index:6}.handsontable .wtBorder.corner{font-size:0;cursor:crosshair}.htBorders .wtBorder.ht-border-style-dashed-vertical{background-image:repeating-linear-gradient(to bottom,var(--ht-custom-border-color) 0 5px,transparent 0 10px)}.htBorders .wtBorder.ht-border-style-dashed-horizontal{background-image:repeating-linear-gradient(to right,var(--ht-custom-border-color) 0 5px,transparent 0 10px)}.htBorders .wtBorder.ht-border-style-dotted-horizontal{background-image:radial-gradient(circle,var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2),transparent 0);background-size:calc(var(--ht-custom-border-size) * 2) var(--ht-custom-border-size);background-repeat:repeat-x}.htBorders .wtBorder.ht-border-style-dotted-vertical{background-image:radial-gradient(circle,var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2),transparent 0);background-size:var(--ht-custom-border-size) calc(var(--ht-custom-border-size) * 2);background-repeat:repeat-y}.ht_clone_master{z-index:100}.ht_clone_inline_start{z-index:120}.ht_clone_bottom{z-index:130}.ht_clone_bottom_inline_start_corner{z-index:150}.ht_clone_top{z-index:160}.ht_clone_top_inline_start_corner{z-index:180}.handsontable col.hidden{width:0!important}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_master,.ht_clone_inline_start,.ht_clone_top,.ht_clone_bottom{overflow:hidden}.ht_master .wtHolder{overflow:auto}.handsontable .ht_master table.htCore>thead,.handsontable .ht_master table.htCore>tbody>tr>th,.handsontable .ht_clone_inline_start table.htCore>thead{visibility:hidden}.ht_clone_top .wtHolder,.ht_clone_inline_start .wtHolder,.ht_clone_bottom .wtHolder{overflow:hidden}.handsontable{position:relative;touch-action:manipulation;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;font-weight:400;color:#373737}.handsontable a{color:#104acc}.handsontable.htAutoSize{visibility:hidden;left:-99000px;position:absolute;top:-99000px}.handsontable td.htInvalid{background-color:#ffbeba!important}.handsontable td.htNoWrap{white-space:nowrap}.handsontable td.invisibleSelection,.handsontable th.invisibleSelection{outline:none}.handsontable td.invisibleSelection::selection,.handsontable th.invisibleSelection::selection{background:#fff0}.hot-display-license-info{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:400;color:#373737;padding:5px 0 3px;text-align:left}.hot-display-license-info a{color:#104acc;font-size:10px}.htFocusCatcher{position:absolute;z-index:-1;opacity:0;border:0;margin:0;padding:0;width:0;height:0}.handsontable .htTextEllipsis{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.handsontable .manualColumnResizer{position:absolute;top:0;cursor:col-resize;z-index:210;width:5px;height:25px}.handsontable .manualRowResizer{position:absolute;left:0;cursor:row-resize;z-index:210;height:5px;width:50px}.handsontable .manualColumnResizer:hover,.handsontable .manualColumnResizer.active,.handsontable .manualRowResizer:hover,.handsontable .manualRowResizer.active{background-color:#34a9db}.handsontable .manualColumnResizerGuide{position:absolute;right:unset;top:0;background-color:#34a9db;display:none;width:0;border-right:1px dashed #777;border-left:none;margin-left:5px;margin-right:unset}[dir=rtl].handsontable .manualColumnResizerGuide{left:unset;border-left:1px dashed #777;border-right:none;margin-right:5px;margin-left:unset}.handsontable .manualRowResizerGuide{position:absolute;left:0;bottom:0;background-color:#34a9db;display:none;height:0;border-bottom:1px dashed #777;margin-top:5px}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block;z-index:209}.handsontable td.area,.handsontable td.area-1,.handsontable td.area-2,.handsontable td.area-3,.handsontable td.area-4,.handsontable td.area-5,.handsontable td.area-6,.handsontable td.area-7{position:relative}.handsontable td.area:before,.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before{content:\"\";position:absolute;inset:0;background:#005eff}.handsontable td.area:before{opacity:.1}.handsontable td.area-1:before{opacity:.2}.handsontable td.area-2:before{opacity:.27}.handsontable td.area-3:before{opacity:.35}.handsontable td.area-4:before{opacity:.41}.handsontable td.area-5:before{opacity:.47}.handsontable td.area-6:before{opacity:.54}.handsontable td.area-7:before{opacity:.58}.handsontable tbody th.current,.handsontable thead th.current{box-shadow:inset 0 0 0 2px #4b89ff}.handsontable tbody th.ht__highlight,.handsontable thead th.ht__highlight{background-color:#dcdcdc}.handsontable tbody th.ht__active_highlight,.handsontable thead th.ht__active_highlight{background-color:#8eb0e7;color:#000}.handsontableInput{border:none;outline-width:0;margin:0;padding:1px 5px 0;font-family:inherit;line-height:21px;font-size:inherit;box-shadow:0 0 0 2px #5292f7 inset;resize:none;display:block;color:#000;border-radius:0;background-color:#fff;box-sizing:border-box!important}.handsontableInput:focus{outline:none}.handsontableInputHolder{position:absolute;top:0;left:0}.htSelectEditor{position:absolute;select{-webkit-appearance:menulist-button!important;width:100%;height:100%;border:2px solid #4b89ff;box-sizing:border-box!important}}.htSelectEditor select:focus{outline:none}.htSelectEditor .htAutocompleteArrow{display:none}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{content:\"\\25b6\";color:#777;position:absolute;right:5px;font-size:9px}[dir=rtl].handsontable .htSubmenu :after{content:\"\"}[dir=rtl].handsontable .htSubmenu :before{content:\"\\25c0\";color:#777;position:absolute;left:5px;font-size:9px}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable.listbox{border:1px solid #ccc;margin:0}.handsontable.listbox.autocompleteEditor,.handsontable.listbox.dropdownEditor{border-width:0}.handsontable.listbox .ht_master table{border-collapse:separate;background:#fff}.handsontable.listbox.autocompleteEditor .ht_master table,.handsontable.listbox.dropdownEditor .ht_master table{border:1px solid #ccc}.handsontable.listbox th,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th,.handsontable.listbox tr:first-child td,.handsontable.listbox td{border-color:transparent!important}.handsontable.listbox th,.handsontable.listbox td{white-space:nowrap;text-overflow:ellipsis}.handsontable.listbox td.htDimmed{cursor:default;color:inherit;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_editor_hidden{z-index:-1}.ht_editor_visible{z-index:200}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch}.handsontable.mobile .handsontableInput:focus{-webkit-box-shadow:0 0 0 2px #5292f7 inset;-moz-box-shadow:0 0 0 2px #5292f7 inset;box-shadow:0 0 0 2px #5292f7 inset;-webkit-appearance:none}.handsontable .topSelectionHandle,.handsontable .topSelectionHandle-HitArea,.handsontable .bottomSelectionHandle,.handsontable .bottomSelectionHandle-HitArea{left:-10000px;right:unset;top:-10000px;z-index:9999}[dir=rtl].handsontable .topSelectionHandle,[dir=rtl].handsontable .topSelectionHandle-HitArea,[dir=rtl].handsontable .bottomSelectionHandle,[dir=rtl].handsontable .bottomSelectionHandle-HitArea{right:-10000px;left:unset}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable .htAutocompleteArrow{float:right;font-size:10px;color:#bbb;cursor:default;width:16px;text-align:center}[dir=rtl].handsontable .htAutocompleteArrow{float:left}.handsontable td.htInvalid .htAutocompleteArrow{color:#555}.handsontable td.htInvalid .htAutocompleteArrow:hover{color:#1a1a1a}.handsontable td .htAutocompleteArrow:hover{color:#777}.handsontable td.area .htAutocompleteArrow{color:#d3d3d3}.handsontable .htCheckboxRendererInput.noValue{opacity:.5}.handsontable .htCheckboxRendererLabel{font-size:inherit;vertical-align:middle;cursor:pointer;display:inline-block}.handsontable .htCheckboxRendererLabel.fullWidth{width:100%}.handsontable .collapsibleIndicator{position:absolute;top:50%;transform:translateY(-50%);left:unset;right:5px;border:1px solid #A6A6A6;line-height:8px;color:#222;border-radius:10px;font-size:10px;width:10px;height:10px;cursor:pointer;-webkit-box-shadow:0 0 0 6px rgb(238,238,238);-moz-box-shadow:0 0 0 6px rgb(238,238,238);box-shadow:0 0 0 3px #eee;background:#eee;text-align:center}[dir=rtl].handsontable .collapsibleIndicator{right:unset;left:5px}.handsontable[dir=ltr] thead th:has(.collapsibleIndicator) div.htRight span.colHeader{margin-right:20px}.handsontable[dir=rtl] thead th:has(.collapsibleIndicator) div.htLeft span.colHeader{margin-left:20px}.handsontable .columnSorting{position:relative}.handsontable[dir=ltr] div.htRight span[class*=ascending],.handsontable[dir=ltr] div.htRight span[class*=descending]{margin-right:10px;margin-left:-10px}.handsontable[dir=rtl] div.htLeft span[class*=ascending],.handsontable[dir=rtl] div.htLeft span[class*=descending]{margin-left:10px;margin-right:-10px}.handsontable[dir=ltr] div.htRight span[class*=ascending]:only-child,.handsontable[dir=ltr] div.htRight span[class*=descending]:only-child{margin-right:15px;margin-left:-15px}.handsontable[dir=rtl] div.htLeft span[class*=ascending]:only-child,.handsontable[dir=rtl] div.htLeft span[class*=descending]:only-child{margin-left:15px;margin-right:-15px}.handsontable .columnSorting.sortAction:hover{text-decoration:underline;cursor:pointer}.handsontable span.colHeader.columnSorting:before{top:50%;margin-top:-6px;padding-left:8px;padding-right:0;position:absolute;right:-9px;left:unset;content:\"\";height:10px;width:5px;background-size:contain;background-repeat:no-repeat;background-position-x:right}[dir=rtl].handsontable span.colHeader.columnSorting:before{padding-right:8px;padding-left:0;left:-9px;right:unset;background-position-x:left}.handsontable span.colHeader.columnSorting.ascending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFNJREFUeAHtzjkSgCAUBNHPgsoy97+ulGXRqJE5L+xkxoYt2UdsLb5bqFINz+aLuuLn5rIu2RkO3fZpWENimNgiw6iBYRTPMLJjGFxQZ1hxxb/xBI1qC8k39CdKAAAAAElFTkSuQmCC)}.handsontable span.colHeader.columnSorting.descending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFJJREFUeAHtzjkSgCAQRNFmQYUZ7n9dKUvru0TmvPAn3br0QfgdZ5xx6x+rQn23GqTYnq1FDcnuzZIO2WmedVqIRVxgGKEyjNgYRjKGkZ1hFIZ3I70LyM0VtU8AAAAASUVORK5CYII=)}.htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled):before{content:\"*\";display:inline-block;position:relative;padding-right:20px}.handsontable.htGhostTable table thead th{border-bottom-width:0}.handsontable.htGhostTable table tbody tr th,.handsontable.htGhostTable table tbody tr td{border-top-width:0}.handsontable .htCommentCell{position:relative}.handsontable .htCommentCell:after{content:\"\";position:absolute;top:0;right:0;left:unset;border-left:6px solid transparent;border-right:none;border-top:6px solid black}[dir=rtl].handsontable .htCommentCell:after{left:0;right:unset;border-right:6px solid transparent;border-left:none}.htCommentsContainer .htComments{display:none;z-index:1059;position:absolute}.htCommentsContainer .htCommentTextArea{box-shadow:#0000001e 0 1px 3px,#0000003d 0 1px 2px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:none;border-left:3px solid #ccc;border-right:none;background-color:#fff;width:215px;height:90px;font-size:12px;padding:5px;outline:0!important;-webkit-appearance:none}[dir=rtl].htCommentsContainer .htCommentTextArea{border-right:3px solid #ccc;border-left:none}.htCommentsContainer .htCommentTextArea:focus{box-shadow:#0000001e 0 1px 3px,#0000003d 0 1px 2px,inset 0 0 0 1px #5292f7;border-left:3px solid #5292f7;border-right:none}[dir=rtl].htCommentsContainer .htCommentTextArea:focus{border-right:3px solid #5292f7;border-left:none}.htContextMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_bottom,.htContextMenu .ht_clone_inline_start,.htContextMenu .ht_clone_top_inline_start_corner,.htContextMenu .ht_clone_bottom_inline_start_corner{display:none}.htContextMenu .ht_master table.htCore{border-color:#ccc;border-style:solid;border-top-width:1px;border-bottom-width:2px;border-left-width:1px;border-right-width:2px}[dir=rtl].htContextMenu .ht_master table.htCore{border-right-width:1px;border-left-width:2px}.htContextMenu.handsontable:focus{outline:none}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htContextMenu table tbody tr td:first-child{border-top-width:0;border-bottom-width:0;border-left-width:0;border-right-width:0}[dir=rtl].htContextMenu table tbody tr td:first-child{border-right-width:0;border-left-width:0}.htContextMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htContextMenu table tbody tr td.current{background:#f3f3f3}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0;cursor:default}.htContextMenu table tbody tr td.htDisabled{color:#999;cursor:default}.htContextMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htContextMenu table tbody tr.htHidden{display:none}.htContextMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:6px}[dir=rtl].htContextMenu table tbody tr td .htItemWrapper{margin-right:10px;margin-left:6px}.htContextMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px;right:0}[dir=rtl].htContextMenu table tbody tr td div span.selected{right:4px;left:0}.htContextMenu .ht_master .wtHolder{overflow:hidden}textarea.HandsontableCopyPaste{position:fixed!important;top:0!important;right:100%!important;overflow:hidden;opacity:0;outline:0 none!important}.handsontable .changeType{background:#eee;border-radius:2px;border:1px solid #bbb;color:#bbb;font-size:9px;line-height:9px;padding:2px;margin:3px 1px 0 5px;float:right}[dir=rtl].handsontable .changeType{float:left}.handsontable[dir=rtl] .changeType{margin:3px 5px 0 1px}.handsontable .changeType:before{content:\"\\25bc \"}.handsontable .changeType:hover{border:1px solid #777;color:#777;cursor:pointer}.htDropdownMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htDropdownMenu .ht_clone_top,.htDropdownMenu .ht_clone_bottom,.htDropdownMenu .ht_clone_inline_start,.htDropdownMenu .ht_clone_top_inline_start_corner,.htDropdownMenu .ht_clone_bottom_inline_start_corner{display:none}.htDropdownMenu table.htCore{border-color:#ccc;border-style:solid;border-top-width:1px;border-bottom-width:2px;border-left-width:1px;border-right-width:2px}[dir=rtl].htDropdownMenu table.htCore{border-right-width:1px;border-left-width:2px}.htDropdownMenu.handsontable:focus{outline:none}.htDropdownMenu .wtBorder{visibility:hidden}.htDropdownMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htDropdownMenu table tbody tr td:first-child{border-top-width:0;border-right-width:0;border-bottom-width:0;border-left-width:0}[dir=rtl].htDropdownMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htDropdownMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htDropdownMenu table tbody tr td.current{background:#e9e9e9}.htDropdownMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0;cursor:default}.htDropdownMenu table tbody tr td.htDisabled{color:#999}.htDropdownMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htDropdownMenu:not(.htGhostTable) table tbody tr.htHidden{display:none}.htDropdownMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}[dir=rtl].htDropdownMenu table tbody tr td .htItemWrapper{margin-right:10px;margin-left:10px}.htDropdownMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px;right:0}[dir=rtl].htDropdownMenu table tbody tr td div span.selected{right:4px;left:0}.htDropdownMenu .ht_master .wtHolder{overflow:hidden}.htFiltersConditionsMenu:not(.htGhostTable){display:none;position:absolute;z-index:1070}.htFiltersConditionsMenu .ht_clone_top,.htFiltersConditionsMenu .ht_clone_bottom,.htFiltersConditionsMenu .ht_clone_inline_start,.htFiltersConditionsMenu .ht_clone_top_inline_start_corner,.htFiltersConditionsMenu .ht_clone_bottom_inline_start_corner{display:none}.htFiltersConditionsMenu table.htCore{border:1px solid #bbb;border-bottom-width:2px;border-right-width:2px}.htFiltersConditionsMenu .wtBorder{visibility:hidden}.htFiltersConditionsMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htFiltersConditionsMenu table tbody tr td:first-child{border-top-width:0;border-right-width:0;border-bottom-width:0;border-left-width:0}[dir=rtl].htFiltersConditionsMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htFiltersConditionsMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htFiltersConditionsMenu table tbody tr td.current{background:#e9e9e9}.htFiltersConditionsMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0}.htFiltersConditionsMenu table tbody tr td.htDisabled{color:#999}.htFiltersConditionsMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htFiltersConditionsMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}.htFiltersConditionsMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px}.htFiltersConditionsMenu .ht_master .wtHolder{overflow:hidden}.handsontable .htMenuFiltering{border-bottom:1px dotted #ccc;height:135px;overflow:hidden}.handsontable .ht_master table td.htCustomMenuRenderer{background-color:#fff;cursor:auto}.handsontable .htFiltersMenuLabel{font-size:.75em}.handsontable .htFiltersMenuActionBar{text-align:center;padding-top:10px;padding-bottom:3px}.handsontable .htFiltersMenuCondition.border{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuCondition .htUIInput{padding:0 0 5px}.handsontable .htFiltersMenuValue{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch{padding:0}.handsontable .htFiltersMenuCondition .htUIInput input,.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input{font-family:inherit;font-size:.75em;padding:4px;box-sizing:border-box;width:100%}.htUIMultipleSelect .ht_master .wtHolder{overflow:auto}.handsontable .htFiltersActive .changeType{border:1px solid #509272;color:#18804e;background-color:#d2e0d9}.handsontable .htUISelectAll{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUISelectAll{margin-right:0;margin-left:10px}.handsontable .htUIClearAll,.handsontable .htUISelectAll{display:inline-block}.handsontable .htUIClearAll a,.handsontable .htUISelectAll a{font-size:.75em}.handsontable .htUISelectionControls{text-align:right}[dir=rtl].handsontable .htUISelectionControls{text-align:left}.handsontable .htCheckboxRendererInput{display:inline-block;margin:0 5px 0 0;vertical-align:middle;height:1em}[dir=rtl].handsontable .htCheckboxRendererInput{margin-left:5px;margin-right:0}.handsontable .htUIInput{padding:3px 0 7px;position:relative;text-align:center}.handsontable .htUIInput input{border-radius:2px;border:1px solid #d2d1d1}.handsontable .htUIInputIcon{position:absolute}.handsontable .htUIInput.htUIButton{cursor:pointer;display:inline-block}.handsontable .htUIInput.htUIButton input{background-color:#eee;color:#000;cursor:pointer;font-family:inherit;font-size:.75em;font-weight:700;height:19px;min-width:64px}.handsontable .htUIInput.htUIButton input:hover{border-color:#b9b9b9}.handsontable .htUIInput.htUIButtonOK{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUIInput.htUIButtonOK{margin-right:0;margin-left:10px}.handsontable .htUIInput.htUIButtonOK input{background-color:#0f9d58;border-color:#18804e;color:#fff}.handsontable .htUIInput.htUIButtonOK input:focus-visible{background-color:#92dd8d;border-color:#7cb878;color:#000}.handsontable .htUIInput.htUIButtonOK input:hover{border-color:#1a6f46}.handsontable .htUISelect{cursor:pointer;margin-bottom:7px;position:relative}.handsontable .htUISelectCaption{background-color:#e8e8e8;border-radius:2px;border:1px solid #d2d1d1;font-family:inherit;font-size:.75em;font-weight:700;padding:3px 20px 3px 10px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.handsontable .htUISelectCaption:hover{background-color:#e8e8e8;border:1px solid #b9b9b9}.handsontable .htUISelectDropdown:after{content:\"\\25b2\";font-size:7px;position:absolute;right:10px;top:0}.handsontable .htUISelectDropdown:before{content:\"\\25bc\";font-size:7px;position:absolute;right:10px;top:8px}.handsontable .htUIMultipleSelect .handsontable .htCore{border:none}.handsontable .htUIMultipleSelect .handsontable .htCore td:hover{background-color:#f5f5f5}.handsontable .htUIMultipleSelectSearch input{border-radius:2px;border:1px solid #d2d1d1;padding:3px}.handsontable .htUIRadio{display:inline-block;margin-left:0;margin-right:5px;height:100%}[dir=rtl].handsontable .htUIRadio{margin-right:0;margin-left:5px}.handsontable .htUIRadio:last-child{margin-right:0}.handsontable .htUIRadio>input[type=radio]{margin-left:0;margin-right:.5ex}[dir=rtl].handsontable .htUIRadio>input[type=radio]{margin-right:0;margin-left:.5ex}.handsontable .htUIRadio label{vertical-align:middle}.handsontable .htFiltersMenuOperators{padding-bottom:5px}.handsontable th.beforeHiddenColumn{position:relative}.handsontable th.beforeHiddenColumn:after,.handsontable th.afterHiddenColumn:before{color:#bbb;position:absolute;top:50%;font-size:5pt;transform:translateY(-50%)}.handsontable th.afterHiddenColumn{position:relative}.handsontable[dir=ltr] th.afterHiddenColumn div.htLeft{margin-left:10px}.handsontable[dir=ltr] th.beforeHiddenColumn div.htRight,.handsontable[dir=rtl] th.afterHiddenColumn div.htRight{margin-right:10px}.handsontable[dir=rtl] th.beforeHiddenColumn div.htLeft{margin-left:10px}.handsontable th.beforeHiddenColumn:after{right:1px;content:\"\\25c0\"}[dir=rtl].handsontable th.beforeHiddenColumn:after{right:initial;left:1px;content:\"\\25b6\"}.handsontable th.afterHiddenColumn:before{left:1px;content:\"\\25b6\"}[dir=rtl].handsontable th.afterHiddenColumn:before{right:1px;left:initial;content:\"\\25c0\"}.handsontable th.beforeHiddenRow:before,.handsontable th.afterHiddenRow:after{color:#bbb;font-size:6pt;line-height:6pt;position:absolute;left:2px}.handsontable th.beforeHiddenRow,.handsontable th.afterHiddenRow{position:relative}.handsontable th.beforeHiddenRow:before{content:\"\\25b2\";bottom:2px}.handsontable th.afterHiddenRow:after{content:\"\\25bc\";top:2px}.handsontable.ht__selection--rows tbody th.beforeHiddenRow.ht__highlight:before,.handsontable.ht__selection--rows tbody th.afterHiddenRow.ht__highlight:after{color:#eee}.handsontable td.afterHiddenRow.firstVisibleRow,.handsontable th.afterHiddenRow.firstVisibleRow{border-top:1px solid #CCC}.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_top_inline_start_corner th:nth-child(2),.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_inline_start td:first-of-type{border-left:0 none}.handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualColumnMove.on-moving--columns *,.handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer{display:none}.handsontable .ht__manualColumnMove--guideline,.handsontable .ht__manualColumnMove--backlight{position:absolute;height:100%;display:none}.handsontable .ht__manualColumnMove--guideline{background:#757575;width:2px;top:0;margin-inline-start:-1px;margin-inline-end:0;z-index:205}.handsontable .ht__manualColumnMove--backlight{background:#343434;background:#34343440;display:none;z-index:205;pointer-events:none}.handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline,.handsontable.on-moving--columns .ht__manualColumnMove--backlight{display:block}.handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualRowMove.on-moving--rows *,.handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer{display:none}.handsontable .ht__manualRowMove--guideline,.handsontable .ht__manualRowMove--backlight{position:absolute;width:100%;display:none}.handsontable .ht__manualRowMove--guideline{background:#757575;height:2px;left:0;margin-top:-1px;z-index:205}.handsontable .ht__manualRowMove--backlight{background:#343434;background:#34343440;display:none;z-index:205;pointer-events:none}.handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline,.handsontable.on-moving--rows .ht__manualRowMove--backlight{display:block}.handsontable tbody td[rowspan][class*=area][class*=highlight]:not([class*=fullySelectedMergedCell]):before{opacity:0}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-multiple]:before{opacity:.1}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-0]:before{opacity:.1}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-1]:before{opacity:.2}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-2]:before{opacity:.27}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-3]:before{opacity:.35}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-4]:before{opacity:.41}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-5]:before{opacity:.47}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-6]:before{opacity:.54}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-7]:before{opacity:.58}.handsontable[dir=ltr] div.htRight span[class*=sort-]{margin-right:15px;margin-left:-15px}.handsontable[dir=rtl] div.htLeft span[class*=sort-]{margin-left:15px;margin-right:-15px}.handsontable[dir=ltr] div.htRight span[class*=sort-]:only-child{margin-right:20px;margin-left:-20px}.handsontable[dir=rtl] div.htLeft span[class*=sort-]:only-child{margin-left:20px;margin-right:-20px}.handsontable span.colHeader.columnSorting:after{top:50%;margin-top:-2px;position:absolute;right:-15px;left:unset;padding-left:5px;padding-right:unset;font-size:8px;height:8px;line-height:1.1}[dir=rtl].handsontable span.colHeader.columnSorting:after{left:-15px;right:unset;padding-right:5px;padding-left:unset}.handsontable span.colHeader.columnSorting[class^=sort-]:after,.handsontable span.colHeader.columnSorting[class*=\" sort-\"]:after{content:\"+\"}.handsontable span.colHeader.columnSorting.sort-1:after{content:\"1\"}.handsontable span.colHeader.columnSorting.sort-2:after{content:\"2\"}.handsontable span.colHeader.columnSorting.sort-3:after{content:\"3\"}.handsontable span.colHeader.columnSorting.sort-4:after{content:\"4\"}.handsontable span.colHeader.columnSorting.sort-5:after{content:\"5\"}.handsontable span.colHeader.columnSorting.sort-6:after{content:\"6\"}.handsontable span.colHeader.columnSorting.sort-7:after{content:\"7\"}.htGhostTable th div button.changeType+span.colHeader.columnSorting:not(.indicatorDisabled){padding-right:5px}.handsontable thead th.hiddenHeader:not(:first-of-type){display:none}thead th.hiddenHeaderText .colHeader{opacity:0}.handsontable th.ht_nestingLevels{text-align:left;padding-left:7px}[dir=rtl].handsontable th.ht_nestingLevels{text-align:right;padding-right:7px}.handsontable th div.ht_nestingLevels{display:inline-block;position:absolute;left:11px;right:unset}[dir=rtl].handsontable th div.ht_nestingLevels{right:11px;left:unset}.handsontable.innerBorderInlineStart th div.ht_nestingLevels,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{right:10px;left:unset}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingLevels,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{left:10px;right:unset}.handsontable th span.ht_nestingLevel{display:inline-block}.handsontable th span.ht_nestingLevel_empty{display:inline-block;width:10px;height:1px;float:left}[dir=rtl].handsontable th span.ht_nestingLevel_empty{float:right}.handsontable th span.ht_nestingLevel:after{content:\"\\2510\";font-size:9px;display:inline-block;position:relative;bottom:3px}.handsontable th div.ht_nestingButton{display:inline-block;position:absolute;right:-2px;left:unset;cursor:pointer}[dir=rtl].handsontable th div.ht_nestingButton{left:-2px;right:unset}.handsontable th div.ht_nestingButton.ht_nestingExpand:after{content:\"+\"}.handsontable th div.ht_nestingButton.ht_nestingCollapse:after{content:\"-\"}.handsontable.innerBorderInlineStart th div.ht_nestingButton,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{right:0;left:unset}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingButton,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{left:0;right:unset}.ht-root-wrapper{position:relative;display:flex;flex-direction:column;height:100%}.ht-grid{flex:1 1 auto;min-height:0}.ht-dialog{position:absolute;top:0;left:0;display:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;width:100%;height:100%;z-index:1060;opacity:0;overflow-y:auto;border:1px solid #ccc;box-sizing:border-box!important}.ht-dialog[dir=rtl]{left:auto;right:0}.ht-dialog:focus{border:1px solid #4b89ff;outline:none}.ht-dialog:has(.htFocusCatcher:focus){border:1px solid #4b89ff;outline:none}.ht-dialog *{box-sizing:border-box!important}.ht-dialog--background-solid{background-color:#fff}.ht-dialog--background-semi-transparent{background-color:#ffffff80}.ht-dialog--animation{transition:opacity .15s ease-in-out}.ht-dialog--show{opacity:1}.ht-dialog__content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;min-height:100%;padding:16px}.ht-dialog__content-wrapper:focus{border:1px solid #4b89ff;outline:none}.ht-dialog__content{position:relative;padding:8px;display:flex;gap:8px;max-width:480px;color:#222}.ht-dialog__content--background{box-shadow:0 8px 16px #00000014;background-color:#f7f7f9}.ht-dialog--confirm .ht-dialog__content-wrapper{text-align:center}.ht-dialog--confirm .ht-dialog__content-wrapper-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;max-width:480px}.ht-dialog--confirm .ht-dialog__content-wrapper-inner--background{box-shadow:0 8px 16px #00000014;background-color:#f7f7f9}.ht-dialog--confirm .ht-dialog__content{display:flex;flex-direction:column;align-items:center;justify-content:center}.ht-dialog--confirm .ht-dialog__content:has(.ht-dialog__buttons){gap:4px}.ht-dialog--confirm .ht-dialog__title{margin:0;font-size:16px;font-weight:400;line-height:24px}.ht-dialog--confirm .ht-dialog__description{margin:0;color:#222;font-size:12px;font-weight:400;line-height:16px}.ht-dialog--confirm .ht-dialog__buttons{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px}.ht-root-wrapper .ht-pagination{color:#222;background:#f0f0f0;border:1px solid #ccc;border-top-color:transparent;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:12px;font-weight:400;box-sizing:border-box;overflow-x:auto}.ht-root-wrapper .ht-pagination__inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding-inline:8px;padding-block:4px;min-width:230px}.ht-root-wrapper .ht-pagination--bordered{border-top-color:#ccc}.ht-root-wrapper .ht-page-size-section{display:flex;align-items:center;gap:8px}.ht-root-wrapper .ht-page-size-section span{white-space:nowrap}.ht-root-wrapper .ht-page-size-section__select-wrapper{position:relative;border-radius:2px;border:1px solid #ccc}.ht-root-wrapper .ht-page-size-section__select-wrapper select{padding-inline-start:8px;padding-inline-end:8px;padding-top:4px;padding-bottom:4px;border-radius:2px;color:#222;background-color:#f0f0f0;border:none;-webkit-appearance:none;font-size:inherit;cursor:pointer}.ht-root-wrapper .ht-page-size-section__select-wrapper select:disabled{opacity:.4;cursor:default}.ht-root-wrapper .ht-page-size-section__select-wrapper select:hover:not(:disabled){background-color:#e0e0e0}.ht-root-wrapper .ht-page-size-section__select-wrapper select:focus{background-color:#e0e0e0;outline:1px solid #4b89ff}.ht-root-wrapper .ht-page-counter-section{margin-inline-end:auto}.ht-root-wrapper .ht-page-navigation-section{display:flex;align-items:center;gap:8px}.ht-root-wrapper .ht-page-navigation-section button{font-size:inherit;color:#222;background-color:transparent;border:none;padding:4px;border-radius:2px;cursor:pointer}.ht-root-wrapper .ht-page-navigation-section button:before{display:block;width:16px;height:16px;line-height:16px;text-align:center}.ht-root-wrapper .ht-page-navigation-section button:disabled{opacity:.4;cursor:default}.ht-root-wrapper .ht-page-navigation-section button:hover:not(:disabled){background-color:#e0e0e0}.ht-root-wrapper .ht-page-navigation-section button:focus{outline:1px solid #4b89ff}.ht-root-wrapper .ht-page-navigation-section .ht-page-first:before{content:\"\\21a4\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-first:before{content:\"\\21a6\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-prev:before{content:\"\\21a2\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-prev:before{content:\"\\21a3\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-next:before{content:\"\\21a3\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-next:before{content:\"\\21a2\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-last:before{content:\"\\21a6\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-last:before{content:\"\\21a4\"}.ht-root-wrapper .ht-page-navigation-section span{white-space:nowrap}.ht-loading__icon-svg{display:block;width:16px;height:16px;color:#5292f7;animation:ht-loading-spin 1s linear infinite;transform-origin:50% 50%}.ht-loading__content{display:flex;align-items:center;gap:8px}.ht-loading__title{margin:0;font-size:13px;font-weight:400;line-height:18px}.ht-loading__description{margin:0;color:#222;font-size:12px;line-height:16px;font-weight:400}@keyframes ht-loading-spin{to{transform:rotate(360deg)}}.ht-empty-data-state{display:none;position:absolute;width:100%;left:0;z-index:999;overflow-y:auto;border:1px solid #ccc;box-sizing:border-box;background-color:#fff}.ht-empty-data-state *{box-sizing:border-box!important}.ht-empty-data-state__content-wrapper{display:flex;align-items:center;justify-content:center;text-align:center;width:100%;min-height:100%;padding:16px}.ht-empty-data-state__content-wrapper-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:480px;padding:16px}.ht-empty-data-state__content-wrapper-inner:focus{outline:none;box-shadow:0 0 0 1px #4b89ff}.ht-empty-data-state__content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.ht-empty-data-state__title{margin:0;font-size:16px;font-weight:400;line-height:24px}.ht-empty-data-state__description{margin:0;color:#222;font-size:12px;line-height:16px;font-weight:400}.ht-empty-data-state__buttons{display:flex;justify-content:center;flex-direction:row;flex-wrap:wrap;gap:8px}.ht-empty-data-state__buttons--has-buttons{margin-top:8px}.ht-empty-data-state--disable-top-border{border-top-width:0}.ht-empty-data-state--disable-inline-border{border-inline-start-width:0}.ht-empty-data-state--disable-bottom-border,.ht-empty-data-state:has(~.ht-pagination){border-bottom-width:0}.pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.pika-single:before,.pika-single:after{content:\" \";display:table}.pika-single:after{clear:both}.pika-single.is-hidden{display:none}.pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px #00000080}.pika-lendar{float:left;width:240px;margin:8px}.pika-title{position:relative;text-align:center}.pika-label{display:inline-block;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:700;background-color:#fff}.pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;opacity:0}.pika-prev,.pika-next{display:block;cursor:pointer;position:relative;outline:none;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5}.pika-prev:hover,.pika-next:hover{opacity:1}.pika-prev,.is-rtl .pika-next{float:left;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==)}.pika-next,.is-rtl .pika-prev{float:right;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=)}.pika-prev.is-disabled,.pika-next.is-disabled{cursor:default;opacity:.2}.pika-select{display:inline-block}.pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.pika-table th,.pika-table td{width:14.285714285714286%;padding:0}.pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:700;text-align:center}.pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:none;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:center;background:#f5f5f5;height:initial}.pika-week{font-size:11px;color:#999}.is-today .pika-button{color:#3af;font-weight:700}.is-selected .pika-button,.has-event .pika-button{color:#fff;font-weight:700;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.has-event .pika-button{background:#005da9;box-shadow:inset 0 1px 3px #0076c9}.is-disabled .pika-button,.is-inrange .pika-button{background:#d5e9f7}.is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.is-disabled .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.is-outside-current-month .pika-button{color:#999;opacity:.3}.is-selection-disabled{pointer-events:none;cursor:default}.pika-button:hover,.pika-row.pick-whole-week:hover .pika-button{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.pika-table abbr{border-bottom:none;cursor:help}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}.document-viewer-container{height:100%;min-height:0;width:100%;display:flex;flex-direction:column;padding:20px;box-sizing:border-box;background-color:#f5f5f5;overflow:hidden}.loader,.error-message{text-align:center;padding:40px 20px;font-family:Arial,sans-serif;background-color:#fff;border-radius:4px;margin:20px;box-shadow:0 2px 4px #0000001a}.error-message{color:#d32f2f;background-color:#ffebee;border:1px solid #ffcdd2}.text-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;margin:10px;overflow:auto;border:1px solid #ddd;box-shadow:0 2px 4px #0000001a;font-family:Courier New,monospace}.text-viewer pre{margin:0;font-size:14px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.word-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;box-shadow:0 2px 10px #0000001a;margin:10px;overflow:auto;font-family:Calibri,Arial,sans-serif}.word-viewer h1,.word-viewer h2,.word-viewer h3{color:#333}.word-viewer p{line-height:1.6;margin-bottom:15px}.presentation-viewer{flex:1 1 auto;min-height:0;background-color:#f5f5f5;padding:20px;border-radius:4px;margin:10px;display:flex;justify-content:center;align-items:center}.presentation-placeholder{text-align:center;color:#666;font-style:italic;padding:50px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}::ng-deep ngx-extended-pdf-viewer{flex:1 1 auto;min-height:0;height:auto;width:calc(100% - 20px);margin:10px;border:1px solid #ddd;border-radius:4px;display:block}.excel-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;box-shadow:0 2px 10px #0000001a;margin:10px;overflow:auto}.excel-sheet{margin-bottom:30px;background:#fff}.excel-sheet h3{background-color:#f3f2f1;padding:12px 16px;margin:0;border-radius:4px 4px 0 0;font-size:14px;font-weight:600;color:#333;border-bottom:1px solid #e1dfdd}.excel-container{overflow-x:auto;overflow-y:auto;border:1px solid #e1dfdd;border-top:none;border-radius:0 0 4px 4px;max-height:calc(100% - 50px)}.excel-table{border-collapse:collapse;width:100%;font-family:Segoe UI,Calibri,Arial,sans-serif;font-size:13px;background:#fff}.excel-table td,.excel-table th{border:1px solid #e1dfdd;padding:8px 12px;white-space:nowrap;color:#333}.excel-table th{background-color:#f2f2f2;font-weight:700}.excel-table tr:first-child td{background-color:#f3f2f1;font-weight:600;color:#333;border-bottom:2px solid #8a8886}.excel-table td.number-cell,.excel-table td.percentage-cell,.excel-table td[data-format*=\"%\"]{text-align:right}.excel-table td.percentage-cell{color:#107c41}.excel-table td.text-cell{text-align:left}.excel-table tr:nth-child(2n) td{background-color:#faf9f8}.excel-table tr:hover td{background-color:#edf3fa}.excel-table td.selected{background-color:#cce8ff;border:2px solid #0078d4}.excel-viewer-container{flex:1 1 auto;min-height:0;width:calc(100% - 20px);margin:10px;border-radius:4px;overflow:hidden;box-shadow:0 2px 10px #0000001a;background:#fff;display:flex;flex-direction:column}.excel-sheet-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:12px 10px 0 8px;background:#f3f2f1;border-bottom:1px solid #e1dfdd;min-height:44px}.excel-sheet-tab{padding:8px 16px;border:1px solid #e1dfdd;border-bottom:none;border-radius:4px 4px 0 0;font-size:13px;font-family:Segoe UI,Arial,sans-serif;color:#333;cursor:pointer;transition:background .15s,border-color .15s}.excel-sheet-tab:hover{background:#edebe9;border-bottom:1px solid #000000}.excel-sheet-tab.active{background:#fff;font-weight:600;border-bottom:1px solid #000000;margin-bottom:2px;z-index:1}.excel-container-custom{width:100%;overflow-x:auto;overflow-y:auto}::ng-deep .handsontable{font-family:Segoe UI,Arial,sans-serif;font-size:13px;overflow:hidden!important}::ng-deep .wtHolder{width:100%!important;height:100%!important}::ng-deep .handsontable td{border:1px solid #e1dfdd;padding:8px 12px;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;word-break:break-word;line-height:1.4;vertical-align:top;max-width:300px;min-width:80px;margin:0!important}::ng-deep .handsontable td:hover{overflow:visible;background-color:#edf3fa;position:relative;z-index:10;box-shadow:0 2px 8px #00000026}::ng-deep .handsontable .htRight{text-align:right;font-family:Segoe UI,Consolas,monospace}::ng-deep .handsontable .htLeft{text-align:left}::ng-deep .handsontable .htCenter{text-align:center}::ng-deep .handsontable tr:nth-child(2n) td{background-color:#faf9f8}::ng-deep .handsontable tr:hover td{background-color:#edf3fa}::ng-deep .handsontable .current-row td{background-color:#e5f3ff}::ng-deep .handsontable .manualColumnResizer{background-color:#34a9db;width:5px;cursor:col-resize;opacity:0;transition:opacity .2s}::ng-deep .handsontable .manualColumnResizer:hover,::ng-deep .handsontable .manualColumnResizer.active{opacity:1;background-color:#0078d4}::ng-deep .handsontable .manualRowResizer{background-color:#34a9db;height:5px;cursor:row-resize;opacity:0;transition:opacity .2s}::ng-deep .handsontable .manualRowResizer:hover,::ng-deep .handsontable .manualRowResizer.active{opacity:1;background-color:#0078d4}::ng-deep .wtHolder::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::ng-deep .wtHolder::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::ng-deep .wtHolder::-webkit-scrollbar-thumb:hover{background:#a8a8a8}::ng-deep .htContextMenu table{font-family:Segoe UI,Arial,sans-serif;font-size:12px}::ng-deep .htContextMenu .htItemWrapper{padding:6px 12px}::ng-deep .htContextMenu .current{background-color:#e5f3ff}@media(max-width:768px){.document-viewer-container{padding:10px}.excel-viewer-container{width:calc(100% - 10px);margin:5px}.excel-viewer,.image-viewer,.text-viewer,.word-viewer,.presentation-viewer{margin:5px;padding:10px}::ng-deep .handsontable td{font-size:11px;padding:4px 6px}::ng-deep .handsontable th{font-size:11px;padding:6px}::ng-deep ngx-extended-pdf-viewer{width:calc(100% - 10px);margin:5px}}.excel-viewer-container{overflow:hidden;position:relative}.excel-container-custom{overflow:auto;position:relative;height:100%;width:100%}.image-viewer{flex:1 1 auto;width:100%;height:100%;display:flex;flex-direction:column;background-color:#fff}.image-toolbar{padding:10px;background-color:#fff;border-bottom:1px solid #ddd;display:flex;gap:8px;align-items:center;z-index:10}.image-toolbar button{padding:5px 10px;border:1px solid #ccc;background-color:#fff;border-radius:4px;cursor:pointer;font-size:16px;min-width:36px}.image-toolbar button:hover{background-color:#f0f0f0}.image-container{flex:1;overflow:hidden;position:relative;display:flex;justify-content:center;align-items:center;background-color:#fff}.responsive-image{max-width:100%;max-height:100%;object-fit:contain;transition:transform .1s ease;transform-origin:center center;will-change:transform;-webkit-user-select:none;user-select:none}::ng-deep .handsontable .ht_clone_top,::ng-deep .handsontable .ht_clone_top_left_corner,::ng-deep .handsontable .ht_clone_left{display:none!important}\n/*! Bundled license information:\n\nhandsontable/dist/handsontable.full.css:\n (*!\n * Copyright (c) HANDSONCODE sp. z o. o.\n *\n * HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in\n * Gdynia, Poland, at Aleja Zwyciestwa 96-98, registered by the District Court in Gdansk under number\n * 538651, EU tax ID number: PL5862294002, share capital: PLN 62,800.00.\n *\n * This software is protected by applicable copyright laws, including international treaties, and dual-\n * licensed - depending on whether your use for commercial purposes, meaning intended for or\n * resulting in commercial advantage or monetary compensation, or not.\n *\n * If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing\n * the suitability, performance, and usefulness of this software outside the production environment,\n * you agree to be bound by the terms included in the \"handsontable-non-commercial-license.pdf\" file.\n *\n * Your use of this software for commercial purposes is subject to the terms included in an applicable\n * license agreement.\n *\n * In any case, you must not make any such use of this software as to develop software which may be\n * considered competitive with this software.\n *\n * UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN \"AS IS\"\n * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO\n * LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,\n * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM\n * USE OR INABILITY TO USE THIS SOFTWARE.\n *\n * Version: 16.2.0\n * Release date: 25/11/2025 (built at 20/11/2025 13:27:05)\n *)\n (*!\n * Handsontable ContextMenu\n *)\n (*!\n * Handsontable DropdownMenu\n *)\n (*!\n * Handsontable Filters\n *)\n (*!\n * Handsontable HiddenRows\n *)\n (*!\n * Pikaday\n * Copyright \u00A9 2014 David Bushell | BSD & MIT license | https://dbushell.com/\n *)\n*/\n"] }]
|
|
649
|
-
}], ctorParameters: () => [{ type:
|
|
734
|
+
args: [{ selector: 'sgdea-document-viewer', standalone: true, imports: [CommonModule, NgxExtendedPdfViewerModule, HotTableModule], template: "<div *ngIf=\"loading()\" class=\"loader\">Cargando documento...</div>\n\n<div *ngIf=\"errorMessage() && !loading()\" class=\"error-message\">\n {{ errorMessage() }}\n</div>\n\n<div *ngIf=\"!loading() && !errorMessage()\" class=\"document-viewer-container\">\n\n <!-- PDF: altura expl\u00EDcita v\u00EDa host; \"auto\" suele dejar 0px en flex/modales -->\n <div\n class=\"pdf-viewer-host\"\n *ngIf=\"fileType() === 'pdf' && pdfSrc\"\n >\n <ngx-extended-pdf-viewer\n [src]=\"pdfSrc\"\n [height]=\"'100%'\"\n useBrowserLocale=\"false\"\n [showDownloadButton]=\"false\"\n [showPrintButton]=\"false\"\n [showOpenFileButton]=\"false\"\n [showSecondaryToolbarButton]=\"false\"\n [showFirstAndLastPageButtons]=\"false\"\n [showPagingButtons]=\"false\"\n [showZoomButtons]=\"true\"\n [showDrawEditor]=\"false\"\n [showTextEditor]=\"false\"\n [showStampEditor]=\"false\"\n [showHighlightEditor]=\"false\"\n >\n </ngx-extended-pdf-viewer>\n </div>\n\n <!-- Imagen -->\n<!-- Visor de im\u00E1genes con zoom y rotaci\u00F3n -->\n <div *ngIf=\"isImageType() && imageSrc\" class=\"image-viewer\">\n <!-- Barra de herramientas -->\n <div class=\"image-toolbar\">\n <button (click)=\"zoomIn()\" title=\"Acercar (Ctrl +)\">\u2795</button>\n <button (click)=\"zoomOut()\" title=\"Alejar (Ctrl -)\">\u2796</button>\n <!-- Separador -->\n <span class=\"separator\"></span>\n\n <!-- Botones de rotaci\u00F3n AHORA FUNCIONALES -->\n <button (click)=\"rotateLeft()\" title=\"Rotar izquierda (\u21BA)\">\u21BA</button>\n <button (click)=\"rotateRight()\" title=\"Rotar derecha (\u21BB)\">\u21BB</button>\n\n <!-- Informaci\u00F3n -->\n <span class=\"zoom-info\">{{ zoomLevel() }}%</span>\n <span class=\"rotation-info\" *ngIf=\"rotation() !== 0\">\n {{ rotation() }}\u00B0\n </span>\n\n <span class=\"image-dimensions\" *ngIf=\"imageDimensions.width\">\n {{ imageDimensions.width }} x {{ imageDimensions.height }}\n </span>\n </div>\n\n <!-- Contenedor de la imagen -->\n <div\n class=\"image-container\" \n #imageContainer \n (wheel)=\"onMouseWheel($event)\"\n >\n <img\n #mainImage\n [src]=\"imageSrc\"\n [alt]=\"fileName()\"\n [style.transform]=\"getImageTransform()\"\n [style.cursor]=\"getCursorStyle()\"\n (load)=\"onImageLoad()\"\n (mousedown)=\"startDrag($event)\"\n (mousemove)=\"onDrag($event)\"\n (mouseup)=\"stopDrag()\"\n (mouseleave)=\"stopDrag()\"\n class=\"zoomable-image\"\n />\n </div>\n\n <!-- Instrucciones -->\n <div class=\"image-footer\" *ngIf=\"zoomLevel() > 100\">\n <small>Arrastra para mover la imagen</small>\n </div>\n </div>\n <!-- Excel -->\n <div *ngIf=\"isExcelType()\" class=\"excel-viewer-container\">\n\n <!-- Tabs -->\n <div *ngIf=\"excelSheetNames.length > 1\" class=\"excel-sheet-tabs\">\n <button\n *ngFor=\"let sheet of excelSheetNames; let i = index\"\n type=\"button\"\n class=\"excel-sheet-tab\"\n [class.active]=\"excelCurrentSheetIndex() === i\"\n (click)=\"selectExcelSheet(i)\"\n >\n {{ sheet }}\n </button>\n </div>\n\n <hot-table\n *ngIf=\"showExcelViewer\"\n #hotTable\n [settings]=\"excelSettings\"\n [data]=\"excelData\"\n [colHeaders]=\"excelColumnHeaders\"\n [rowHeaders]=\"true\"\n [width]=\"'100%'\"\n [height]=\"'100%'\"\n licenseKey=\"non-commercial-and-evaluation\"\n [columns]=\"excelColumns\"\n >\n </hot-table>\n\n <div *ngIf=\"!showExcelViewer\" class=\"loader\">\n Cargando hoja...\n </div>\n\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.handsontable .table th,.handsontable .table td{border-top:none}.handsontable tr{background:#fff}.handsontable td{background-color:inherit}.handsontable .table caption+thead tr:first-child th,.handsontable .table caption+thead tr:first-child td,.handsontable .table colgroup+thead tr:first-child th,.handsontable .table colgroup+thead tr:first-child td,.handsontable .table thead:first-child tr:first-child th,.handsontable .table thead:first-child tr:first-child td{border-top:1px solid #CCCCCC}.handsontable .table-bordered{border:0;border-collapse:separate}.handsontable .table-bordered th,.handsontable .table-bordered td{border-left:none}.handsontable .table-bordered th:first-child,.handsontable .table-bordered td:first-child{border-left:1px solid #CCCCCC}.handsontable .table>tbody>tr>td,.handsontable .table>tbody>tr>th,.handsontable .table>tfoot>tr>td,.handsontable .table>tfoot>tr>th,.handsontable .table>thead>tr>td,.handsontable .table>thead>tr>th{line-height:21px;padding:0}.col-lg-1.handsontable,.col-lg-10.handsontable,.col-lg-11.handsontable,.col-lg-12.handsontable,.col-lg-2.handsontable,.col-lg-3.handsontable,.col-lg-4.handsontable,.col-lg-5.handsontable,.col-lg-6.handsontable,.col-lg-7.handsontable,.col-lg-8.handsontable,.col-lg-9.handsontable,.col-md-1.handsontable,.col-md-10.handsontable,.col-md-11.handsontable,.col-md-12.handsontable,.col-md-2.handsontable,.col-md-3.handsontable,.col-md-4.handsontable,.col-md-5.handsontable,.col-md-6.handsontable,.col-md-7.handsontable,.col-md-8.handsontable,.col-md-9.handsontable .col-sm-1.handsontable,.col-sm-10.handsontable,.col-sm-11.handsontable,.col-sm-12.handsontable,.col-sm-2.handsontable,.col-sm-3.handsontable,.col-sm-4.handsontable,.col-sm-5.handsontable,.col-sm-6.handsontable,.col-sm-7.handsontable,.col-sm-8.handsontable,.col-sm-9.handsontable .col-xs-1.handsontable,.col-xs-10.handsontable,.col-xs-11.handsontable,.col-xs-12.handsontable,.col-xs-2.handsontable,.col-xs-3.handsontable,.col-xs-4.handsontable,.col-xs-5.handsontable,.col-xs-6.handsontable,.col-xs-7.handsontable,.col-xs-8.handsontable,.col-xs-9.handsontable{padding-left:0;padding-right:0}.handsontable.ht-wrapper{height:100%;width:100%}.handsontable .table-striped>tbody>tr:nth-of-type(2n){background-color:#fff}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable .wtHider{position:relative;width:0}.handsontable .wtSpreader{position:relative;width:0;height:auto}.handsontable table,.handsontable tbody,.handsontable thead,.handsontable td,.handsontable th,.handsontable input,.handsontable textarea,.handsontable div{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:initial}.handsontable table.htCore{border-collapse:separate;border-spacing:0;margin:0;border-width:0;table-layout:fixed;width:0;outline-width:0;cursor:default;max-width:none;max-height:none}.handsontable col,.handsontable col.rowHeader{width:50px}.handsontable th,.handsontable td{border-top-width:0;border-left-width:0;border-right:1px solid #ccc;border-bottom:1px solid #ccc;height:22px;empty-cells:show;line-height:21px;padding:0 4px;background-color:#fff;vertical-align:top;overflow:hidden;outline:none;outline-width:0;white-space:pre-wrap}[dir=rtl].handsontable th,[dir=rtl].handsontable td{border-right-width:0;border-left:1px solid #ccc}.handsontable th:last-child{border-left:none;border-right:1px solid #ccc;border-bottom:1px solid #ccc}[dir=rtl].handsontable th:last-child{border-right:none;border-left:1px solid #ccc}.handsontable th:first-child,.handsontable .ht_clone_inline_start td:first-of-type,.handsontable .ht_clone_top_inline_start_corner td:first-of-type,.handsontable .ht_clone_bottom_inline_start_corner td:first-of-type,.handsontable.ht-wrapper:not(.htFirstDatasetColumnNotRendered) td:first-of-type{border-left:1px solid #ccc}[dir=rtl].handsontable th:first-child,[dir=rtl].handsontable.ht-wrapper:not(.htFirstDatasetColumnNotRendered) td:first-of-type{border-right:1px solid #ccc}.handsontable .ht_clone_top th:nth-child(2){border-left-width:0;border-right:1px solid #ccc}[dir=rtl].handsontable .ht_clone_top th:nth-child(2){border-right-width:0;border-left:1px solid #ccc}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable.htRowHeaders thead tr th:nth-child(2){border-right:1px solid #ccc}.handsontable tr:first-child th,.handsontable tr:first-child td{border-top:1px solid #ccc}.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-right-width:0;border-left:1px solid #ccc}[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns) thead tr th:first-child,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.htGhostTable) tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top):not(.htGhostTable) thead tr th:first-child{border-left-width:0;border-right:1px solid #ccc}.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr.lastChild th{border-bottom-width:0}.handsontable th{background-color:#f0f0f0;color:#222;text-align:center;font-weight:400;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#ccc}.handsontable thead th .relative{padding:2px 4px}.handsontable span.colHeader{display:inline-block;line-height:1.1}.handsontable .wtBorder{position:absolute;font-size:0}.handsontable .wtBorder.hidden{display:none!important}.handsontable .wtBorder:nth-child(1),.handsontable .wtBorder:nth-child(3){z-index:2}.handsontable .wtBorder:nth-child(2),.handsontable .wtBorder:nth-child(4){z-index:1}.handsontable .wtBorder.current{z-index:10}.handsontable .wtBorder.area{z-index:8}.handsontable .wtBorder.fill{z-index:6}.handsontable .wtBorder.corner{font-size:0;cursor:crosshair}.htBorders .wtBorder.ht-border-style-dashed-vertical{background-image:repeating-linear-gradient(to bottom,var(--ht-custom-border-color) 0 5px,transparent 0 10px)}.htBorders .wtBorder.ht-border-style-dashed-horizontal{background-image:repeating-linear-gradient(to right,var(--ht-custom-border-color) 0 5px,transparent 0 10px)}.htBorders .wtBorder.ht-border-style-dotted-horizontal{background-image:radial-gradient(circle,var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2),transparent 0);background-size:calc(var(--ht-custom-border-size) * 2) var(--ht-custom-border-size);background-repeat:repeat-x}.htBorders .wtBorder.ht-border-style-dotted-vertical{background-image:radial-gradient(circle,var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2),transparent 0);background-size:var(--ht-custom-border-size) calc(var(--ht-custom-border-size) * 2);background-repeat:repeat-y}.ht_clone_master{z-index:100}.ht_clone_inline_start{z-index:120}.ht_clone_bottom{z-index:130}.ht_clone_bottom_inline_start_corner{z-index:150}.ht_clone_top{z-index:160}.ht_clone_top_inline_start_corner{z-index:180}.handsontable col.hidden{width:0!important}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_master,.ht_clone_inline_start,.ht_clone_top,.ht_clone_bottom{overflow:hidden}.ht_master .wtHolder{overflow:auto}.handsontable .ht_master table.htCore>thead,.handsontable .ht_master table.htCore>tbody>tr>th,.handsontable .ht_clone_inline_start table.htCore>thead{visibility:hidden}.ht_clone_top .wtHolder,.ht_clone_inline_start .wtHolder,.ht_clone_bottom .wtHolder{overflow:hidden}.handsontable{position:relative;touch-action:manipulation;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;font-weight:400;color:#373737}.handsontable a{color:#104acc}.handsontable.htAutoSize{visibility:hidden;left:-99000px;position:absolute;top:-99000px}.handsontable td.htInvalid{background-color:#ffbeba!important}.handsontable td.htNoWrap{white-space:nowrap}.handsontable td.invisibleSelection,.handsontable th.invisibleSelection{outline:none}.handsontable td.invisibleSelection::selection,.handsontable th.invisibleSelection::selection{background:#fff0}.hot-display-license-info{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:400;color:#373737;padding:5px 0 3px;text-align:left}.hot-display-license-info a{color:#104acc;font-size:10px}.htFocusCatcher{position:absolute;z-index:-1;opacity:0;border:0;margin:0;padding:0;width:0;height:0}.handsontable .htTextEllipsis{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.handsontable .manualColumnResizer{position:absolute;top:0;cursor:col-resize;z-index:210;width:5px;height:25px}.handsontable .manualRowResizer{position:absolute;left:0;cursor:row-resize;z-index:210;height:5px;width:50px}.handsontable .manualColumnResizer:hover,.handsontable .manualColumnResizer.active,.handsontable .manualRowResizer:hover,.handsontable .manualRowResizer.active{background-color:#34a9db}.handsontable .manualColumnResizerGuide{position:absolute;right:unset;top:0;background-color:#34a9db;display:none;width:0;border-right:1px dashed #777;border-left:none;margin-left:5px;margin-right:unset}[dir=rtl].handsontable .manualColumnResizerGuide{left:unset;border-left:1px dashed #777;border-right:none;margin-right:5px;margin-left:unset}.handsontable .manualRowResizerGuide{position:absolute;left:0;bottom:0;background-color:#34a9db;display:none;height:0;border-bottom:1px dashed #777;margin-top:5px}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block;z-index:209}.handsontable td.area,.handsontable td.area-1,.handsontable td.area-2,.handsontable td.area-3,.handsontable td.area-4,.handsontable td.area-5,.handsontable td.area-6,.handsontable td.area-7{position:relative}.handsontable td.area:before,.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before{content:\"\";position:absolute;inset:0;background:#005eff}.handsontable td.area:before{opacity:.1}.handsontable td.area-1:before{opacity:.2}.handsontable td.area-2:before{opacity:.27}.handsontable td.area-3:before{opacity:.35}.handsontable td.area-4:before{opacity:.41}.handsontable td.area-5:before{opacity:.47}.handsontable td.area-6:before{opacity:.54}.handsontable td.area-7:before{opacity:.58}.handsontable tbody th.current,.handsontable thead th.current{box-shadow:inset 0 0 0 2px #4b89ff}.handsontable tbody th.ht__highlight,.handsontable thead th.ht__highlight{background-color:#dcdcdc}.handsontable tbody th.ht__active_highlight,.handsontable thead th.ht__active_highlight{background-color:#8eb0e7;color:#000}.handsontableInput{border:none;outline-width:0;margin:0;padding:1px 5px 0;font-family:inherit;line-height:21px;font-size:inherit;box-shadow:0 0 0 2px #5292f7 inset;resize:none;display:block;color:#000;border-radius:0;background-color:#fff;box-sizing:border-box!important}.handsontableInput:focus{outline:none}.handsontableInputHolder{position:absolute;top:0;left:0}.htSelectEditor{position:absolute;select{-webkit-appearance:menulist-button!important;width:100%;height:100%;border:2px solid #4b89ff;box-sizing:border-box!important}}.htSelectEditor select:focus{outline:none}.htSelectEditor .htAutocompleteArrow{display:none}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{content:\"\\25b6\";color:#777;position:absolute;right:5px;font-size:9px}[dir=rtl].handsontable .htSubmenu :after{content:\"\"}[dir=rtl].handsontable .htSubmenu :before{content:\"\\25c0\";color:#777;position:absolute;left:5px;font-size:9px}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable.listbox{border:1px solid #ccc;margin:0}.handsontable.listbox.autocompleteEditor,.handsontable.listbox.dropdownEditor{border-width:0}.handsontable.listbox .ht_master table{border-collapse:separate;background:#fff}.handsontable.listbox.autocompleteEditor .ht_master table,.handsontable.listbox.dropdownEditor .ht_master table{border:1px solid #ccc}.handsontable.listbox th,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th,.handsontable.listbox tr:first-child td,.handsontable.listbox td{border-color:transparent!important}.handsontable.listbox th,.handsontable.listbox td{white-space:nowrap;text-overflow:ellipsis}.handsontable.listbox td.htDimmed{cursor:default;color:inherit;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_editor_hidden{z-index:-1}.ht_editor_visible{z-index:200}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch}.handsontable.mobile .handsontableInput:focus{-webkit-box-shadow:0 0 0 2px #5292f7 inset;-moz-box-shadow:0 0 0 2px #5292f7 inset;box-shadow:0 0 0 2px #5292f7 inset;-webkit-appearance:none}.handsontable .topSelectionHandle,.handsontable .topSelectionHandle-HitArea,.handsontable .bottomSelectionHandle,.handsontable .bottomSelectionHandle-HitArea{left:-10000px;right:unset;top:-10000px;z-index:9999}[dir=rtl].handsontable .topSelectionHandle,[dir=rtl].handsontable .topSelectionHandle-HitArea,[dir=rtl].handsontable .bottomSelectionHandle,[dir=rtl].handsontable .bottomSelectionHandle-HitArea{right:-10000px;left:unset}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable .htAutocompleteArrow{float:right;font-size:10px;color:#bbb;cursor:default;width:16px;text-align:center}[dir=rtl].handsontable .htAutocompleteArrow{float:left}.handsontable td.htInvalid .htAutocompleteArrow{color:#555}.handsontable td.htInvalid .htAutocompleteArrow:hover{color:#1a1a1a}.handsontable td .htAutocompleteArrow:hover{color:#777}.handsontable td.area .htAutocompleteArrow{color:#d3d3d3}.handsontable .htCheckboxRendererInput.noValue{opacity:.5}.handsontable .htCheckboxRendererLabel{font-size:inherit;vertical-align:middle;cursor:pointer;display:inline-block}.handsontable .htCheckboxRendererLabel.fullWidth{width:100%}.handsontable .collapsibleIndicator{position:absolute;top:50%;transform:translateY(-50%);left:unset;right:5px;border:1px solid #A6A6A6;line-height:8px;color:#222;border-radius:10px;font-size:10px;width:10px;height:10px;cursor:pointer;-webkit-box-shadow:0 0 0 6px rgb(238,238,238);-moz-box-shadow:0 0 0 6px rgb(238,238,238);box-shadow:0 0 0 3px #eee;background:#eee;text-align:center}[dir=rtl].handsontable .collapsibleIndicator{right:unset;left:5px}.handsontable[dir=ltr] thead th:has(.collapsibleIndicator) div.htRight span.colHeader{margin-right:20px}.handsontable[dir=rtl] thead th:has(.collapsibleIndicator) div.htLeft span.colHeader{margin-left:20px}.handsontable .columnSorting{position:relative}.handsontable[dir=ltr] div.htRight span[class*=ascending],.handsontable[dir=ltr] div.htRight span[class*=descending]{margin-right:10px;margin-left:-10px}.handsontable[dir=rtl] div.htLeft span[class*=ascending],.handsontable[dir=rtl] div.htLeft span[class*=descending]{margin-left:10px;margin-right:-10px}.handsontable[dir=ltr] div.htRight span[class*=ascending]:only-child,.handsontable[dir=ltr] div.htRight span[class*=descending]:only-child{margin-right:15px;margin-left:-15px}.handsontable[dir=rtl] div.htLeft span[class*=ascending]:only-child,.handsontable[dir=rtl] div.htLeft span[class*=descending]:only-child{margin-left:15px;margin-right:-15px}.handsontable .columnSorting.sortAction:hover{text-decoration:underline;cursor:pointer}.handsontable span.colHeader.columnSorting:before{top:50%;margin-top:-6px;padding-left:8px;padding-right:0;position:absolute;right:-9px;left:unset;content:\"\";height:10px;width:5px;background-size:contain;background-repeat:no-repeat;background-position-x:right}[dir=rtl].handsontable span.colHeader.columnSorting:before{padding-right:8px;padding-left:0;left:-9px;right:unset;background-position-x:left}.handsontable span.colHeader.columnSorting.ascending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFNJREFUeAHtzjkSgCAUBNHPgsoy97+ulGXRqJE5L+xkxoYt2UdsLb5bqFINz+aLuuLn5rIu2RkO3fZpWENimNgiw6iBYRTPMLJjGFxQZ1hxxb/xBI1qC8k39CdKAAAAAElFTkSuQmCC)}.handsontable span.colHeader.columnSorting.descending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFJJREFUeAHtzjkSgCAQRNFmQYUZ7n9dKUvru0TmvPAn3br0QfgdZ5xx6x+rQn23GqTYnq1FDcnuzZIO2WmedVqIRVxgGKEyjNgYRjKGkZ1hFIZ3I70LyM0VtU8AAAAASUVORK5CYII=)}.htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled):before{content:\"*\";display:inline-block;position:relative;padding-right:20px}.handsontable.htGhostTable table thead th{border-bottom-width:0}.handsontable.htGhostTable table tbody tr th,.handsontable.htGhostTable table tbody tr td{border-top-width:0}.handsontable .htCommentCell{position:relative}.handsontable .htCommentCell:after{content:\"\";position:absolute;top:0;right:0;left:unset;border-left:6px solid transparent;border-right:none;border-top:6px solid black}[dir=rtl].handsontable .htCommentCell:after{left:0;right:unset;border-right:6px solid transparent;border-left:none}.htCommentsContainer .htComments{display:none;z-index:1059;position:absolute}.htCommentsContainer .htCommentTextArea{box-shadow:#0000001e 0 1px 3px,#0000003d 0 1px 2px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:none;border-left:3px solid #ccc;border-right:none;background-color:#fff;width:215px;height:90px;font-size:12px;padding:5px;outline:0!important;-webkit-appearance:none}[dir=rtl].htCommentsContainer .htCommentTextArea{border-right:3px solid #ccc;border-left:none}.htCommentsContainer .htCommentTextArea:focus{box-shadow:#0000001e 0 1px 3px,#0000003d 0 1px 2px,inset 0 0 0 1px #5292f7;border-left:3px solid #5292f7;border-right:none}[dir=rtl].htCommentsContainer .htCommentTextArea:focus{border-right:3px solid #5292f7;border-left:none}.htContextMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_bottom,.htContextMenu .ht_clone_inline_start,.htContextMenu .ht_clone_top_inline_start_corner,.htContextMenu .ht_clone_bottom_inline_start_corner{display:none}.htContextMenu .ht_master table.htCore{border-color:#ccc;border-style:solid;border-top-width:1px;border-bottom-width:2px;border-left-width:1px;border-right-width:2px}[dir=rtl].htContextMenu .ht_master table.htCore{border-right-width:1px;border-left-width:2px}.htContextMenu.handsontable:focus{outline:none}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htContextMenu table tbody tr td:first-child{border-top-width:0;border-bottom-width:0;border-left-width:0;border-right-width:0}[dir=rtl].htContextMenu table tbody tr td:first-child{border-right-width:0;border-left-width:0}.htContextMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htContextMenu table tbody tr td.current{background:#f3f3f3}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0;cursor:default}.htContextMenu table tbody tr td.htDisabled{color:#999;cursor:default}.htContextMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htContextMenu table tbody tr.htHidden{display:none}.htContextMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:6px}[dir=rtl].htContextMenu table tbody tr td .htItemWrapper{margin-right:10px;margin-left:6px}.htContextMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px;right:0}[dir=rtl].htContextMenu table tbody tr td div span.selected{right:4px;left:0}.htContextMenu .ht_master .wtHolder{overflow:hidden}textarea.HandsontableCopyPaste{position:fixed!important;top:0!important;right:100%!important;overflow:hidden;opacity:0;outline:0 none!important}.handsontable .changeType{background:#eee;border-radius:2px;border:1px solid #bbb;color:#bbb;font-size:9px;line-height:9px;padding:2px;margin:3px 1px 0 5px;float:right}[dir=rtl].handsontable .changeType{float:left}.handsontable[dir=rtl] .changeType{margin:3px 5px 0 1px}.handsontable .changeType:before{content:\"\\25bc \"}.handsontable .changeType:hover{border:1px solid #777;color:#777;cursor:pointer}.htDropdownMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htDropdownMenu .ht_clone_top,.htDropdownMenu .ht_clone_bottom,.htDropdownMenu .ht_clone_inline_start,.htDropdownMenu .ht_clone_top_inline_start_corner,.htDropdownMenu .ht_clone_bottom_inline_start_corner{display:none}.htDropdownMenu table.htCore{border-color:#ccc;border-style:solid;border-top-width:1px;border-bottom-width:2px;border-left-width:1px;border-right-width:2px}[dir=rtl].htDropdownMenu table.htCore{border-right-width:1px;border-left-width:2px}.htDropdownMenu.handsontable:focus{outline:none}.htDropdownMenu .wtBorder{visibility:hidden}.htDropdownMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htDropdownMenu table tbody tr td:first-child{border-top-width:0;border-right-width:0;border-bottom-width:0;border-left-width:0}[dir=rtl].htDropdownMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htDropdownMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htDropdownMenu table tbody tr td.current{background:#e9e9e9}.htDropdownMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0;cursor:default}.htDropdownMenu table tbody tr td.htDisabled{color:#999}.htDropdownMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htDropdownMenu:not(.htGhostTable) table tbody tr.htHidden{display:none}.htDropdownMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}[dir=rtl].htDropdownMenu table tbody tr td .htItemWrapper{margin-right:10px;margin-left:10px}.htDropdownMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px;right:0}[dir=rtl].htDropdownMenu table tbody tr td div span.selected{right:4px;left:0}.htDropdownMenu .ht_master .wtHolder{overflow:hidden}.htFiltersConditionsMenu:not(.htGhostTable){display:none;position:absolute;z-index:1070}.htFiltersConditionsMenu .ht_clone_top,.htFiltersConditionsMenu .ht_clone_bottom,.htFiltersConditionsMenu .ht_clone_inline_start,.htFiltersConditionsMenu .ht_clone_top_inline_start_corner,.htFiltersConditionsMenu .ht_clone_bottom_inline_start_corner{display:none}.htFiltersConditionsMenu table.htCore{border:1px solid #bbb;border-bottom-width:2px;border-right-width:2px}.htFiltersConditionsMenu .wtBorder{visibility:hidden}.htFiltersConditionsMenu table tbody tr td{background:#fff;border-width:0;padding:4px 6px 0;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.htFiltersConditionsMenu table tbody tr td:first-child{border-top-width:0;border-right-width:0;border-bottom-width:0;border-left-width:0}[dir=rtl].htFiltersConditionsMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htFiltersConditionsMenu table tbody tr td.htDimmed{font-style:normal;color:#323232}.htFiltersConditionsMenu table tbody tr td.current{background:#e9e9e9}.htFiltersConditionsMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0}.htFiltersConditionsMenu table tbody tr td.htDisabled{color:#999}.htFiltersConditionsMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htFiltersConditionsMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}.htFiltersConditionsMenu table tbody tr td div span.selected{margin-top:-2px;position:absolute;left:4px}.htFiltersConditionsMenu .ht_master .wtHolder{overflow:hidden}.handsontable .htMenuFiltering{border-bottom:1px dotted #ccc;height:135px;overflow:hidden}.handsontable .ht_master table td.htCustomMenuRenderer{background-color:#fff;cursor:auto}.handsontable .htFiltersMenuLabel{font-size:.75em}.handsontable .htFiltersMenuActionBar{text-align:center;padding-top:10px;padding-bottom:3px}.handsontable .htFiltersMenuCondition.border{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuCondition .htUIInput{padding:0 0 5px}.handsontable .htFiltersMenuValue{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch{padding:0}.handsontable .htFiltersMenuCondition .htUIInput input,.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input{font-family:inherit;font-size:.75em;padding:4px;box-sizing:border-box;width:100%}.htUIMultipleSelect .ht_master .wtHolder{overflow:auto}.handsontable .htFiltersActive .changeType{border:1px solid #509272;color:#18804e;background-color:#d2e0d9}.handsontable .htUISelectAll{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUISelectAll{margin-right:0;margin-left:10px}.handsontable .htUIClearAll,.handsontable .htUISelectAll{display:inline-block}.handsontable .htUIClearAll a,.handsontable .htUISelectAll a{font-size:.75em}.handsontable .htUISelectionControls{text-align:right}[dir=rtl].handsontable .htUISelectionControls{text-align:left}.handsontable .htCheckboxRendererInput{display:inline-block;margin:0 5px 0 0;vertical-align:middle;height:1em}[dir=rtl].handsontable .htCheckboxRendererInput{margin-left:5px;margin-right:0}.handsontable .htUIInput{padding:3px 0 7px;position:relative;text-align:center}.handsontable .htUIInput input{border-radius:2px;border:1px solid #d2d1d1}.handsontable .htUIInputIcon{position:absolute}.handsontable .htUIInput.htUIButton{cursor:pointer;display:inline-block}.handsontable .htUIInput.htUIButton input{background-color:#eee;color:#000;cursor:pointer;font-family:inherit;font-size:.75em;font-weight:700;height:19px;min-width:64px}.handsontable .htUIInput.htUIButton input:hover{border-color:#b9b9b9}.handsontable .htUIInput.htUIButtonOK{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUIInput.htUIButtonOK{margin-right:0;margin-left:10px}.handsontable .htUIInput.htUIButtonOK input{background-color:#0f9d58;border-color:#18804e;color:#fff}.handsontable .htUIInput.htUIButtonOK input:focus-visible{background-color:#92dd8d;border-color:#7cb878;color:#000}.handsontable .htUIInput.htUIButtonOK input:hover{border-color:#1a6f46}.handsontable .htUISelect{cursor:pointer;margin-bottom:7px;position:relative}.handsontable .htUISelectCaption{background-color:#e8e8e8;border-radius:2px;border:1px solid #d2d1d1;font-family:inherit;font-size:.75em;font-weight:700;padding:3px 20px 3px 10px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.handsontable .htUISelectCaption:hover{background-color:#e8e8e8;border:1px solid #b9b9b9}.handsontable .htUISelectDropdown:after{content:\"\\25b2\";font-size:7px;position:absolute;right:10px;top:0}.handsontable .htUISelectDropdown:before{content:\"\\25bc\";font-size:7px;position:absolute;right:10px;top:8px}.handsontable .htUIMultipleSelect .handsontable .htCore{border:none}.handsontable .htUIMultipleSelect .handsontable .htCore td:hover{background-color:#f5f5f5}.handsontable .htUIMultipleSelectSearch input{border-radius:2px;border:1px solid #d2d1d1;padding:3px}.handsontable .htUIRadio{display:inline-block;margin-left:0;margin-right:5px;height:100%}[dir=rtl].handsontable .htUIRadio{margin-right:0;margin-left:5px}.handsontable .htUIRadio:last-child{margin-right:0}.handsontable .htUIRadio>input[type=radio]{margin-left:0;margin-right:.5ex}[dir=rtl].handsontable .htUIRadio>input[type=radio]{margin-right:0;margin-left:.5ex}.handsontable .htUIRadio label{vertical-align:middle}.handsontable .htFiltersMenuOperators{padding-bottom:5px}.handsontable th.beforeHiddenColumn{position:relative}.handsontable th.beforeHiddenColumn:after,.handsontable th.afterHiddenColumn:before{color:#bbb;position:absolute;top:50%;font-size:5pt;transform:translateY(-50%)}.handsontable th.afterHiddenColumn{position:relative}.handsontable[dir=ltr] th.afterHiddenColumn div.htLeft{margin-left:10px}.handsontable[dir=ltr] th.beforeHiddenColumn div.htRight,.handsontable[dir=rtl] th.afterHiddenColumn div.htRight{margin-right:10px}.handsontable[dir=rtl] th.beforeHiddenColumn div.htLeft{margin-left:10px}.handsontable th.beforeHiddenColumn:after{right:1px;content:\"\\25c0\"}[dir=rtl].handsontable th.beforeHiddenColumn:after{right:initial;left:1px;content:\"\\25b6\"}.handsontable th.afterHiddenColumn:before{left:1px;content:\"\\25b6\"}[dir=rtl].handsontable th.afterHiddenColumn:before{right:1px;left:initial;content:\"\\25c0\"}.handsontable th.beforeHiddenRow:before,.handsontable th.afterHiddenRow:after{color:#bbb;font-size:6pt;line-height:6pt;position:absolute;left:2px}.handsontable th.beforeHiddenRow,.handsontable th.afterHiddenRow{position:relative}.handsontable th.beforeHiddenRow:before{content:\"\\25b2\";bottom:2px}.handsontable th.afterHiddenRow:after{content:\"\\25bc\";top:2px}.handsontable.ht__selection--rows tbody th.beforeHiddenRow.ht__highlight:before,.handsontable.ht__selection--rows tbody th.afterHiddenRow.ht__highlight:after{color:#eee}.handsontable td.afterHiddenRow.firstVisibleRow,.handsontable th.afterHiddenRow.firstVisibleRow{border-top:1px solid #CCC}.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_top_inline_start_corner th:nth-child(2),.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_inline_start td:first-of-type{border-left:0 none}.handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualColumnMove.on-moving--columns *,.handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer{display:none}.handsontable .ht__manualColumnMove--guideline,.handsontable .ht__manualColumnMove--backlight{position:absolute;height:100%;display:none}.handsontable .ht__manualColumnMove--guideline{background:#757575;width:2px;top:0;margin-inline-start:-1px;margin-inline-end:0;z-index:205}.handsontable .ht__manualColumnMove--backlight{background:#343434;background:#34343440;display:none;z-index:205;pointer-events:none}.handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline,.handsontable.on-moving--columns .ht__manualColumnMove--backlight{display:block}.handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualRowMove.on-moving--rows *,.handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer{display:none}.handsontable .ht__manualRowMove--guideline,.handsontable .ht__manualRowMove--backlight{position:absolute;width:100%;display:none}.handsontable .ht__manualRowMove--guideline{background:#757575;height:2px;left:0;margin-top:-1px;z-index:205}.handsontable .ht__manualRowMove--backlight{background:#343434;background:#34343440;display:none;z-index:205;pointer-events:none}.handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline,.handsontable.on-moving--rows .ht__manualRowMove--backlight{display:block}.handsontable tbody td[rowspan][class*=area][class*=highlight]:not([class*=fullySelectedMergedCell]):before{opacity:0}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-multiple]:before{opacity:.1}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-0]:before{opacity:.1}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-1]:before{opacity:.2}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-2]:before{opacity:.27}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-3]:before{opacity:.35}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-4]:before{opacity:.41}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-5]:before{opacity:.47}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-6]:before{opacity:.54}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-7]:before{opacity:.58}.handsontable[dir=ltr] div.htRight span[class*=sort-]{margin-right:15px;margin-left:-15px}.handsontable[dir=rtl] div.htLeft span[class*=sort-]{margin-left:15px;margin-right:-15px}.handsontable[dir=ltr] div.htRight span[class*=sort-]:only-child{margin-right:20px;margin-left:-20px}.handsontable[dir=rtl] div.htLeft span[class*=sort-]:only-child{margin-left:20px;margin-right:-20px}.handsontable span.colHeader.columnSorting:after{top:50%;margin-top:-2px;position:absolute;right:-15px;left:unset;padding-left:5px;padding-right:unset;font-size:8px;height:8px;line-height:1.1}[dir=rtl].handsontable span.colHeader.columnSorting:after{left:-15px;right:unset;padding-right:5px;padding-left:unset}.handsontable span.colHeader.columnSorting[class^=sort-]:after,.handsontable span.colHeader.columnSorting[class*=\" sort-\"]:after{content:\"+\"}.handsontable span.colHeader.columnSorting.sort-1:after{content:\"1\"}.handsontable span.colHeader.columnSorting.sort-2:after{content:\"2\"}.handsontable span.colHeader.columnSorting.sort-3:after{content:\"3\"}.handsontable span.colHeader.columnSorting.sort-4:after{content:\"4\"}.handsontable span.colHeader.columnSorting.sort-5:after{content:\"5\"}.handsontable span.colHeader.columnSorting.sort-6:after{content:\"6\"}.handsontable span.colHeader.columnSorting.sort-7:after{content:\"7\"}.htGhostTable th div button.changeType+span.colHeader.columnSorting:not(.indicatorDisabled){padding-right:5px}.handsontable thead th.hiddenHeader:not(:first-of-type){display:none}thead th.hiddenHeaderText .colHeader{opacity:0}.handsontable th.ht_nestingLevels{text-align:left;padding-left:7px}[dir=rtl].handsontable th.ht_nestingLevels{text-align:right;padding-right:7px}.handsontable th div.ht_nestingLevels{display:inline-block;position:absolute;left:11px;right:unset}[dir=rtl].handsontable th div.ht_nestingLevels{right:11px;left:unset}.handsontable.innerBorderInlineStart th div.ht_nestingLevels,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{right:10px;left:unset}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingLevels,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{left:10px;right:unset}.handsontable th span.ht_nestingLevel{display:inline-block}.handsontable th span.ht_nestingLevel_empty{display:inline-block;width:10px;height:1px;float:left}[dir=rtl].handsontable th span.ht_nestingLevel_empty{float:right}.handsontable th span.ht_nestingLevel:after{content:\"\\2510\";font-size:9px;display:inline-block;position:relative;bottom:3px}.handsontable th div.ht_nestingButton{display:inline-block;position:absolute;right:-2px;left:unset;cursor:pointer}[dir=rtl].handsontable th div.ht_nestingButton{left:-2px;right:unset}.handsontable th div.ht_nestingButton.ht_nestingExpand:after{content:\"+\"}.handsontable th div.ht_nestingButton.ht_nestingCollapse:after{content:\"-\"}.handsontable.innerBorderInlineStart th div.ht_nestingButton,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{right:0;left:unset}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingButton,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{left:0;right:unset}.ht-root-wrapper{position:relative;display:flex;flex-direction:column;height:100%}.ht-grid{flex:1 1 auto;min-height:0}.ht-dialog{position:absolute;top:0;left:0;display:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;width:100%;height:100%;z-index:1060;opacity:0;overflow-y:auto;border:1px solid #ccc;box-sizing:border-box!important}.ht-dialog[dir=rtl]{left:auto;right:0}.ht-dialog:focus{border:1px solid #4b89ff;outline:none}.ht-dialog:has(.htFocusCatcher:focus){border:1px solid #4b89ff;outline:none}.ht-dialog *{box-sizing:border-box!important}.ht-dialog--background-solid{background-color:#fff}.ht-dialog--background-semi-transparent{background-color:#ffffff80}.ht-dialog--animation{transition:opacity .15s ease-in-out}.ht-dialog--show{opacity:1}.ht-dialog__content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;min-height:100%;padding:16px}.ht-dialog__content-wrapper:focus{border:1px solid #4b89ff;outline:none}.ht-dialog__content{position:relative;padding:8px;display:flex;gap:8px;max-width:480px;color:#222}.ht-dialog__content--background{box-shadow:0 8px 16px #00000014;background-color:#f7f7f9}.ht-dialog--confirm .ht-dialog__content-wrapper{text-align:center}.ht-dialog--confirm .ht-dialog__content-wrapper-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;max-width:480px}.ht-dialog--confirm .ht-dialog__content-wrapper-inner--background{box-shadow:0 8px 16px #00000014;background-color:#f7f7f9}.ht-dialog--confirm .ht-dialog__content{display:flex;flex-direction:column;align-items:center;justify-content:center}.ht-dialog--confirm .ht-dialog__content:has(.ht-dialog__buttons){gap:4px}.ht-dialog--confirm .ht-dialog__title{margin:0;font-size:16px;font-weight:400;line-height:24px}.ht-dialog--confirm .ht-dialog__description{margin:0;color:#222;font-size:12px;font-weight:400;line-height:16px}.ht-dialog--confirm .ht-dialog__buttons{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px}.ht-root-wrapper .ht-pagination{color:#222;background:#f0f0f0;border:1px solid #ccc;border-top-color:transparent;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:12px;font-weight:400;box-sizing:border-box;overflow-x:auto}.ht-root-wrapper .ht-pagination__inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding-inline:8px;padding-block:4px;min-width:230px}.ht-root-wrapper .ht-pagination--bordered{border-top-color:#ccc}.ht-root-wrapper .ht-page-size-section{display:flex;align-items:center;gap:8px}.ht-root-wrapper .ht-page-size-section span{white-space:nowrap}.ht-root-wrapper .ht-page-size-section__select-wrapper{position:relative;border-radius:2px;border:1px solid #ccc}.ht-root-wrapper .ht-page-size-section__select-wrapper select{padding-inline-start:8px;padding-inline-end:8px;padding-top:4px;padding-bottom:4px;border-radius:2px;color:#222;background-color:#f0f0f0;border:none;-webkit-appearance:none;font-size:inherit;cursor:pointer}.ht-root-wrapper .ht-page-size-section__select-wrapper select:disabled{opacity:.4;cursor:default}.ht-root-wrapper .ht-page-size-section__select-wrapper select:hover:not(:disabled){background-color:#e0e0e0}.ht-root-wrapper .ht-page-size-section__select-wrapper select:focus{background-color:#e0e0e0;outline:1px solid #4b89ff}.ht-root-wrapper .ht-page-counter-section{margin-inline-end:auto}.ht-root-wrapper .ht-page-navigation-section{display:flex;align-items:center;gap:8px}.ht-root-wrapper .ht-page-navigation-section button{font-size:inherit;color:#222;background-color:transparent;border:none;padding:4px;border-radius:2px;cursor:pointer}.ht-root-wrapper .ht-page-navigation-section button:before{display:block;width:16px;height:16px;line-height:16px;text-align:center}.ht-root-wrapper .ht-page-navigation-section button:disabled{opacity:.4;cursor:default}.ht-root-wrapper .ht-page-navigation-section button:hover:not(:disabled){background-color:#e0e0e0}.ht-root-wrapper .ht-page-navigation-section button:focus{outline:1px solid #4b89ff}.ht-root-wrapper .ht-page-navigation-section .ht-page-first:before{content:\"\\21a4\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-first:before{content:\"\\21a6\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-prev:before{content:\"\\21a2\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-prev:before{content:\"\\21a3\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-next:before{content:\"\\21a3\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-next:before{content:\"\\21a2\"}.ht-root-wrapper .ht-page-navigation-section .ht-page-last:before{content:\"\\21a6\"}[dir=rtl].ht-root-wrapper .ht-page-navigation-section .ht-page-last:before{content:\"\\21a4\"}.ht-root-wrapper .ht-page-navigation-section span{white-space:nowrap}.ht-loading__icon-svg{display:block;width:16px;height:16px;color:#5292f7;animation:ht-loading-spin 1s linear infinite;transform-origin:50% 50%}.ht-loading__content{display:flex;align-items:center;gap:8px}.ht-loading__title{margin:0;font-size:13px;font-weight:400;line-height:18px}.ht-loading__description{margin:0;color:#222;font-size:12px;line-height:16px;font-weight:400}@keyframes ht-loading-spin{to{transform:rotate(360deg)}}.ht-empty-data-state{display:none;position:absolute;width:100%;left:0;z-index:999;overflow-y:auto;border:1px solid #ccc;box-sizing:border-box;background-color:#fff}.ht-empty-data-state *{box-sizing:border-box!important}.ht-empty-data-state__content-wrapper{display:flex;align-items:center;justify-content:center;text-align:center;width:100%;min-height:100%;padding:16px}.ht-empty-data-state__content-wrapper-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:480px;padding:16px}.ht-empty-data-state__content-wrapper-inner:focus{outline:none;box-shadow:0 0 0 1px #4b89ff}.ht-empty-data-state__content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.ht-empty-data-state__title{margin:0;font-size:16px;font-weight:400;line-height:24px}.ht-empty-data-state__description{margin:0;color:#222;font-size:12px;line-height:16px;font-weight:400}.ht-empty-data-state__buttons{display:flex;justify-content:center;flex-direction:row;flex-wrap:wrap;gap:8px}.ht-empty-data-state__buttons--has-buttons{margin-top:8px}.ht-empty-data-state--disable-top-border{border-top-width:0}.ht-empty-data-state--disable-inline-border{border-inline-start-width:0}.ht-empty-data-state--disable-bottom-border,.ht-empty-data-state:has(~.ht-pagination){border-bottom-width:0}.pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.pika-single:before,.pika-single:after{content:\" \";display:table}.pika-single:after{clear:both}.pika-single.is-hidden{display:none}.pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px #00000080}.pika-lendar{float:left;width:240px;margin:8px}.pika-title{position:relative;text-align:center}.pika-label{display:inline-block;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:700;background-color:#fff}.pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;opacity:0}.pika-prev,.pika-next{display:block;cursor:pointer;position:relative;outline:none;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5}.pika-prev:hover,.pika-next:hover{opacity:1}.pika-prev,.is-rtl .pika-next{float:left;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==)}.pika-next,.is-rtl .pika-prev{float:right;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=)}.pika-prev.is-disabled,.pika-next.is-disabled{cursor:default;opacity:.2}.pika-select{display:inline-block}.pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.pika-table th,.pika-table td{width:14.285714285714286%;padding:0}.pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:700;text-align:center}.pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:none;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:center;background:#f5f5f5;height:initial}.pika-week{font-size:11px;color:#999}.is-today .pika-button{color:#3af;font-weight:700}.is-selected .pika-button,.has-event .pika-button{color:#fff;font-weight:700;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.has-event .pika-button{background:#005da9;box-shadow:inset 0 1px 3px #0076c9}.is-disabled .pika-button,.is-inrange .pika-button{background:#d5e9f7}.is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.is-disabled .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.is-outside-current-month .pika-button{color:#999;opacity:.3}.is-selection-disabled{pointer-events:none;cursor:default}.pika-button:hover,.pika-row.pick-whole-week:hover .pika-button{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.pika-table abbr{border-bottom:none;cursor:help}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}.document-viewer-container{height:100%;min-height:0;width:100%;display:flex;flex-direction:column;padding:20px;box-sizing:border-box;background-color:#f5f5f5;overflow:hidden}.loader,.error-message{text-align:center;padding:40px 20px;font-family:Arial,sans-serif;background-color:#fff;border-radius:4px;margin:20px;box-shadow:0 2px 4px #0000001a}.error-message{color:#d32f2f;background-color:#ffebee;border:1px solid #ffcdd2}.text-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;margin:10px;overflow:auto;border:1px solid #ddd;box-shadow:0 2px 4px #0000001a;font-family:Courier New,monospace}.text-viewer pre{margin:0;font-size:14px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.word-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;box-shadow:0 2px 10px #0000001a;margin:10px;overflow:auto;font-family:Calibri,Arial,sans-serif}.word-viewer h1,.word-viewer h2,.word-viewer h3{color:#333}.word-viewer p{line-height:1.6;margin-bottom:15px}.presentation-viewer{flex:1 1 auto;min-height:0;background-color:#f5f5f5;padding:20px;border-radius:4px;margin:10px;display:flex;justify-content:center;align-items:center}.presentation-placeholder{text-align:center;color:#666;font-style:italic;padding:50px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.pdf-viewer-host{flex:1 1 auto;min-height:min(70vh,720px);width:calc(100% - 20px);margin:10px;display:flex;flex-direction:column;box-sizing:border-box}::ng-deep .pdf-viewer-host ngx-extended-pdf-viewer{flex:1 1 auto;min-height:0;height:100%;width:100%;border:1px solid #ddd;border-radius:4px;display:block}.excel-viewer{flex:1 1 auto;min-height:0;background-color:#fff;padding:20px;border-radius:4px;box-shadow:0 2px 10px #0000001a;margin:10px;overflow:auto}.excel-sheet{margin-bottom:30px;background:#fff}.excel-sheet h3{background-color:#f3f2f1;padding:12px 16px;margin:0;border-radius:4px 4px 0 0;font-size:14px;font-weight:600;color:#333;border-bottom:1px solid #e1dfdd}.excel-container{overflow-x:auto;overflow-y:auto;border:1px solid #e1dfdd;border-top:none;border-radius:0 0 4px 4px;max-height:calc(100% - 50px)}.excel-table{border-collapse:collapse;width:100%;font-family:Segoe UI,Calibri,Arial,sans-serif;font-size:13px;background:#fff}.excel-table td,.excel-table th{border:1px solid #e1dfdd;padding:8px 12px;white-space:nowrap;color:#333}.excel-table th{background-color:#f2f2f2;font-weight:700}.excel-table tr:first-child td{background-color:#f3f2f1;font-weight:600;color:#333;border-bottom:2px solid #8a8886}.excel-table td.number-cell,.excel-table td.percentage-cell,.excel-table td[data-format*=\"%\"]{text-align:right}.excel-table td.percentage-cell{color:#107c41}.excel-table td.text-cell{text-align:left}.excel-table tr:nth-child(2n) td{background-color:#faf9f8}.excel-table tr:hover td{background-color:#edf3fa}.excel-table td.selected{background-color:#cce8ff;border:2px solid #0078d4}.excel-viewer-container{flex:1 1 auto;min-height:0;width:calc(100% - 20px);margin:10px;border-radius:4px;overflow:hidden;box-shadow:0 2px 10px #0000001a;background:#fff;display:flex;flex-direction:column}.excel-sheet-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:12px 10px 0 8px;background:#f3f2f1;border-bottom:1px solid #e1dfdd;min-height:44px}.excel-sheet-tab{padding:8px 16px;border:1px solid #e1dfdd;border-bottom:none;border-radius:4px 4px 0 0;font-size:13px;font-family:Segoe UI,Arial,sans-serif;color:#333;cursor:pointer;transition:background .15s,border-color .15s}.excel-sheet-tab:hover{background:#edebe9;border-bottom:1px solid #000000}.excel-sheet-tab.active{background:#fff;font-weight:600;border-bottom:1px solid #000000;margin-bottom:2px;z-index:1}.excel-container-custom{width:100%;overflow-x:auto;overflow-y:auto}::ng-deep .handsontable{font-family:Segoe UI,Arial,sans-serif;font-size:13px;overflow:hidden!important}::ng-deep .wtHolder{width:100%!important;height:100%!important}::ng-deep .handsontable td{border:1px solid #e1dfdd;padding:8px 12px;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;word-break:break-word;line-height:1.4;vertical-align:top;max-width:300px;min-width:80px;margin:0!important}::ng-deep .handsontable td:hover{overflow:visible;background-color:#edf3fa;position:relative;z-index:10;box-shadow:0 2px 8px #00000026}::ng-deep .handsontable .htRight{text-align:right;font-family:Segoe UI,Consolas,monospace}::ng-deep .handsontable .htLeft{text-align:left}::ng-deep .handsontable .htCenter{text-align:center}::ng-deep .handsontable tr:nth-child(2n) td{background-color:#faf9f8}::ng-deep .handsontable tr:hover td{background-color:#edf3fa}::ng-deep .handsontable .current-row td{background-color:#e5f3ff}::ng-deep .handsontable .manualColumnResizer{background-color:#34a9db;width:5px;cursor:col-resize;opacity:0;transition:opacity .2s}::ng-deep .handsontable .manualColumnResizer:hover,::ng-deep .handsontable .manualColumnResizer.active{opacity:1;background-color:#0078d4}::ng-deep .handsontable .manualRowResizer{background-color:#34a9db;height:5px;cursor:row-resize;opacity:0;transition:opacity .2s}::ng-deep .handsontable .manualRowResizer:hover,::ng-deep .handsontable .manualRowResizer.active{opacity:1;background-color:#0078d4}::ng-deep .wtHolder::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::ng-deep .wtHolder::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::ng-deep .wtHolder::-webkit-scrollbar-thumb:hover{background:#a8a8a8}::ng-deep .htContextMenu table{font-family:Segoe UI,Arial,sans-serif;font-size:12px}::ng-deep .htContextMenu .htItemWrapper{padding:6px 12px}::ng-deep .htContextMenu .current{background-color:#e5f3ff}@media(max-width:768px){.document-viewer-container{padding:10px}.excel-viewer-container{width:calc(100% - 10px);margin:5px}.excel-viewer,.image-viewer,.text-viewer,.word-viewer,.presentation-viewer{margin:5px;padding:10px}::ng-deep .handsontable td{font-size:11px;padding:4px 6px}::ng-deep .handsontable th{font-size:11px;padding:6px}.pdf-viewer-host{width:calc(100% - 10px);margin:5px;min-height:min(60vh,560px)}}.excel-viewer-container{overflow:hidden;position:relative}.excel-container-custom{overflow:auto;position:relative;height:100%;width:100%}.image-viewer{flex:1 1 auto;width:100%;height:100%;display:flex;flex-direction:column;background-color:#fff}.image-toolbar{padding:10px;background-color:#fff;border-bottom:1px solid #ddd;display:flex;gap:8px;align-items:center;z-index:10}.image-toolbar button{padding:5px 10px;border:1px solid #ccc;background-color:#fff;border-radius:4px;cursor:pointer;font-size:16px;min-width:36px}.image-toolbar button:hover{background-color:#f0f0f0}.image-container{flex:1;overflow:hidden;position:relative;display:flex;justify-content:center;align-items:center;background-color:#fff}.responsive-image{max-width:100%;max-height:100%;object-fit:contain;transition:transform .1s ease;transform-origin:center center;will-change:transform;-webkit-user-select:none;user-select:none}::ng-deep .handsontable .ht_clone_top,::ng-deep .handsontable .ht_clone_top_left_corner,::ng-deep .handsontable .ht_clone_left{display:none!important}\n/*! Bundled license information:\n\nhandsontable/dist/handsontable.full.css:\n (*!\n * Copyright (c) HANDSONCODE sp. z o. o.\n *\n * HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in\n * Gdynia, Poland, at Aleja Zwyciestwa 96-98, registered by the District Court in Gdansk under number\n * 538651, EU tax ID number: PL5862294002, share capital: PLN 62,800.00.\n *\n * This software is protected by applicable copyright laws, including international treaties, and dual-\n * licensed - depending on whether your use for commercial purposes, meaning intended for or\n * resulting in commercial advantage or monetary compensation, or not.\n *\n * If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing\n * the suitability, performance, and usefulness of this software outside the production environment,\n * you agree to be bound by the terms included in the \"handsontable-non-commercial-license.pdf\" file.\n *\n * Your use of this software for commercial purposes is subject to the terms included in an applicable\n * license agreement.\n *\n * In any case, you must not make any such use of this software as to develop software which may be\n * considered competitive with this software.\n *\n * UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN \"AS IS\"\n * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO\n * LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,\n * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM\n * USE OR INABILITY TO USE THIS SOFTWARE.\n *\n * Version: 16.2.0\n * Release date: 25/11/2025 (built at 20/11/2025 13:27:05)\n *)\n (*!\n * Handsontable ContextMenu\n *)\n (*!\n * Handsontable DropdownMenu\n *)\n (*!\n * Handsontable Filters\n *)\n (*!\n * Handsontable HiddenRows\n *)\n (*!\n * Pikaday\n * Copyright \u00A9 2014 David Bushell | BSD & MIT license | https://dbushell.com/\n *)\n*/\n"] }]
|
|
735
|
+
}], ctorParameters: () => [{ type: DocumentViewerFileService }], propDecorators: { url: [{
|
|
650
736
|
type: Input
|
|
651
|
-
}],
|
|
737
|
+
}], token: [{
|
|
652
738
|
type: Input
|
|
653
|
-
}],
|
|
739
|
+
}], fileBlob: [{
|
|
654
740
|
type: Input
|
|
655
|
-
}],
|
|
741
|
+
}], fileBlobName: [{
|
|
656
742
|
type: Input
|
|
657
|
-
}],
|
|
743
|
+
}], pdfAssetsBaseUrl: [{
|
|
658
744
|
type: Input
|
|
659
745
|
}], imageContainer: [{
|
|
660
746
|
type: ViewChild,
|