zerochat 7.3.0__py3-none-any.whl

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.
Files changed (130) hide show
  1. zerochat-7.3.0.dist-info/METADATA +70 -0
  2. zerochat-7.3.0.dist-info/RECORD +130 -0
  3. zerochat-7.3.0.dist-info/WHEEL +5 -0
  4. zerochat-7.3.0.dist-info/entry_points.txt +2 -0
  5. zerochat-7.3.0.dist-info/licenses/LICENSE +34 -0
  6. zerochat-7.3.0.dist-info/top_level.txt +2 -0
  7. zerochat.py +2004 -0
  8. zerochat_runtime/__init__.py +1 -0
  9. zerochat_runtime/assets/css/base.css +199 -0
  10. zerochat_runtime/assets/css/components/composer.css +1258 -0
  11. zerochat_runtime/assets/css/components/debug.css +777 -0
  12. zerochat_runtime/assets/css/components/header.css +97 -0
  13. zerochat_runtime/assets/css/components/icons.css +39 -0
  14. zerochat_runtime/assets/css/components/markdown.css +685 -0
  15. zerochat_runtime/assets/css/components/messages.css +473 -0
  16. zerochat_runtime/assets/css/components/modals.css +1319 -0
  17. zerochat_runtime/assets/css/components/sidebar.css +622 -0
  18. zerochat_runtime/assets/css/components/tools.css +1223 -0
  19. zerochat_runtime/assets/css/layout.css +171 -0
  20. zerochat_runtime/assets/css/print.css +120 -0
  21. zerochat_runtime/assets/css/styles.css +18 -0
  22. zerochat_runtime/assets/css/theme-overrides.css +555 -0
  23. zerochat_runtime/assets/css/tokens.css +165 -0
  24. zerochat_runtime/assets/help/architecture.html +247 -0
  25. zerochat_runtime/assets/help/composer.html +134 -0
  26. zerochat_runtime/assets/help/conversations.html +105 -0
  27. zerochat_runtime/assets/help/debug.html +108 -0
  28. zerochat_runtime/assets/help/en/architecture.html +247 -0
  29. zerochat_runtime/assets/help/en/composer.html +134 -0
  30. zerochat_runtime/assets/help/en/conversations.html +104 -0
  31. zerochat_runtime/assets/help/en/debug.html +105 -0
  32. zerochat_runtime/assets/help/en/gemini-free.html +39 -0
  33. zerochat_runtime/assets/help/en/index.html +191 -0
  34. zerochat_runtime/assets/help/en/learning.html +71 -0
  35. zerochat_runtime/assets/help/en/mcp.html +143 -0
  36. zerochat_runtime/assets/help/en/openrouter-free.html +39 -0
  37. zerochat_runtime/assets/help/en/profiles.html +173 -0
  38. zerochat_runtime/assets/help/en/rag.html +130 -0
  39. zerochat_runtime/assets/help/en/reasoning-telemetry.html +108 -0
  40. zerochat_runtime/assets/help/en/tools-agent.html +133 -0
  41. zerochat_runtime/assets/help/en/webllm.html +355 -0
  42. zerochat_runtime/assets/help/gemini-free.html +39 -0
  43. zerochat_runtime/assets/help/help.css +604 -0
  44. zerochat_runtime/assets/help/help.js +51 -0
  45. zerochat_runtime/assets/help/index.html +194 -0
  46. zerochat_runtime/assets/help/learning.html +71 -0
  47. zerochat_runtime/assets/help/mcp.html +143 -0
  48. zerochat_runtime/assets/help/openrouter-free.html +39 -0
  49. zerochat_runtime/assets/help/profiles.html +174 -0
  50. zerochat_runtime/assets/help/rag.html +130 -0
  51. zerochat_runtime/assets/help/reasoning-telemetry.html +111 -0
  52. zerochat_runtime/assets/help/tools-agent.html +133 -0
  53. zerochat_runtime/assets/help/webllm.html +359 -0
  54. zerochat_runtime/assets/js/agent-core.js +1553 -0
  55. zerochat_runtime/assets/js/api.js +844 -0
  56. zerochat_runtime/assets/js/app.js +2558 -0
  57. zerochat_runtime/assets/js/attachments.js +220 -0
  58. zerochat_runtime/assets/js/charts.js +338 -0
  59. zerochat_runtime/assets/js/chat-engine.js +566 -0
  60. zerochat_runtime/assets/js/config-store.js +207 -0
  61. zerochat_runtime/assets/js/context-manager.js +584 -0
  62. zerochat_runtime/assets/js/conversation-service.js +484 -0
  63. zerochat_runtime/assets/js/cookies.js +688 -0
  64. zerochat_runtime/assets/js/data-reset-service.js +136 -0
  65. zerochat_runtime/assets/js/debug.js +508 -0
  66. zerochat_runtime/assets/js/defaults.js +16 -0
  67. zerochat_runtime/assets/js/export.js +179 -0
  68. zerochat_runtime/assets/js/file-parser.js +2088 -0
  69. zerochat_runtime/assets/js/generation-controller.js +417 -0
  70. zerochat_runtime/assets/js/i18n.js +1483 -0
  71. zerochat_runtime/assets/js/icons.js +156 -0
  72. zerochat_runtime/assets/js/ingestionEngine.js +436 -0
  73. zerochat_runtime/assets/js/markdown.js +588 -0
  74. zerochat_runtime/assets/js/mcp.js +1271 -0
  75. zerochat_runtime/assets/js/message-turns.js +62 -0
  76. zerochat_runtime/assets/js/profile-backup.js +118 -0
  77. zerochat_runtime/assets/js/profile-export-bundle.js +481 -0
  78. zerochat_runtime/assets/js/profile-repository.js +213 -0
  79. zerochat_runtime/assets/js/providers-webllm.js +486 -0
  80. zerochat_runtime/assets/js/providers.js +1560 -0
  81. zerochat_runtime/assets/js/rag-index.js +295 -0
  82. zerochat_runtime/assets/js/rag-service.js +530 -0
  83. zerochat_runtime/assets/js/rag-ui.js +997 -0
  84. zerochat_runtime/assets/js/ragStorage.js +676 -0
  85. zerochat_runtime/assets/js/sandbox.js +449 -0
  86. zerochat_runtime/assets/js/state.js +704 -0
  87. zerochat_runtime/assets/js/storage-db.js +144 -0
  88. zerochat_runtime/assets/js/tool-cards.js +330 -0
  89. zerochat_runtime/assets/js/tool-security.js +653 -0
  90. zerochat_runtime/assets/js/tools/README.md +50 -0
  91. zerochat_runtime/assets/js/tools/builtin/agent-checkpoint.tool.js +212 -0
  92. zerochat_runtime/assets/js/tools/builtin/download-pdf.tool.js +111 -0
  93. zerochat_runtime/assets/js/tools/builtin/execute-javascript.tool.js +219 -0
  94. zerochat_runtime/assets/js/tools/builtin/fetch-web-page.tool.js +112 -0
  95. zerochat_runtime/assets/js/tools/builtin/list-documents.tool.js +117 -0
  96. zerochat_runtime/assets/js/tools/builtin/read-knowledge-chunk.tool.js +129 -0
  97. zerochat_runtime/assets/js/tools/builtin/read-knowledge-image.tool.js +95 -0
  98. zerochat_runtime/assets/js/tools/builtin/render-chart.tool.js +90 -0
  99. zerochat_runtime/assets/js/tools/builtin/search-knowledge-base.tool.js +124 -0
  100. zerochat_runtime/assets/js/tools/builtin/search-web.tool.js +125 -0
  101. zerochat_runtime/assets/js/tools/tool-manifest.js +53 -0
  102. zerochat_runtime/assets/js/tools/tool-runtime.js +77 -0
  103. zerochat_runtime/assets/js/ui-composer.js +319 -0
  104. zerochat_runtime/assets/js/ui-conversation.js +655 -0
  105. zerochat_runtime/assets/js/ui-dialogs.js +132 -0
  106. zerochat_runtime/assets/js/ui-generation-status.js +119 -0
  107. zerochat_runtime/assets/js/ui-inspector.js +804 -0
  108. zerochat_runtime/assets/js/ui-mcp.js +604 -0
  109. zerochat_runtime/assets/js/ui-profiles.js +824 -0
  110. zerochat_runtime/assets/js/ui-reasoning.js +146 -0
  111. zerochat_runtime/assets/js/ui-settings.js +825 -0
  112. zerochat_runtime/assets/js/ui-shell.js +215 -0
  113. zerochat_runtime/assets/js/ui-sidebar.js +429 -0
  114. zerochat_runtime/assets/js/ui-telemetry.js +404 -0
  115. zerochat_runtime/assets/js/ui-transfer.js +262 -0
  116. zerochat_runtime/assets/js/utils.js +216 -0
  117. zerochat_runtime/assets/js/vendor/orama.browser.js +11 -0
  118. zerochat_runtime/assets/js/web-browser.js +569 -0
  119. zerochat_runtime/assets/js/web-search.js +519 -0
  120. zerochat_runtime/assets/manifest.webmanifest +20 -0
  121. zerochat_runtime/assets/services/dummy_mcp/dummy_mcp_server.py +47 -0
  122. zerochat_runtime/assets/services/dummy_mcp/service.json +22 -0
  123. zerochat_runtime/assets/services/lsp/installer.json +9 -0
  124. zerochat_runtime/assets/services/lsp/service.json +22 -0
  125. zerochat_runtime/assets/services/memory/installer.json +9 -0
  126. zerochat_runtime/assets/services/memory/service.json +24 -0
  127. zerochat_runtime/assets/services/playwright/installer.json +10 -0
  128. zerochat_runtime/assets/services/playwright/service.json +39 -0
  129. zerochat_runtime/assets/sw.js +164 -0
  130. zerochat_runtime/assets/zerochat.html +671 -0
