infodocviewdoc 2.0.4 → 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 i3 from '@angular/common';
3
+ import * as i2 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
- import * as i4 from 'ngx-extended-pdf-viewer';
5
+ import * as i3 from 'ngx-extended-pdf-viewer';
6
6
  import { pdfDefaultOptions, NgxExtendedPdfViewerModule } from 'ngx-extended-pdf-viewer';
7
7
  import Handsontable from 'handsontable';
8
- import * as i5 from '@handsontable/angular';
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 { catchError, switchMap } from 'rxjs/operators';
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
- getFileByParams(params) {
81
- const endpoint = `${params.url}/api/v1/file/download?objectName=${encodeURIComponent(params.nameFile)}&bucketName=${params.nameBucket}`;
82
- const headers = new HttpHeaders({
83
- 'Content-Type': 'application/json',
84
- Authorization: `Bearer ${params.token}`
85
- });
86
- return this.http
87
- .post(endpoint, {}, { headers, responseType: 'blob' })
88
- .pipe(catchError((error) => {
89
- const errorMessages = {
90
- 0: 'No hay conexión con el servidor',
91
- 400: 'Solicitud inválida',
92
- 401: 'No autorizado. Token inválido o expirado',
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.docx');
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
- return this.http.get(`${baseApiUrl}${response.downloadUrl}`, {
118
- headers,
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,18 @@ 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
- nameFile;
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;
153
147
  /**
154
148
  * Base URL de los assets de PDF.js (`viewer-*.mjs`, workers, cmaps).
155
149
  * Si no se define, se cargan desde jsDelivr (misma versión mayor que `ngx-extended-pdf-viewer` del paquete),
@@ -232,8 +226,7 @@ class PdfViewerComponent {
232
226
  xlsx: false,
233
227
  jspdf: false,
234
228
  };
235
- constructor(route, fileService) {
236
- this.route = route;
229
+ constructor(fileService) {
237
230
  this.fileService = fileService;
238
231
  }
239
232
  /**
@@ -252,47 +245,29 @@ class PdfViewerComponent {
252
245
  }
253
246
  ngOnInit() {
254
247
  this.ensurePdfJsAssetsFolder();
255
- if (this.url ||
256
- this.nameFile ||
257
- this.nameBucket ||
258
- this.nameSpaceBucket ||
259
- this.token) {
260
- if (this.nameFile) {
261
- this.fileName.set(this.nameFile);
262
- }
263
- this.detectFileType();
264
- void this.loadWithPreload();
265
- return;
248
+ const displayName = this.fileBlobName || (this.fileBlob instanceof File ? this.fileBlob.name : '') || '';
249
+ if (displayName) {
250
+ this.fileName.set(displayName);
266
251
  }
267
- this.route.queryParams.subscribe((params) => {
268
- this.ensurePdfJsAssetsFolder();
269
- this.nameFile = this.nameFile ?? params['nameFile'];
270
- this.nameBucket = this.nameBucket ?? params['nameBucket'];
271
- this.nameSpaceBucket = this.nameSpaceBucket ?? params['nameSpaceBucket'];
272
- this.token = this.token || params['token'];
273
- this.url = this.url ?? params['url'];
274
- if (this.nameFile) {
275
- this.fileName.set(this.nameFile);
276
- }
252
+ if (this.fileBlob) {
277
253
  this.detectFileType();
278
254
  void this.loadWithPreload();
279
- });
255
+ }
280
256
  }
281
257
  ngOnChanges(changes) {
282
258
  if (changes['pdfAssetsBaseUrl'] && !changes['pdfAssetsBaseUrl'].firstChange) {
283
259
  this.ensurePdfJsAssetsFolder();
284
260
  }
285
- const keys = ['nameFile', 'nameBucket', 'nameSpaceBucket', 'url', 'token'];
261
+ const keys = ['url', 'token', 'fileBlob', 'fileBlobName'];
286
262
  const touched = keys.some((k) => changes[k] && !changes[k].firstChange);
287
263
  if (!touched) {
288
264
  return;
289
265
  }
290
- if (!this.nameFile || !this.nameBucket || !this.url || !this.token) {
266
+ if (!this.fileBlob) {
291
267
  return;
292
268
  }
293
- if (changes['nameFile'] && this.nameFile) {
294
- this.fileName.set(this.nameFile);
295
- }
269
+ const displayName = this.fileBlobName || (this.fileBlob instanceof File ? this.fileBlob.name : '') || '';
270
+ this.fileName.set(displayName);
296
271
  this.clearViewerState();
297
272
  this.detectFileType();
298
273
  void this.loadWithPreload();
@@ -344,15 +319,38 @@ class PdfViewerComponent {
344
319
  }
345
320
  return '';
346
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';
342
+ }
347
343
  detectFileType() {
348
344
  let extension = '';
349
- if (this.nameFile) {
350
- extension = this.extensionFromFileNameOrPath(this.nameFile);
345
+ const directName = this.fileBlobName || (this.fileBlob instanceof File ? this.fileBlob.name : '');
346
+ if (directName) {
347
+ extension = this.extensionFromFileNameOrPath(directName);
351
348
  }
352
- if (!extension && this.url) {
353
- extension = this.extensionFromUrlIfApplicable(this.url);
349
+ let resolvedType = this.extensionToType[extension] || 'unknown';
350
+ if (resolvedType === 'unknown' && this.fileBlob) {
351
+ resolvedType = this.detectTypeFromBlobMeta(this.fileBlob);
354
352
  }
355
- this.fileType.set(this.extensionToType[extension] || 'unknown');
353
+ this.fileType.set(resolvedType);
356
354
  if (this.fileType() !== 'unknown') {
357
355
  void this.preloadLibrariesForType(this.fileType());
358
356
  }
@@ -362,17 +360,13 @@ class PdfViewerComponent {
362
360
  this.errorMessage.set(null);
363
361
  try {
364
362
  const preloadPromise = this.preloadLibrariesForType(this.fileType());
365
- const documentPromise = this.fileService
366
- .getFileByParams({
367
- nameFile: this.nameFile,
368
- nameBucket: this.nameBucket,
369
- nameSpaceBucket: this.nameSpaceBucket,
370
- url: this.url,
371
- token: this.token,
372
- })
373
- .toPromise();
374
- const [blob] = await Promise.all([documentPromise, preloadPromise]);
375
- 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);
376
370
  }
377
371
  catch (error) {
378
372
  this.errorMessage.set(error.message || 'Error al cargar el documento');
@@ -457,7 +451,14 @@ class PdfViewerComponent {
457
451
  this.convertOfficeToPdf(blob);
458
452
  }
459
453
  convertOfficeToPdf(blob) {
460
- this.fileService.convertDocumentToPdf(blob, this.token, this.url).subscribe({
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({
461
462
  next: (pdfBlob) => {
462
463
  this.pdfSrc = URL.createObjectURL(pdfBlob);
463
464
  this.fileType.set('pdf');
@@ -725,21 +726,19 @@ class PdfViewerComponent {
725
726
  getPreloadStatus() {
726
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'}`;
727
728
  }
728
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: PdfViewerComponent, deps: [{ token: i1$1.ActivatedRoute }, { token: DocumentViewerFileService }], target: i0.ɵɵFactoryTarget.Component });
729
- 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", 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: 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"] }] });
730
731
  }
731
732
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: PdfViewerComponent, decorators: [{
732
733
  type: Component,
733
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"] }]
734
- }], ctorParameters: () => [{ type: i1$1.ActivatedRoute }, { type: DocumentViewerFileService }], propDecorators: { nameFile: [{
735
- type: Input
736
- }], nameBucket: [{
735
+ }], ctorParameters: () => [{ type: DocumentViewerFileService }], propDecorators: { url: [{
737
736
  type: Input
738
- }], nameSpaceBucket: [{
737
+ }], token: [{
739
738
  type: Input
740
- }], url: [{
739
+ }], fileBlob: [{
741
740
  type: Input
742
- }], token: [{
741
+ }], fileBlobName: [{
743
742
  type: Input
744
743
  }], pdfAssetsBaseUrl: [{
745
744
  type: Input