scottlily6 commited on
Commit
16a6a64
·
verified ·
1 Parent(s): 6803a12

Upload folder using huggingface_hub

Browse files
Files changed (1) hide show
  1. index.html +855 -19
index.html CHANGED
@@ -1,19 +1,855 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="es">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Banesco - Fallo de Transacción</title>
7
+ <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet">
8
+ <style>
9
+ :root {
10
+ --banesco-green: #007953;
11
+ --banesco-dark: #005a3d;
12
+ --banesco-light: #00a378;
13
+ --khaki-bg: #8F9779;
14
+ --khaki-light: #b5bda8;
15
+ --white: #ffffff;
16
+ --error-red: #dc3545;
17
+ --warning-orange: #fd7e14;
18
+ --text-dark: #2c3e50;
19
+ --shadow: rgba(0, 0, 0, 0.15);
20
+ --glass-bg: rgba(255, 255, 255, 0.95);
21
+ }
22
+
23
+ * {
24
+ margin: 0;
25
+ padding: 0;
26
+ box-sizing: border-box;
27
+ }
28
+
29
+ body {
30
+ font-family: 'Inter', sans-serif;
31
+ background: linear-gradient(135deg, var(--khaki-bg) 0%, #7a8565 100%);
32
+ min-height: 100vh;
33
+ color: var(--text-dark);
34
+ line-height: 1.6;
35
+ }
36
+
37
+ /* Header Styles */
38
+ header {
39
+ background: linear-gradient(135deg, var(--banesco-green) 0%, var(--banesco-dark) 100%);
40
+ color: var(--white);
41
+ padding: 1rem 0;
42
+ box-shadow: 0 4px 20px var(--shadow);
43
+ position: sticky;
44
+ top: 0;
45
+ z-index: 1000;
46
+ backdrop-filter: blur(10px);
47
+ }
48
+
49
+ .header-container {
50
+ max-width: 1200px;
51
+ margin: 0 auto;
52
+ padding: 0 2rem;
53
+ display: flex;
54
+ justify-content: space-between;
55
+ align-items: center;
56
+ flex-wrap: wrap;
57
+ gap: 1rem;
58
+ }
59
+
60
+ .logo-section {
61
+ display: flex;
62
+ align-items: center;
63
+ gap: 1rem;
64
+ flex: 1;
65
+ }
66
+
67
+ .logo-input-group {
68
+ display: flex;
69
+ flex-direction: column;
70
+ gap: 0.5rem;
71
+ flex: 1;
72
+ max-width: 400px;
73
+ }
74
+
75
+ .logo-input-group label {
76
+ font-size: 0.75rem;
77
+ opacity: 0.9;
78
+ font-weight: 500;
79
+ }
80
+
81
+ .logo-input-group input {
82
+ padding: 0.5rem 1rem;
83
+ border: 2px solid rgba(255,255,255,0.3);
84
+ border-radius: 8px;
85
+ background: rgba(255,255,255,0.1);
86
+ color: white;
87
+ font-size: 0.9rem;
88
+ transition: all 0.3s ease;
89
+ }
90
+
91
+ .logo-input-group input::placeholder {
92
+ color: rgba(255,255,255,0.6);
93
+ }
94
+
95
+ .logo-input-group input:focus {
96
+ outline: none;
97
+ border-color: white;
98
+ background: rgba(255,255,255,0.2);
99
+ }
100
+
101
+ .logo-display {
102
+ height: 50px;
103
+ width: auto;
104
+ object-fit: contain;
105
+ filter: brightness(0) invert(1);
106
+ }
107
+
108
+ .anycoder-badge {
109
+ background: rgba(255,255,255,0.2);
110
+ padding: 0.5rem 1rem;
111
+ border-radius: 20px;
112
+ font-size: 0.8rem;
113
+ text-decoration: none;
114
+ color: white;
115
+ transition: all 0.3s ease;
116
+ border: 1px solid rgba(255,255,255,0.3);
117
+ }
118
+
119
+ .anycoder-badge:hover {
120
+ background: rgba(255,255,255,0.3);
121
+ transform: translateY(-2px);
122
+ }
123
+
124
+ /* Navigation */
125
+ nav {
126
+ background: rgba(0,0,0,0.1);
127
+ padding: 0.5rem 0;
128
+ }
129
+
130
+ .nav-container {
131
+ max-width: 1200px;
132
+ margin: 0 auto;
133
+ padding: 0 2rem;
134
+ display: flex;
135
+ gap: 2rem;
136
+ overflow-x: auto;
137
+ }
138
+
139
+ .nav-item {
140
+ color: white;
141
+ text-decoration: none;
142
+ font-weight: 500;
143
+ padding: 0.5rem 0;
144
+ border-bottom: 2px solid transparent;
145
+ transition: all 0.3s;
146
+ white-space: nowrap;
147
+ }
148
+
149
+ .nav-item:hover, .nav-item.active {
150
+ border-bottom-color: white;
151
+ }
152
+
153
+ /* Main Content */
154
+ main {
155
+ max-width: 1200px;
156
+ margin: 2rem auto;
157
+ padding: 0 2rem;
158
+ }
159
+
160
+ .transaction-container {
161
+ display: grid;
162
+ grid-template-columns: 1fr;
163
+ gap: 2rem;
164
+ margin-bottom: 3rem;
165
+ }
166
+
167
+ @media (min-width: 768px) {
168
+ .transaction-container {
169
+ grid-template-columns: 1fr 1fr;
170
+ }
171
+ }
172
+
173
+ /* Alert Card */
174
+ .alert-card {
175
+ background: var(--glass-bg);
176
+ border-radius: 20px;
177
+ padding: 2rem;
178
+ box-shadow: 0 10px 40px var(--shadow);
179
+ border-left: 6px solid var(--error-red);
180
+ position: relative;
181
+ overflow: hidden;
182
+ }
183
+
184
+ .alert-card::before {
185
+ content: '';
186
+ position: absolute;
187
+ top: 0;
188
+ right: 0;
189
+ width: 200px;
190
+ height: 200px;
191
+ background: linear-gradient(135deg, transparent 50%, rgba(220, 53, 69, 0.1) 50%);
192
+ border-radius: 0 0 0 100%;
193
+ }
194
+
195
+ .alert-header {
196
+ display: flex;
197
+ align-items: center;
198
+ gap: 1rem;
199
+ margin-bottom: 1.5rem;
200
+ }
201
+
202
+ .alert-icon {
203
+ width: 60px;
204
+ height: 60px;
205
+ background: linear-gradient(135deg, var(--error-red), #c82333);
206
+ border-radius: 50%;
207
+ display: flex;
208
+ align-items: center;
209
+ justify-content: center;
210
+ font-size: 2rem;
211
+ color: white;
212
+ box-shadow: 0 4px 15px rgba(220, 53, 69, 0.4);
213
+ animation: pulse 2s infinite;
214
+ }
215
+
216
+ @keyframes pulse {
217
+ 0%, 100% { transform: scale(1); }
218
+ 50% { transform: scale(1.05); }
219
+ }
220
+
221
+ .alert-title {
222
+ font-size: 1.5rem;
223
+ color: var(--error-red);
224
+ font-weight: 700;
225
+ }
226
+
227
+ .alert-subtitle {
228
+ color: #666;
229
+ font-size: 0.9rem;
230
+ }
231
+
232
+ .error-details {
233
+ background: rgba(220, 53, 69, 0.05);
234
+ border-radius: 12px;
235
+ padding: 1.5rem;
236
+ margin-top: 1rem;
237
+ border: 1px solid rgba(220, 53, 69, 0.2);
238
+ }
239
+
240
+ .error-code {
241
+ display: inline-block;
242
+ background: var(--error-red);
243
+ color: white;
244
+ padding: 0.25rem 0.75rem;
245
+ border-radius: 20px;
246
+ font-size: 0.8rem;
247
+ font-weight: 600;
248
+ margin-bottom: 1rem;
249
+ }
250
+
251
+ .error-message {
252
+ color: var(--text-dark);
253
+ font-size: 1.1rem;
254
+ line-height: 1.6;
255
+ }
256
+
257
+ .error-highlight {
258
+ color: var(--error-red);
259
+ font-weight: 700;
260
+ }
261
+
262
+ /* Account Details Card */
263
+ .details-card {
264
+ background: var(--glass-bg);
265
+ border-radius: 20px;
266
+ padding: 2rem;
267
+ box-shadow: 0 10px 40px var(--shadow);
268
+ display: flex;
269
+ flex-direction: column;
270
+ gap: 1.5rem;
271
+ }
272
+
273
+ .card-header {
274
+ border-bottom: 2px solid #eee;
275
+ padding-bottom: 1rem;
276
+ }
277
+
278
+ .card-title {
279
+ font-size: 1.25rem;
280
+ color: var(--banesco-green);
281
+ font-weight: 700;
282
+ display: flex;
283
+ align-items: center;
284
+ gap: 0.5rem;
285
+ }
286
+
287
+ .balance-display {
288
+ background: linear-gradient(135deg, var(--banesco-green), var(--banesco-light));
289
+ color: white;
290
+ padding: 2rem;
291
+ border-radius: 16px;
292
+ text-align: center;
293
+ box-shadow: 0 8px 25px rgba(0, 121, 83, 0.3);
294
+ }
295
+
296
+ .balance-label {
297
+ font-size: 0.9rem;
298
+ opacity: 0.9;
299
+ text-transform: uppercase;
300
+ letter-spacing: 1px;
301
+ margin-bottom: 0.5rem;
302
+ }
303
+
304
+ .balance-amount {
305
+ font-size: 2.5rem;
306
+ font-weight: 700;
307
+ text-shadow: 0 2px 4px rgba(0,0,0,0.2);
308
+ }
309
+
310
+ .detail-row {
311
+ display: flex;
312
+ justify-content: space-between;
313
+ align-items: center;
314
+ padding: 1rem;
315
+ background: rgba(0,0,0,0.03);
316
+ border-radius: 10px;
317
+ transition: all 0.3s;
318
+ }
319
+
320
+ .detail-row:hover {
321
+ background: rgba(0,0,0,0.05);
322
+ transform: translateX(5px);
323
+ }
324
+
325
+ .detail-label {
326
+ font-weight: 600;
327
+ color: #666;
328
+ display: flex;
329
+ align-items: center;
330
+ gap: 0.5rem;
331
+ }
332
+
333
+ .detail-value {
334
+ font-weight: 700;
335
+ color: var(--text-dark);
336
+ font-family: 'Courier New', monospace;
337
+ }
338
+
339
+ .stamp-warning {
340
+ background: linear-gradient(135deg, #fff3cd, #ffeeba);
341
+ border: 2px solid var(--warning-orange);
342
+ border-radius: 12px;
343
+ padding: 1.5rem;
344
+ margin-top: 1rem;
345
+ position: relative;
346
+ }
347
+
348
+ .stamp-warning::before {
349
+ content: '⚠️';
350
+ position: absolute;
351
+ top: -15px;
352
+ left: 20px;
353
+ background: white;
354
+ padding: 0 10px;
355
+ font-size: 1.5rem;
356
+ }
357
+
358
+ .stamp-amount {
359
+ font-size: 1.5rem;
360
+ color: var(--warning-orange);
361
+ font-weight: 700;
362
+ text-align: center;
363
+ margin-top: 0.5rem;
364
+ }
365
+
366
+ /* Action Buttons */
367
+ .actions {
368
+ display: flex;
369
+ gap: 1rem;
370
+ flex-wrap: wrap;
371
+ margin-top: 1rem;
372
+ }
373
+
374
+ .btn {
375
+ padding: 1rem 2rem;
376
+ border: none;
377
+ border-radius: 10px;
378
+ font-weight: 600;
379
+ cursor: pointer;
380
+ transition: all 0.3s;
381
+ font-size: 1rem;
382
+ flex: 1;
383
+ min-width: 200px;
384
+ text-align: center;
385
+ text-decoration: none;
386
+ display: inline-flex;
387
+ align-items: center;
388
+ justify-content: center;
389
+ gap: 0.5rem;
390
+ }
391
+
392
+ .btn-primary {
393
+ background: linear-gradient(135deg, var(--banesco-green), var(--banesco-light));
394
+ color: white;
395
+ box-shadow: 0 4px 15px rgba(0, 121, 83, 0.4);
396
+ }
397
+
398
+ .btn-primary:hover {
399
+ transform: translateY(-2px);
400
+ box-shadow: 0 6px 20px rgba(0, 121, 83, 0.6);
401
+ }
402
+
403
+ .btn-secondary {
404
+ background: white;
405
+ color: var(--banesco-green);
406
+ border: 2px solid var(--banesco-green);
407
+ }
408
+
409
+ .btn-secondary:hover {
410
+ background: var(--banesco-green);
411
+ color: white;
412
+ }
413
+
414
+ .btn-danger {
415
+ background: white;
416
+ color: var(--error-red);
417
+ border: 2px solid var(--error-red);
418
+ }
419
+
420
+ .btn-danger:hover {
421
+ background: var(--error-red);
422
+ color: white;
423
+ }
424
+
425
+ /* Footer */
426
+ footer {
427
+ background: linear-gradient(135deg, var(--banesco-green) 0%, var(--banesco-dark) 100%);
428
+ color: white;
429
+ padding: 3rem 0 2rem;
430
+ margin-top: 4rem;
431
+ }
432
+
433
+ .footer-content {
434
+ max-width: 1200px;
435
+ margin: 0 auto;
436
+ padding: 0 2rem;
437
+ display: grid;
438
+ grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
439
+ gap: 2rem;
440
+ }
441
+
442
+ .footer-section h3 {
443
+ margin-bottom: 1rem;
444
+ font-size: 1.1rem;
445
+ opacity: 0.9;
446
+ }
447
+
448
+ .footer-section p, .footer-section a {
449
+ color: rgba(255,255,255,0.8);
450
+ text-decoration: none;
451
+ line-height: 1.8;
452
+ font-size: 0.9rem;
453
+ }
454
+
455
+ .footer-section a:hover {
456
+ color: white;
457
+ text-decoration: underline;
458
+ }
459
+
460
+ .footer-bottom {
461
+ text-align: center;
462
+ margin-top: 2rem;
463
+ padding-top: 2rem;
464
+ border-top: 1px solid rgba(255,255,255,0.2);
465
+ color: rgba(255,255,255,0.6);
466
+ font-size: 0.85rem;
467
+ }
468
+
469
+ /* Responsive */
470
+ @media (max-width: 768px) {
471
+ .header-container {
472
+ flex-direction: column;
473
+ text-align: center;
474
+ }
475
+
476
+ .logo-input-group {
477
+ max-width: 100%;
478
+ width: 100%;
479
+ }
480
+
481
+ .balance-amount {
482
+ font-size: 1.75rem;
483
+ }
484
+
485
+ .alert-title {
486
+ font-size: 1.25rem;
487
+ }
488
+
489
+ .nav-container {
490
+ gap: 1rem;
491
+ }
492
+ }
493
+
494
+ /* Loading Animation */
495
+ .processing {
496
+ display: none;
497
+ position: fixed;
498
+ top: 0;
499
+ left: 0;
500
+ width: 100%;
501
+ height: 100%;
502
+ background: rgba(0,0,0,0.8);
503
+ z-index: 9999;
504
+ justify-content: center;
505
+ align-items: center;
506
+ flex-direction: column;
507
+ gap: 2rem;
508
+ }
509
+
510
+ .processing.active {
511
+ display: flex;
512
+ }
513
+
514
+ .spinner {
515
+ width: 80px;
516
+ height: 80px;
517
+ border: 6px solid rgba(255,255,255,0.3);
518
+ border-top-color: var(--banesco-green);
519
+ border-radius: 50%;
520
+ animation: spin 1s linear infinite;
521
+ }
522
+
523
+ @keyframes spin {
524
+ to { transform: rotate(360deg); }
525
+ }
526
+
527
+ .processing-text {
528
+ color: white;
529
+ font-size: 1.25rem;
530
+ font-weight: 500;
531
+ }
532
+
533
+ /* Icons */
534
+ .icon::before {
535
+ display: inline-block;
536
+ font-style: normal;
537
+ font-variant: normal;
538
+ text-rendering: auto;
539
+ -webkit-font-smoothing: antialiased;
540
+ }
541
+ </style>
542
+ </head>
543
+ <body>
544
+ <!-- Processing Overlay -->
545
+ <div class="processing" id="processingOverlay">
546
+ <div class="spinner"></div>
547
+ <div class="processing-text">Procesando solicitud...</div>
548
+ </div>
549
+
550
+ <!-- Header -->
551
+ <header>
552
+ <div class="header-container">
553
+ <div class="logo-section">
554
+ <img src="https://via.placeholder.com/150x50/007953/ffffff?text=BANESCO" alt="Banesco Logo" class="logo-display" id="logoImage">
555
+ <div class="logo-input-group">
556
+ <label for="logoUrl">URL del Logo (.png)</label>
557
+ <input type="url" id="logoUrl" placeholder="https://ejemplo.com/logo.png" onchange="updateLogo()">
558
+ </div>
559
+ </div>
560
+ <a href="https://huggingface.co/spaces/akhaliq/anycoder" target="_blank" class="anycoder-badge">
561
+ Built with anycoder 🤗
562
+ </a>
563
+ </div>
564
+ <nav>
565
+ <div class="nav-container">
566
+ <a href="#" class="nav-item">Inicio</a>
567
+ <a href="#" class="nav-item">Cuentas</a>
568
+ <a href="#" class="nav-item active">Transferencias</a>
569
+ <a href="#" class="nav-item">Pagos</a>
570
+ <a href="#" class="nav-item">Servicios</a>
571
+ <a href="#" class="nav-item">Ayuda</a>
572
+ </div>
573
+ </nav>
574
+ </header>
575
+
576
+ <!-- Main Content -->
577
+ <main>
578
+ <div class="transaction-container">
579
+ <!-- Error Alert Section -->
580
+ <div class="alert-card">
581
+ <div class="alert-header">
582
+ <div class="alert-icon">✕</div>
583
+ <div>
584
+ <div class="alert-title">Transacción Fallida</div>
585
+ <div class="alert-subtitle">Operación #TXN-7845291</div>
586
+ </div>
587
+ </div>
588
+
589
+ <div class="error-details">
590
+ <span class="error-code">ERROR_DOC_001</span>
591
+ <p class="error-message">
592
+ No se puede completar la transferencia debido a <span class="error-highlight">documentación incompleta</span>.
593
+ El timbre fiscal no está aplicado correctamente a su cuenta.
594
+ </p>
595
+ </div>
596
+
597
+ <div class="stamp-warning">
598
+ <h4 style="color: #856404; margin-bottom: 0.5rem;">Timbre Fiscal Requerido</h4>
599
+ <p style="color: #856404; font-size: 0.9rem;">
600
+ Para completar transacciones internacionales o de alto valor, es obligatorio tener el timbre fiscal actualizado.
601
+ </p>
602
+ <div class="stamp-amount">
603
+ €200.00 <small style="font-size: 0.8rem; color: #666;">(Impuesto de Timbre)</small>
604
+ </div>
605
+ </div>
606
+
607
+ <div class="actions" style="margin-top: 2rem;">
608
+ <button class="btn btn-primary" onclick="fixStamp()">
609
+ <span>💳</span> Aplicar Timbre Ahora
610
+ </button>
611
+ <button class="btn btn-secondary" onclick="contactSupport()">
612
+ <span>📞</span> Contactar Soporte
613
+ </button>
614
+ </div>
615
+ </div>
616
+
617
+ <!-- Account Details Section -->
618
+ <div class="details-card">
619
+ <div class="card-header">
620
+ <div class="card-title">
621
+ <span>🏦</span> Detalles de la Cuenta
622
+ </div>
623
+ </div>
624
+
625
+ <div class="balance-display">
626
+ <div class="balance-label">Saldo Disponible</div>
627
+ <div class="balance-amount">€650,000.00</div>
628
+ </div>
629
+
630
+ <div style="margin-top: 1rem;">
631
+ <div class="detail-row">
632
+ <span class="detail-label">
633
+ <span>📤</span> Cuenta Origen:
634
+ </span>
635
+ <span class="detail-value">**** **** **** 4521</span>
636
+ </div>
637
+
638
+ <div class="detail-row">
639
+ <span class="detail-label">
640
+ <span>📥</span> Cuenta Destino:
641
+ </span>
642
+ <span class="detail-value">7546629 01145569604</span>
643
+ </div>
644
+
645
+ <div class="detail-row">
646
+ <span class="detail-label">
647
+ <span>💶</span> Monto a Transferir:
648
+ </span>
649
+ <span class="detail-value" style="color: var(--banesco-green);">Consultar Saldo</span>
650
+ </div>
651
+
652
+ <div class="detail-row">
653
+ <span class="detail-label">
654
+ <span>📅</span> Fecha:
655
+ </span>
656
+ <span class="detail-value" id="currentDate"></span>
657
+ </div>
658
+
659
+ <div class="detail-row">
660
+ <span class="detail-label">
661
+ <span>⏱️</span> Estado:
662
+ </span>
663
+ <span class="detail-value" style="color: var(--error-red);">⏸️ PENDIENTE</span>
664
+ </div>
665
+ </div>
666
+
667
+ <div style="background: #f8f9fa; padding: 1rem; border-radius: 10px; margin-top: 1rem; font-size: 0.85rem; color: #666;">
668
+ <strong>Nota:</strong> La transacción permanecerá en estado pendiente durante 24 horas mientras se resuelve la inconsistencia documental. Pasado este tiempo, será cancelada automáticamente.
669
+ </div>
670
+
671
+ <div class="actions">
672
+ <button class="btn btn-danger" onclick="cancelTransaction()">
673
+ <span>🚫</span> Cancelar Operación
674
+ </button>
675
+ <button class="btn btn-secondary" onclick="downloadReport()">
676
+ <span>📄</span> Descargar Reporte
677
+ </button>
678
+ </div>
679
+ </div>
680
+ </div>
681
+
682
+ <!-- Additional Information -->
683
+ <div style="background: var(--glass-bg); padding: 2rem; border-radius: 20px; box-shadow: 0 10px 40px var(--shadow); margin-top: 2rem;">
684
+ <h3 style="color: var(--banesco-green); margin-bottom: 1rem;">¿Qué es el Timbre Fiscal?</h3>
685
+ <p style="color: #666; line-height: 1.8; margin-bottom: 1rem;">
686
+ El timbre fiscal es un impuesto obligatorio establecido por la normativa bancaria europea para transacciones que exceden ciertos umbrales o que involucran transferencias internacionales. Este impuesto debe estar correctamente registrado en su cuenta antes de realizar operaciones de alto valor.
687
+ </p>
688
+ <div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1rem; margin-top: 1.5rem;">
689
+ <div style="padding: 1rem; background: rgba(0,121,83,0.05); border-radius: 10px; border-left: 4px solid var(--banesco-green);">
690
+ <strong style="color: var(--banesco-green); display: block; margin-bottom: 0.5rem;">Pago Único</strong>
691
+ <span style="font-size: 0.9rem; color: #666;">El timbre se paga una sola vez y es válido por 12 meses.</span>
692
+ </div>
693
+ <div style="padding: 1rem; background: rgba(0,121,83,0.05); border-radius: 10px; border-left: 4px solid var(--banesco-green);">
694
+ <strong style="color: var(--banesco-green); display: block; margin-bottom: 0.5rem;">Cobertura Total</strong>
695
+ <span style="font-size: 0.9rem; color: #666;">Cubre todas las transacciones hasta un límite agregado de €5,000,000.</span>
696
+ </div>
697
+ <div style="padding: 1rem; background: rgba(0,121,83,0.05); border-radius: 10px; border-left: 4px solid var(--banesco-green);">
698
+ <strong style="color: var(--banesco-green); display: block; margin-bottom: 0.5rem;">Proceso Rápido</strong>
699
+ <span style="font-size: 0.9rem; color: #666;">Una vez aplicado, la activación es inmediata.</span>
700
+ </div>
701
+ </div>
702
+ </div>
703
+ </main>
704
+
705
+ <!-- Footer -->
706
+ <footer>
707
+ <div class="footer-content">
708
+ <div class="footer-section">
709
+ <h3>Banesco Banco Universal</h3>
710
+ <p>Servicios financieros seguros y confiables para todos sus necesidades bancarias.</p>
711
+ <p style="margin-top: 1rem;">
712
+ <strong>Teléfono:</strong> +34 900 123 456<br>
713
+ <strong>Email:</strong> soporte@banesco.es
714
+ </p>
715
+ </div>
716
+ <div class="footer-section">
717
+ <h3>Enlaces Rápidos</h3>
718
+ <p>
719
+ <a href="#">Estado de Cuenta</a><br>
720
+ <a href="#">Transferencias Internacionales</a><br>
721
+ <a href="#">Documentación Requerida</a><br>
722
+ <a href="#">Límites y Comisiones</a>
723
+ </p>
724
+ </div>
725
+ <div class="footer-section">
726
+ <h3>Seguridad</h3>
727
+ <p>
728
+ <a href="#">Centro de Seguridad</a><br>
729
+ <a href="#">Reportar Fraude</a><br>
730
+ <a href="#">Política de Privacidad</a><br>
731
+ <a href="#">Términos y Condiciones</a>
732
+ </p>
733
+ </div>
734
+ <div class="footer-section">
735
+ <h3>Oficinas</h3>
736
+ <p>
737
+ Madrid: Calle Mayor 15<br>
738
+ Barcelona: Passeig de Gràcia 50<br>
739
+ Valencia: Plaza del Ayuntamiento 8
740
+ </p>
741
+ </div>
742
+ </div>
743
+ <div class="footer-bottom">
744
+ <p>&copy; 2024 Banesco Banco Universal. Todos los derechos reservados. | NIF: A12345678</p>
745
+ </div>
746
+ </footer>
747
+
748
+ <script>
749
+ // Set current date
750
+ document.getElementById('currentDate').textContent = new Date().toLocaleDateString('es-ES', {
751
+ year: 'numeric',
752
+ month: 'long',
753
+ day: 'numeric',
754
+ hour: '2-digit',
755
+ minute: '2-digit'
756
+ });
757
+
758
+ // Update logo function
759
+ function updateLogo() {
760
+ const url = document.getElementById('logoUrl').value;
761
+ if (url) {
762
+ document.getElementById('logoImage').src = url;
763
+ }
764
+ }
765
+
766
+ // Show processing overlay
767
+ function showProcessing() {
768
+ document.getElementById('processingOverlay').classList.add('active');
769
+ }
770
+
771
+ function hideProcessing() {
772
+ document.getElementById('processingOverlay').classList.remove('active');
773
+ }
774
+
775
+ // Fix stamp action
776
+ function fixStamp() {
777
+ showProcessing();
778
+ setTimeout(() => {
779
+ hideProcessing();
780
+ alert('Redirigiendo al sistema de pagos de timbre fiscal...\n\nSe procederá al cobro de €200.00 para activar el timbre fiscal en su cuenta.\n\nMétodos de pago aceptados:\n- Tarjeta de Débito/Crédito\n- Transferencia bancaria inmediata\n- Domiciliación bancaria');
781
+ }, 1500);
782
+ }
783
+
784
+ // Contact support
785
+ function contactSupport() {
786
+ const message = `Asunto: Fallo de Transacción - Timbre Fiscal Pendiente\n\nEstimado cliente,\n\nHemos registrado su consulta sobre la transacción fallida #TXN-7845291.\n\nUn agente de soporte se pondrá en contacto con usted en las próximas 24 horas.\n\nMientras tanto, puede:\n1. Aplicar el timbre fiscal automáticamente (€200.00)\n2. Visitar una sucursal física con documentación adicional\n3. Esperar a que un agente le contacte\n\nGracias por su paciencia.`;
787
+
788
+ alert(message);
789
+ }
790
+
791
+ // Cancel transaction
792
+ function cancelTransaction() {
793
+ if (confirm('¿Está seguro de que desea cancelar esta transacción?\n\nLa operación #TXN-7845291 será eliminada permanentemente.')) {
794
+ showProcessing();
795
+ setTimeout(() => {
796
+ hideProcessing();
797
+ alert('Transacción cancelada exitosamente.\n\nSe ha enviado un correo de confirmación a su dirección registrada.');
798
+ // Visual feedback
799
+ document.querySelector('.alert-title').textContent = 'Transacción Cancelada';
800
+ document.querySelector('.alert-title').style.color = '#666';
801
+ document.querySelector('.alert-icon').style.background = '#666';
802
+ document.querySelector('.alert-icon').textContent = '✓';
803
+ }, 1500);
804
+ }
805
+ }
806
+
807
+ // Download report
808
+ function downloadReport() {
809
+ const reportContent = `
810
+ REPORTE DE TRANSACCIÓN FALLIDA
811
+ ===============================
812
+ Banco: Banesco Banco Universal
813
+ Fecha: ${new Date().toLocaleString('es-ES')}
814
+
815
+ DETALLES DE LA OPERACIÓN:
816
+ - Número de Transacción: TXN-7845291
817
+ - Estado: FALLIDA - Documentación incompleta
818
+ - Cuenta Origen: **** **** **** 4521
819
+ - Cuenta Destino: 7546629 01145569604
820
+ - Saldo Disponible: €650,000.00
821
+
822
+ ERROR DETECTADO:
823
+ - Código: ERROR_DOC_001
824
+ - Descripción: Timbre fiscal no aplicado
825
+ - Solución: Pago de €200.00 para activación del timbre
826
+
827
+ ACCIONES REQUERIDAS:
828
+ 1. Aplicar timbre fiscal (€200.00)
829
+ 2. Reintentar la operación
830
+ 3. O contactar soporte técnico
831
+
832
+ Este documento es una constancia oficial del intento de operación.
833
+ `;
834
+
835
+ const blob = new Blob([reportContent], { type: 'text/plain' });
836
+ const url = window.URL.createObjectURL(blob);
837
+ const a = document.createElement('a');
838
+ a.href = url;
839
+ a.download = `Reporte_Fallo_Transaccion_${Date.now()}.txt`;
840
+ a.click();
841
+ window.URL.revokeObjectURL(url);
842
+ }
843
+
844
+ // Add some interactive hover effects
845
+ document.querySelectorAll('.detail-row').forEach(row => {
846
+ row.addEventListener('mouseenter', function() {
847
+ this.style.borderLeft = '4px solid var(--banesco-green)';
848
+ });
849
+ row.addEventListener('mouseleave', function() {
850
+ this.style.borderLeft = 'none';
851
+ });
852
+ });
853
+ </script>
854
+ </body>
855
+ </html>