@@ -0,0 +1,777 @@
1
+ /* ===========================================================================
2
+ Inspector de actividad y mensajes
3
+ ========================================================================== */
4
+
5
+ .btn-debug-toggle {
6
+ background-color: transparent;
7
+ color: var(--text-muted);
8
+ }
9
+
10
+ .btn-debug-toggle.active {
11
+ background-color: var(--primary-light);
12
+ color: var(--primary);
13
+ border-color: #bfdbfe;
14
+ font-weight: 600;
15
+ }
16
+
17
+ .debug-panel {
18
+ width: 440px;
19
+ max-width: 45vw;
20
+ height: 100%;
21
+ height: 100dvh;
22
+ height: var(--app-height, 100dvh);
23
+ max-height: 100%;
24
+ background: var(--bg-surface);
25
+ color: var(--text-main);
26
+ border-left: 1px solid var(--border-color);
27
+ display: flex;
28
+ flex-direction: column;
29
+ z-index: var(--z-sidebar);
30
+ flex-shrink: 0;
31
+ box-shadow: var(--shadow-xl);
32
+ animation: slideInRight 0.22s cubic-bezier(0.16, 1, 0.3, 1);
33
+ overflow: hidden;
34
+ }
35
+
36
+ @keyframes slideInRight {
37
+ from {
38
+ transform: translateX(100%);
39
+ opacity: 0;
40
+ }
41
+ to {
42
+ transform: translateX(0);
43
+ opacity: 1;
44
+ }
45
+ }
46
+
47
+ .debug-panel-header {
48
+ display: flex;
49
+ justify-content: space-between;
50
+ align-items: center;
51
+ gap: 0.75rem;
52
+ min-height: 3.75rem;
53
+ padding: 0.7rem 0.85rem 0.7rem 1rem;
54
+ background: rgba(var(--bg-surface-rgb), var(--header-bg-alpha));
55
+ border-bottom: 1px solid var(--border-color);
56
+ backdrop-filter: blur(14px);
57
+ user-select: none;
58
+ }
59
+
60
+ .debug-title {
61
+ display: flex;
62
+ align-items: center;
63
+ gap: 0.55rem;
64
+ min-width: 0;
65
+ font-size: 0.875rem;
66
+ font-weight: 600;
67
+ color: var(--text-main);
68
+ }
69
+
70
+ .debug-badge-icon {
71
+ display: inline-flex;
72
+ align-items: center;
73
+ justify-content: center;
74
+ width: 34px;
75
+ height: 34px;
76
+ border-radius: var(--radius-md);
77
+ color: var(--primary);
78
+ background: var(--primary-light);
79
+ }
80
+
81
+ .debug-badge-icon .ui-icon {
82
+ width: 18px;
83
+ height: 18px;
84
+ }
85
+
86
+ .debug-status-indicator {
87
+ font-size: 0.68rem;
88
+ padding: 0.2rem 0.5rem;
89
+ border-radius: var(--radius-full);
90
+ font-weight: 600;
91
+ text-transform: uppercase;
92
+ letter-spacing: 0.03em;
93
+ }
94
+
95
+ .debug-status-indicator.idle {
96
+ background: var(--bg-surface-subtle);
97
+ color: var(--text-muted);
98
+ }
99
+
100
+ .debug-status-indicator.streaming {
101
+ background: rgba(234, 179, 8, 0.25);
102
+ color: var(--warning);
103
+ box-shadow: 0 0 8px rgba(234, 179, 8, 0.3);
104
+ animation: pulse-glow 1.5s infinite;
105
+ }
106
+
107
+ .debug-status-indicator.done {
108
+ background: rgba(34, 197, 94, 0.25);
109
+ color: var(--success);
110
+ }
111
+
112
+ .debug-status-indicator.error {
113
+ background: rgba(239, 68, 68, 0.25);
114
+ color: var(--danger);
115
+ }
116
+
117
+ @keyframes pulse-glow {
118
+ 0%, 100% { opacity: 1; transform: scale(1); }
119
+ 50% { opacity: 0.75; transform: scale(0.97); }
120
+ }
121
+
122
+ .debug-actions {
123
+ display: flex;
124
+ align-items: center;
125
+ gap: 0.25rem;
126
+ flex-shrink: 0;
127
+ }
128
+
129
+ .btn-debug-action {
130
+ width: 32px;
131
+ height: 32px;
132
+ padding: 0;
133
+ box-sizing: border-box;
134
+ display: inline-flex;
135
+ align-items: center;
136
+ justify-content: center;
137
+ background: transparent;
138
+ border: 1px solid transparent;
139
+ color: var(--text-secondary);
140
+ border-radius: var(--radius-sm);
141
+ font-size: 0.75rem;
142
+ transition: all 0.15s ease;
143
+ line-height: 1;
144
+ }
145
+
146
+ .btn-debug-action:hover {
147
+ background: var(--bg-hover);
148
+ color: var(--text-main);
149
+ border-color: var(--border-color);
150
+ }
151
+
152
+ .btn-debug-action.active {
153
+ background: var(--primary-light);
154
+ border-color: var(--primary);
155
+ color: var(--primary);
156
+ }
157
+
158
+ .btn-debug-action.btn-close-panel {
159
+ font-weight: 700;
160
+ padding: 0;
161
+ }
162
+
163
+
164
+ .debug-tabs {
165
+ display: flex;
166
+ gap: 0.3rem;
167
+ padding: 0.55rem 0.75rem;
168
+ background: var(--bg-surface);
169
+ border-bottom: 1px solid var(--border-subtle);
170
+ overflow-x: auto;
171
+ }
172
+
173
+ .debug-tab {
174
+ background: transparent;
175
+ border: 1px solid transparent;
176
+ border-radius: var(--radius-sm);
177
+ color: var(--text-muted);
178
+ font-size: 0.74rem;
179
+ font-weight: 500;
180
+ min-height: 32px;
181
+ padding: 0.35rem 0.55rem;
182
+ cursor: pointer;
183
+ transition: all 0.15s ease;
184
+ white-space: nowrap;
185
+ }
186
+
187
+ .debug-tab:hover {
188
+ background: var(--bg-hover);
189
+ color: var(--text-main);
190
+ }
191
+
192
+ .debug-tab.active {
193
+ color: var(--primary);
194
+ background: var(--primary-light);
195
+ border-color: color-mix(in srgb, var(--primary) 28%, transparent);
196
+ font-weight: 600;
197
+ }
198
+
199
+ .debug-controls-bar {
200
+ display: flex;
201
+ justify-content: space-between;
202
+ align-items: center;
203
+ gap: 0.6rem;
204
+ margin: 0.65rem 0.75rem 0;
205
+ padding: 0.6rem 0.7rem;
206
+ background: var(--bg-surface-subtle);
207
+ border: 1px solid var(--border-subtle);
208
+ border-radius: var(--radius-md);
209
+ font-size: 0.8rem;
210
+ user-select: none;
211
+ flex-wrap: wrap;
212
+ }
213
+
214
+ .debug-control-group {
215
+ display: flex;
216
+ align-items: center;
217
+ gap: 0.4rem;
218
+ }
219
+
220
+ .debug-toggle-wrapper {
221
+ display: flex;
222
+ align-items: center;
223
+ gap: 0.5rem;
224
+ }
225
+
226
+ .debug-toggle-label {
227
+ color: var(--text-secondary);
228
+ font-weight: 500;
229
+ font-size: 0.78rem;
230
+ }
231
+
232
+ .debug-status-pill {
233
+ font-size: 0.65rem;
234
+ font-weight: 700;
235
+ padding: 0.15rem 0.45rem;
236
+ border-radius: var(--radius-full);
237
+ letter-spacing: 0.04em;
238
+ text-transform: uppercase;
239
+ }
240
+
241
+ .debug-status-pill.on {
242
+ background: rgba(34, 197, 94, 0.2);
243
+ color: #4ade80;
244
+ border: 1px solid rgba(34, 197, 94, 0.4);
245
+ }
246
+
247
+ .debug-status-pill.off {
248
+ background: var(--bg-surface);
249
+ color: var(--text-muted);
250
+ border: 1px solid var(--border-color);
251
+ }
252
+
253
+ .debug-interceptor-modal {
254
+ width: 92%;
255
+ max-width: 800px;
256
+ max-height: 88vh;
257
+ border-radius: var(--radius-lg);
258
+ border: 1px solid #334155;
259
+ background: #0f172a;
260
+ color: #f1f5f9;
261
+ box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(255, 255, 255, 0.1);
262
+ overflow: hidden;
263
+ z-index: 1000;
264
+ }
265
+
266
+ .modal-header-actions {
267
+ display: flex;
268
+ align-items: center;
269
+ gap: 0.35rem;
270
+ }
271
+
272
+ .debug-modal-send-actions {
273
+ display: inline-flex;
274
+ align-items: center;
275
+ gap: 0.35rem;
276
+ }
277
+
278
+ .btn-debug-header-action {
279
+ display: inline-flex;
280
+ align-items: center;
281
+ gap: 0.35rem;
282
+ min-height: 28px;
283
+ padding: 0.3rem 0.55rem;
284
+ border-radius: var(--radius-sm);
285
+ font: inherit;
286
+ font-size: 0.75rem;
287
+ font-weight: 600;
288
+ cursor: pointer;
289
+ }
290
+
291
+ .btn-debug-header-send {
292
+ border: 1px solid var(--primary);
293
+ background: var(--primary);
294
+ color: #fff;
295
+ }
296
+
297
+ .btn-debug-header-send:hover {
298
+ background: var(--primary-hover);
299
+ }
300
+
301
+ .btn-debug-header-stop {
302
+ border: 1px solid rgba(245, 158, 11, 0.45);
303
+ background: rgba(245, 158, 11, 0.14);
304
+ color: #fbbf24;
305
+ }
306
+
307
+ .btn-debug-header-stop:hover {
308
+ border-color: #f59e0b;
309
+ background: rgba(245, 158, 11, 0.25);
310
+ color: #fde68a;
311
+ }
312
+
313
+ .modal-header-actions .modal-btn-action,
314
+ .modal-header-actions .modal-btn-close {
315
+ display: inline-flex;
316
+ align-items: center;
317
+ justify-content: center;
318
+ width: 28px;
319
+ height: 28px;
320
+ padding: 0;
321
+ border-radius: var(--radius-sm);
322
+ background: rgba(255, 255, 255, 0.08);
323
+ border: 1px solid rgba(255, 255, 255, 0.12);
324
+ color: #cbd5e1;
325
+ font-size: 0.85rem;
326
+ line-height: 1;
327
+ transition: all 0.15s ease;
328
+ box-sizing: border-box;
329
+ }
330
+
331
+ .modal-header-actions .modal-btn-action:hover,
332
+ .modal-header-actions .modal-btn-close:hover {
333
+ background: rgba(255, 255, 255, 0.2);
334
+ border-color: rgba(255, 255, 255, 0.25);
335
+ color: #ffffff;
336
+ }
337
+
338
+ [data-theme="light"] .modal-header-actions .modal-btn-action,
339
+ [data-theme="light"] .modal-header-actions .modal-btn-close {
340
+ background: rgba(0, 0, 0, 0.05);
341
+ border: 1px solid rgba(0, 0, 0, 0.1);
342
+ color: #64748b;
343
+ }
344
+
345
+ [data-theme="light"] .modal-header-actions .modal-btn-action:hover,
346
+ [data-theme="light"] .modal-header-actions .modal-btn-close:hover {
347
+ background: rgba(0, 0, 0, 0.1);
348
+ border-color: rgba(0, 0, 0, 0.18);
349
+ color: #0f172a;
350
+ }
351
+
352
+ .debug-interceptor-modal::backdrop {
353
+ background: rgba(0, 0, 0, 0.65);
354
+ backdrop-filter: blur(4px);
355
+ }
356
+
357
+ .debug-modal-body {
358
+ display: flex;
359
+ flex-direction: column;
360
+ padding: 1.15rem;
361
+ gap: 1rem;
362
+ }
363
+
364
+ .debug-modal-info {
365
+ background: rgba(56, 189, 248, 0.08);
366
+ border: 1px solid rgba(56, 189, 248, 0.25);
367
+ border-radius: var(--radius-md);
368
+ padding: 0.65rem 0.85rem;
369
+ font-size: 0.825rem;
370
+ color: #bae6fd;
371
+ line-height: 1.45;
372
+ }
373
+
374
+ .debug-editor-wrapper {
375
+ display: flex;
376
+ flex-direction: column;
377
+ border-radius: var(--radius-md);
378
+ border: 1px solid #334155;
379
+ overflow: hidden;
380
+ background: #090e1a;
381
+ }
382
+
383
+ .debug-editor-header {
384
+ display: flex;
385
+ justify-content: space-between;
386
+ align-items: center;
387
+ padding: 0.45rem 0.75rem;
388
+ background: #131d36;
389
+ border-bottom: 1px solid #1e293b;
390
+ }
391
+
392
+ .debug-endpoint-badge {
393
+ font-family: 'JetBrains Mono', 'Fira Code', monospace;
394
+ font-size: 0.75rem;
395
+ font-weight: 600;
396
+ color: #38bdf8;
397
+ background: rgba(56, 189, 248, 0.12);
398
+ padding: 0.15rem 0.5rem;
399
+ border-radius: var(--radius-sm);
400
+ border: 1px solid rgba(56, 189, 248, 0.25);
401
+ }
402
+
403
+ .debug-editor-actions {
404
+ display: flex;
405
+ gap: 0.4rem;
406
+ }
407
+
408
+ .btn-debug-editor-action {
409
+ gap: 0.35rem;
410
+ padding: 0.35rem 0.55rem;
411
+ font-size: 0.75rem;
412
+ }
413
+
414
+ .debug-payload-textarea {
415
+ width: 100%;
416
+ height: 340px;
417
+ max-height: 50vh;
418
+ padding: 0.85rem;
419
+ font-family: 'JetBrains Mono', 'Fira Code', Consolas, Monaco, monospace;
420
+ font-size: 0.82rem;
421
+ line-height: 1.5;
422
+ color: #f1f5f9;
423
+ background: #090e1a;
424
+ border: none;
425
+ resize: vertical;
426
+ outline: none;
427
+ tab-size: 2;
428
+ box-sizing: border-box;
429
+ }
430
+
431
+ .debug-payload-textarea:focus {
432
+ background: #070b14;
433
+ }
434
+
435
+ .debug-payload-textarea:focus-visible {
436
+ outline: 1px solid var(--input-border-focus);
437
+ }
438
+
439
+ .debug-json-error {
440
+ padding: 0.5rem 0.75rem;
441
+ background: rgba(239, 68, 68, 0.15);
442
+ border-top: 1px solid rgba(239, 68, 68, 0.35);
443
+ color: #fca5a5;
444
+ font-size: 0.78rem;
445
+ font-family: monospace;
446
+ }
447
+
448
+ .debug-interceptor-modal.maximized {
449
+ width: 98vw;
450
+ max-width: 98vw;
451
+ height: 96vh;
452
+ max-height: 96vh;
453
+ display: flex;
454
+ flex-direction: column;
455
+ }
456
+
457
+ .debug-interceptor-modal.maximized .debug-modal-body {
458
+ flex: 1;
459
+ display: flex;
460
+ flex-direction: column;
461
+ min-height: 0;
462
+ overflow: hidden;
463
+ }
464
+
465
+ .debug-interceptor-modal.maximized .debug-editor-wrapper {
466
+ flex: 1;
467
+ display: flex;
468
+ flex-direction: column;
469
+ min-height: 0;
470
+ }
471
+
472
+ .debug-interceptor-modal.maximized .debug-payload-textarea {
473
+ flex: 1;
474
+ height: 100%;
475
+ max-height: none;
476
+ }
477
+
478
+ .btn-secondary-action {
479
+ background: rgba(245, 158, 11, 0.15);
480
+ border: 1px solid rgba(245, 158, 11, 0.35);
481
+ color: #fbbf24;
482
+ padding: 0.55rem 0.95rem;
483
+ border-radius: var(--radius-md);
484
+ font-weight: 500;
485
+ font-size: 0.85rem;
486
+ cursor: pointer;
487
+ transition: all 0.15s;
488
+ }
489
+
490
+ .btn-secondary-action:hover {
491
+ background: rgba(245, 158, 11, 0.25);
492
+ border-color: #f59e0b;
493
+ color: #fde68a;
494
+ }
495
+
496
+ .debug-raw-toggle-wrapper {
497
+ display: flex;
498
+ align-items: center;
499
+ gap: 0.5rem;
500
+ color: #cbd5e1;
501
+ }
502
+
503
+ .raw-toggle-label {
504
+ font-weight: 500;
505
+ font-size: 0.78rem;
506
+ color: #cbd5e1;
507
+ }
508
+
509
+ .raw-status-badge {
510
+ font-size: 0.65rem;
511
+ font-weight: 700;
512
+ padding: 0.15rem 0.45rem;
513
+ border-radius: var(--radius-full);
514
+ text-transform: uppercase;
515
+ letter-spacing: 0.04em;
516
+ background: #1e293b;
517
+ color: #64748b;
518
+ border: 1px solid rgba(255, 255, 255, 0.05);
519
+ }
520
+
521
+ .raw-status-badge.active {
522
+ background: rgba(6, 182, 212, 0.2);
523
+ color: #22d3ee;
524
+ border-color: rgba(6, 182, 212, 0.4);
525
+ }
526
+
527
+ .switch.switch-sm {
528
+ width: 32px;
529
+ height: 18px;
530
+ }
531
+
532
+ .switch.switch-sm .slider {
533
+ border-radius: 18px;
534
+ }
535
+
536
+ .switch.switch-sm .slider:before {
537
+ height: 12px;
538
+ width: 12px;
539
+ left: 3px;
540
+ bottom: 3px;
541
+ }
542
+
543
+ .switch.switch-sm input:checked + .slider:before {
544
+ transform: translateX(14px);
545
+ }
546
+
547
+ .debug-log-content {
548
+ flex: 1;
549
+ overflow-y: auto;
550
+ padding: 0.75rem;
551
+ font-family: var(--font-mono);
552
+ font-size: 0.76rem;
553
+ line-height: 1.55;
554
+ display: flex;
555
+ flex-direction: column;
556
+ gap: 0.45rem;
557
+ background: var(--code-bg);
558
+ scroll-behavior: smooth;
559
+ }
560
+
561
+ .debug-entry {
562
+ display: flex;
563
+ flex-direction: column;
564
+ gap: 0.15rem;
565
+ word-break: break-word;
566
+ padding: 0.55rem 0.65rem;
567
+ border-radius: var(--radius-md);
568
+ background: var(--bg-surface);
569
+ border: 1px solid var(--border-subtle);
570
+ border-left: 3px solid transparent;
571
+ box-shadow: var(--shadow-xs);
572
+ animation: fadeIn 0.15s ease-out;
573
+ }
574
+
575
+ .debug-entry.debug-entry-network {
576
+ border-left-color: #38bdf8;
577
+ background: rgba(56, 189, 248, 0.04);
578
+ }
579
+
580
+ .debug-entry.debug-entry-thinking {
581
+ border-left-color: #eab308;
582
+ background: rgba(234, 179, 8, 0.05);
583
+ }
584
+
585
+ .debug-entry.debug-entry-tool {
586
+ border-left-color: #a855f7;
587
+ background: rgba(168, 85, 247, 0.05);
588
+ }
589
+
590
+ .debug-entry.debug-entry-stats {
591
+ border-left-color: #22c55e;
592
+ background: rgba(34, 197, 94, 0.04);
593
+ }
594
+
595
+ .debug-entry.debug-entry-error {
596
+ border-left-color: #ef4444;
597
+ background: rgba(239, 68, 68, 0.07);
598
+ }
599
+
600
+ .debug-entry.debug-entry-warning {
601
+ border-left-color: #f59e0b;
602
+ background: rgba(245, 158, 11, 0.07);
603
+ }
604
+
605
+ .debug-entry.debug-entry-system {
606
+ border-left-color: #64748b;
607
+ background: rgba(100, 116, 139, 0.04);
608
+ }
609
+
610
+ .debug-entry-header {
611
+ display: flex;
612
+ align-items: center;
613
+ gap: 0.45rem;
614
+ font-size: 0.7rem;
615
+ margin-bottom: 0.15rem;
616
+ }
617
+
618
+ .debug-time {
619
+ color: #64748b;
620
+ font-size: 0.68rem;
621
+ }
622
+
623
+ .debug-tag {
624
+ font-weight: 700;
625
+ font-size: 0.65rem;
626
+ padding: 0.05rem 0.35rem;
627
+ border-radius: 3px;
628
+ text-transform: uppercase;
629
+ letter-spacing: 0.03em;
630
+ }
631
+
632
+ .debug-tag.network {
633
+ background: rgba(56, 189, 248, 0.18);
634
+ color: #38bdf8;
635
+ }
636
+
637
+ .debug-tag.thinking {
638
+ background: rgba(234, 179, 8, 0.22);
639
+ color: #fde047;
640
+ }
641
+
642
+ .debug-tag.tool {
643
+ background: rgba(168, 85, 247, 0.22);
644
+ color: #d8b4fe;
645
+ }
646
+
647
+ .debug-tag.stats {
648
+ background: rgba(34, 197, 94, 0.2);
649
+ color: #4ade80;
650
+ }
651
+
652
+ .debug-tag.error {
653
+ background: rgba(239, 68, 68, 0.25);
654
+ color: #fca5a5;
655
+ }
656
+
657
+ .debug-tag.warning {
658
+ background: rgba(245, 158, 11, 0.25);
659
+ color: #fde68a;
660
+ }
661
+
662
+ .debug-tag.system {
663
+ background: rgba(100, 116, 139, 0.25);
664
+ color: #cbd5e1;
665
+ }
666
+
667
+ .debug-msg {
668
+ color: var(--code-text);
669
+ white-space: pre-wrap;
670
+ font-family: var(--font-mono);
671
+ }
672
+
673
+ .debug-entry-thinking .debug-msg {
674
+ color: #fef08a;
675
+ font-style: italic;
676
+ line-height: 1.5;
677
+ }
678
+
679
+ .debug-entry-error .debug-msg {
680
+ color: #fca5a5;
681
+ }
682
+
683
+ .debug-entry-warning .debug-msg {
684
+ color: #fde68a;
685
+ }
686
+
687
+ .debug-entry.debug-entry-raw {
688
+ border-left-color: #06b6d4;
689
+ background: rgba(6, 182, 212, 0.05);
690
+ }
691
+
692
+ .debug-entry.debug-entry-raw.raw-outgoing {
693
+ border-left-color: #3b82f6;
694
+ background: rgba(59, 130, 246, 0.06);
695
+ }
696
+
697
+ .debug-tag.raw {
698
+ background: rgba(6, 182, 212, 0.2);
699
+ color: #22d3ee;
700
+ }
701
+
702
+ .debug-entry.debug-entry-raw.raw-outgoing .debug-tag.raw {
703
+ background: rgba(59, 130, 246, 0.22);
704
+ color: #60a5fa;
705
+ }
706
+
707
+ .debug-entry-raw .debug-msg {
708
+ color: #a5f3fc;
709
+ word-break: break-all;
710
+ font-size: 0.72rem;
711
+ line-height: 1.4;
712
+ }
713
+
714
+ .debug-entry-raw.raw-outgoing .debug-msg {
715
+ color: #bfdbfe;
716
+ }
717
+
718
+ .debug-entry-tool .debug-msg {
719
+ color: #e9d5ff;
720
+ }
721
+
722
+ .btn-debug-action:focus-visible,
723
+ .debug-tab:focus-visible,
724
+ .debug-toggle-wrapper .switch:focus-within {
725
+ outline: none;
726
+ box-shadow: var(--input-focus-ring);
727
+ }
728
+
729
+ /* Responsividad en pantallas pequeñas */
730
+ @media (max-width: 900px) {
731
+ .debug-panel {
732
+ position: fixed;
733
+ top: 0;
734
+ right: 0;
735
+ bottom: 0;
736
+ height: 100%;
737
+ height: 100dvh;
738
+ height: var(--app-height, 100dvh);
739
+ width: 92vw;
740
+ max-width: 92vw;
741
+ z-index: 1000;
742
+ box-shadow: -10px 0 30px rgba(0, 0, 0, 0.5);
743
+ }
744
+ }
745
+
746
+ @media (max-width: 768px) {
747
+ .debug-interceptor-modal {
748
+ width: 100vw;
749
+ width: 100dvw;
750
+ max-width: 100vw;
751
+ max-width: 100dvw;
752
+ left: 0;
753
+ right: 0;
754
+ margin-left: 0;
755
+ margin-right: 0;
756
+ border-left: none;
757
+ border-right: none;
758
+ border-radius: 0;
759
+ padding-left: env(safe-area-inset-left, 0px);
760
+ padding-right: env(safe-area-inset-right, 0px);
761
+ }
762
+
763
+ .debug-interceptor-modal .modal-header {
764
+ flex-wrap: wrap;
765
+ gap: 0.5rem;
766
+ }
767
+
768
+ .debug-modal-send-actions {
769
+ order: 3;
770
+ width: 100%;
771
+ }
772
+
773
+ .btn-debug-header-action {
774
+ flex: 1 1 0;
775
+ justify-content: center;
776
+ }
777
+ }