revengelibrary 0.1.5__py3-none-any.whl → 0.1.7__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.
@@ -0,0 +1,405 @@
1
+ @import url("https://fonts.googleapis.com/css2?family=Sora:wght@400;600;700&family=JetBrains+Mono:wght@400;600&display=swap");
2
+
3
+ :root {
4
+ --bg: #eef4ff;
5
+ --bg-alt: #fefcf8;
6
+ --ink: #0f172a;
7
+ --muted: #4a5a72;
8
+ --card: rgba(255, 255, 255, 0.84);
9
+ --line: rgba(15, 23, 42, 0.12);
10
+ --primary: #0a84ff;
11
+ --accent: #ff6d2d;
12
+ --success: #11a36a;
13
+ --editor-bg: #f8fbff;
14
+ --terminal-bg: #0f172a;
15
+ --terminal-ink: #dbe8ff;
16
+ --radius: 20px;
17
+ --shadow: 0 22px 48px rgba(17, 24, 39, 0.12);
18
+ }
19
+
20
+ *,
21
+ *::before,
22
+ *::after {
23
+ box-sizing: border-box;
24
+ }
25
+
26
+ html,
27
+ body {
28
+ margin: 0;
29
+ min-height: 100%;
30
+ }
31
+
32
+ body {
33
+ font-family: "Sora", sans-serif;
34
+ color: var(--ink);
35
+ background: linear-gradient(140deg, var(--bg), var(--bg-alt));
36
+ }
37
+
38
+ .ambient {
39
+ position: fixed;
40
+ inset: 0;
41
+ z-index: -1;
42
+ overflow: hidden;
43
+ pointer-events: none;
44
+ }
45
+
46
+ .orb {
47
+ position: absolute;
48
+ border-radius: 50%;
49
+ filter: blur(16px);
50
+ opacity: 0.5;
51
+ }
52
+
53
+ .orb-a {
54
+ width: 430px;
55
+ height: 430px;
56
+ top: -120px;
57
+ right: -80px;
58
+ background: radial-gradient(circle, #74b7ff, transparent 70%);
59
+ }
60
+
61
+ .orb-b {
62
+ width: 340px;
63
+ height: 340px;
64
+ bottom: 5%;
65
+ left: -70px;
66
+ background: radial-gradient(circle, #ffc79e, transparent 68%);
67
+ }
68
+
69
+ .orb-c {
70
+ width: 300px;
71
+ height: 300px;
72
+ top: 35%;
73
+ left: 35%;
74
+ background: radial-gradient(circle, #b9ffd8, transparent 70%);
75
+ }
76
+
77
+ .shell {
78
+ width: min(1600px, 96vw);
79
+ margin: 20px auto;
80
+ display: grid;
81
+ gap: 14px;
82
+ animation: reveal 0.45s ease;
83
+ }
84
+
85
+ .topbar,
86
+ .panel {
87
+ border: 1px solid var(--line);
88
+ border-radius: var(--radius);
89
+ background: var(--card);
90
+ backdrop-filter: blur(8px);
91
+ box-shadow: var(--shadow);
92
+ }
93
+
94
+ .topbar {
95
+ padding: 12px 16px;
96
+ display: flex;
97
+ align-items: center;
98
+ justify-content: space-between;
99
+ gap: 18px;
100
+ }
101
+
102
+ .brand {
103
+ display: flex;
104
+ align-items: center;
105
+ gap: 12px;
106
+ }
107
+
108
+ .brand-mark {
109
+ width: 44px;
110
+ height: 44px;
111
+ border-radius: 12px;
112
+ display: grid;
113
+ place-items: center;
114
+ color: #fff;
115
+ font-weight: 700;
116
+ background: linear-gradient(140deg, var(--primary), #2f9cf9);
117
+ letter-spacing: 0.03em;
118
+ }
119
+
120
+ .brand-copy strong {
121
+ display: block;
122
+ font-size: 0.95rem;
123
+ }
124
+
125
+ .brand-copy span {
126
+ color: var(--muted);
127
+ font-size: 0.76rem;
128
+ }
129
+
130
+ .top-actions {
131
+ display: flex;
132
+ flex-wrap: wrap;
133
+ gap: 8px;
134
+ }
135
+
136
+ .btn {
137
+ border: 1px solid transparent;
138
+ border-radius: 12px;
139
+ font: inherit;
140
+ font-size: 0.82rem;
141
+ font-weight: 600;
142
+ padding: 8px 12px;
143
+ cursor: pointer;
144
+ transition: transform 0.15s ease, box-shadow 0.2s ease, border-color 0.2s ease;
145
+ }
146
+
147
+ .btn:hover {
148
+ transform: translateY(-1px);
149
+ }
150
+
151
+ .btn:active {
152
+ transform: translateY(0);
153
+ }
154
+
155
+ .btn.primary {
156
+ color: #fff;
157
+ background: linear-gradient(140deg, var(--primary), #1376d6);
158
+ box-shadow: 0 9px 20px rgba(10, 132, 255, 0.32);
159
+ }
160
+
161
+ .btn.accent {
162
+ color: #fff;
163
+ background: linear-gradient(140deg, var(--accent), #e2541a);
164
+ box-shadow: 0 9px 20px rgba(255, 109, 45, 0.3);
165
+ }
166
+
167
+ .btn.ghost {
168
+ border-color: var(--line);
169
+ background: rgba(255, 255, 255, 0.9);
170
+ color: var(--ink);
171
+ }
172
+
173
+ .workspace {
174
+ display: grid;
175
+ grid-template-columns: 260px minmax(0, 1fr) 340px;
176
+ gap: 14px;
177
+ min-height: 70vh;
178
+ }
179
+
180
+ .panel {
181
+ padding: 10px;
182
+ display: flex;
183
+ flex-direction: column;
184
+ min-height: 0;
185
+ }
186
+
187
+ .panel-head {
188
+ display: flex;
189
+ align-items: baseline;
190
+ justify-content: space-between;
191
+ border-bottom: 1px solid var(--line);
192
+ padding: 8px 6px 10px;
193
+ margin-bottom: 10px;
194
+ }
195
+
196
+ .panel-head h2 {
197
+ margin: 0;
198
+ font-size: 0.88rem;
199
+ }
200
+
201
+ .panel-head small {
202
+ color: var(--muted);
203
+ font-size: 0.72rem;
204
+ }
205
+
206
+ .tree {
207
+ overflow: auto;
208
+ padding: 4px 2px 6px;
209
+ }
210
+
211
+ .tree-group {
212
+ margin-left: 10px;
213
+ border-left: 1px dashed rgba(15, 23, 42, 0.18);
214
+ padding-left: 8px;
215
+ }
216
+
217
+ .tree-row {
218
+ width: 100%;
219
+ margin: 2px 0;
220
+ padding: 7px 9px;
221
+ border: 1px solid transparent;
222
+ border-radius: 10px;
223
+ text-align: left;
224
+ font-family: "JetBrains Mono", monospace;
225
+ font-size: 0.75rem;
226
+ cursor: pointer;
227
+ color: var(--ink);
228
+ background: transparent;
229
+ }
230
+
231
+ .tree-row:hover {
232
+ background: rgba(10, 132, 255, 0.08);
233
+ border-color: rgba(10, 132, 255, 0.2);
234
+ }
235
+
236
+ .tree-row.active {
237
+ color: #fff;
238
+ border-color: transparent;
239
+ background: linear-gradient(140deg, #0b71d9, #0aa2ff);
240
+ }
241
+
242
+ .editor-shell {
243
+ min-height: 0;
244
+ flex: 1;
245
+ display: grid;
246
+ grid-template-columns: 58px 1fr;
247
+ border: 1px solid var(--line);
248
+ border-radius: 14px;
249
+ overflow: hidden;
250
+ background: var(--editor-bg);
251
+ }
252
+
253
+ .line-numbers {
254
+ margin: 0;
255
+ padding: 16px 8px;
256
+ border-right: 1px solid var(--line);
257
+ font: 0.74rem/1.5 "JetBrains Mono", monospace;
258
+ color: #7186a7;
259
+ text-align: right;
260
+ overflow: hidden;
261
+ user-select: none;
262
+ background: rgba(10, 132, 255, 0.04);
263
+ }
264
+
265
+ #editor {
266
+ border: 0;
267
+ resize: none;
268
+ outline: none;
269
+ min-height: 100%;
270
+ padding: 16px;
271
+ font: 0.84rem/1.55 "JetBrains Mono", monospace;
272
+ color: #111827;
273
+ background: transparent;
274
+ }
275
+
276
+ .assistant-panel {
277
+ gap: 8px;
278
+ }
279
+
280
+ .controls {
281
+ display: grid;
282
+ gap: 8px;
283
+ }
284
+
285
+ .controls label {
286
+ display: grid;
287
+ gap: 4px;
288
+ font-size: 0.74rem;
289
+ color: var(--muted);
290
+ }
291
+
292
+ .controls input,
293
+ .controls select,
294
+ .chat-form textarea {
295
+ width: 100%;
296
+ border: 1px solid var(--line);
297
+ border-radius: 10px;
298
+ padding: 8px 10px;
299
+ font: 0.78rem/1.4 "JetBrains Mono", monospace;
300
+ color: var(--ink);
301
+ background: #fff;
302
+ }
303
+
304
+ .chat-log {
305
+ flex: 1;
306
+ min-height: 0;
307
+ overflow: auto;
308
+ border: 1px solid var(--line);
309
+ border-radius: 12px;
310
+ padding: 8px;
311
+ background: rgba(255, 255, 255, 0.88);
312
+ }
313
+
314
+ .msg {
315
+ margin: 0 0 8px;
316
+ padding: 8px 9px;
317
+ border-radius: 10px;
318
+ font-size: 0.77rem;
319
+ line-height: 1.45;
320
+ }
321
+
322
+ .msg.user {
323
+ color: #002857;
324
+ background: rgba(10, 132, 255, 0.15);
325
+ }
326
+
327
+ .msg.ai {
328
+ color: #472200;
329
+ background: rgba(255, 109, 45, 0.16);
330
+ }
331
+
332
+ .msg.system {
333
+ color: #06442d;
334
+ background: rgba(17, 163, 106, 0.17);
335
+ }
336
+
337
+ .chat-form {
338
+ display: grid;
339
+ gap: 8px;
340
+ }
341
+
342
+ .terminal-panel pre {
343
+ margin: 0;
344
+ border-radius: 14px;
345
+ border: 1px solid rgba(203, 213, 225, 0.18);
346
+ background: var(--terminal-bg);
347
+ color: var(--terminal-ink);
348
+ padding: 12px;
349
+ min-height: 120px;
350
+ max-height: 200px;
351
+ overflow: auto;
352
+ font: 0.74rem/1.5 "JetBrains Mono", monospace;
353
+ }
354
+
355
+ @keyframes reveal {
356
+ from {
357
+ opacity: 0;
358
+ transform: translateY(6px);
359
+ }
360
+ to {
361
+ opacity: 1;
362
+ transform: translateY(0);
363
+ }
364
+ }
365
+
366
+ @media (max-width: 1180px) {
367
+ .workspace {
368
+ grid-template-columns: 220px minmax(0, 1fr);
369
+ grid-template-areas:
370
+ "files editor"
371
+ "assistant assistant";
372
+ }
373
+
374
+ .files-panel {
375
+ grid-area: files;
376
+ }
377
+
378
+ .editor-panel {
379
+ grid-area: editor;
380
+ }
381
+
382
+ .assistant-panel {
383
+ grid-area: assistant;
384
+ min-height: 360px;
385
+ }
386
+ }
387
+
388
+ @media (max-width: 880px) {
389
+ .topbar {
390
+ flex-direction: column;
391
+ align-items: stretch;
392
+ }
393
+
394
+ .workspace {
395
+ grid-template-columns: 1fr;
396
+ grid-template-areas:
397
+ "files"
398
+ "editor"
399
+ "assistant";
400
+ }
401
+
402
+ .editor-shell {
403
+ grid-template-columns: 50px 1fr;
404
+ }
405
+ }