openfree commited on
Commit
2104c1e
·
verified ·
1 Parent(s): 038b381

Delete app-backup.css

Browse files
Files changed (1) hide show
  1. app-backup.css +0 -550
app-backup.css DELETED
@@ -1,550 +0,0 @@
1
- /* Modern color scheme */
2
- :root {
3
- /* 주요 브랜드 컬러 */
4
- --primary: #0066cc; /* 메인 브랜드 컬러 */
5
- --secondary: #3385ff; /* 밝은 액센트 */
6
- --accent: #66a3ff; /* 부드러운 포인트 컬러 */
7
- --tertiary: #5d2e8c; /* 포인트 컬러 */
8
-
9
- /* 배경 컬러 */
10
- --background: #f7f9fc; /* 메인 배경 */
11
- --surface: #ffffff; /* 카드 배경 */
12
-
13
- /* 텍스트 컬러 */
14
- --text-primary: #2c3e50; /* 주요 텍스트 */
15
- --text-secondary: #546e7a; /* 부가 텍스트 */
16
- --text-tertiary: #78909c; /* 덜 중요한 텍스트 */
17
-
18
- /* 기능성 컬러 */
19
- --success: #34c759; /* 성공/확인 */
20
- --warning: #ff9500; /* 경고/주의 */
21
- --error: #ff3b30; /* 오류/삭제 */
22
-
23
- /* 중립 컬러 */
24
- --neutral-100: #f8f9fa;
25
- --neutral-200: #e9ecef;
26
- --neutral-300: #dee2e6;
27
- --neutral-400: #ced4da;
28
-
29
- /* 그림자 및 효과 */
30
- --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.05);
31
- --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.08);
32
- --shadow-lg: 0 8px 16px rgba(0, 0, 0, 0.1);
33
- --shadow-xl: 0 12px 24px rgba(0, 0, 0, 0.12);
34
-
35
- /* 둥근 모서리 */
36
- --radius-sm: 6px;
37
- --radius-md: 8px;
38
- --radius-lg: 12px;
39
- --radius-xl: 16px;
40
- }
41
-
42
- body {
43
- font-family: 'Inter', system-ui, sans-serif;
44
- background: var(--background);
45
- color: var(--text-primary);
46
- line-height: 1.5;
47
- }
48
-
49
- /* 헤더 및 레이아웃 */
50
- .left_header {
51
- display: flex;
52
- flex-direction: column;
53
- justify-content: center;
54
- align-items: center;
55
- background: linear-gradient(135deg, var(--surface), var(--neutral-100));
56
- backdrop-filter: blur(10px);
57
- border-radius: 24px;
58
- padding: 2rem;
59
- box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
60
- border: 1px solid var(--neutral-200);
61
- text-align: center;
62
- margin-bottom: 2rem;
63
- }
64
-
65
- .left_header img {
66
- width: 180px;
67
- margin-bottom: 1rem;
68
- border-radius: 12px;
69
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
70
- }
71
-
72
- .left_header h1 {
73
- margin: 0.5rem 0;
74
- font-weight: 600;
75
- color: var(--text-primary);
76
- }
77
-
78
- /* 패널 레이아웃 및 높이 */
79
- .equal-height-container {
80
- display: flex;
81
- min-height: 900px;
82
- }
83
-
84
- .equal-height-col {
85
- display: flex;
86
- flex-direction: column;
87
- height: 100%;
88
- }
89
-
90
- .fixed-height {
91
- height: 900px !important;
92
- }
93
-
94
- .fixed-content-height {
95
- height: 870px !important; /* 헤더(30px)를 제외한 높이 */
96
- }
97
-
98
- .fixed-input-height {
99
- height: 730px !important;
100
- max-height: 730px !important;
101
- }
102
-
103
- /* 좌측 패널 상단 헤더 */
104
- .render_header {
105
- height: 30px;
106
- width: 100%;
107
- padding: 5px 16px;
108
- background: linear-gradient(to right, var(--neutral-100), var(--neutral-200));
109
- border-radius: var(--radius-lg) var(--radius-lg) 0 0;
110
- margin-top: 0;
111
- box-shadow: var(--shadow-sm);
112
- border-bottom: 1px solid var(--neutral-300);
113
- }
114
-
115
- .header_btn {
116
- display: inline-block;
117
- height: 10px;
118
- width: 10px;
119
- border-radius: 50%;
120
- margin-right: 4px;
121
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
122
- }
123
-
124
- .render_header > .header_btn:nth-child(1) {
125
- background-color: var(--error);
126
- }
127
-
128
- .render_header > .header_btn:nth-child(2) {
129
- background-color: var(--warning);
130
- }
131
-
132
- .render_header > .header_btn:nth-child(3) {
133
- background-color: var(--success);
134
- }
135
-
136
- .right_content {
137
- height: 870px; /* 헤더(30px)를 제외한 높이 */
138
- display: flex;
139
- flex-direction: column;
140
- justify-content: center;
141
- align-items: center;
142
- background: var(--surface);
143
- border-radius: 0 0 var(--radius-lg) var(--radius-lg);
144
- }
145
-
146
- /* 패널 스타일 */
147
- .right_panel {
148
- position: relative;
149
- height: 900px;
150
- display: flex;
151
- flex-direction: column;
152
- padding-top: 0;
153
- }
154
-
155
- .panel {
156
- display: flex;
157
- flex-direction: column;
158
- height: 900px;
159
- background: var(--surface);
160
- border-radius: var(--radius-lg);
161
- box-shadow: var(--shadow-lg);
162
- border: 1px solid var(--neutral-300);
163
- overflow: hidden;
164
- }
165
-
166
- .input-panel {
167
- display: flex;
168
- flex-direction: column;
169
- margin-top: 0;
170
- background: var(--surface);
171
- border-radius: var(--radius-lg);
172
- border: 1px solid var(--neutral-300);
173
- box-shadow: var(--shadow-lg);
174
- padding: 15px;
175
- height: 870px !important; /* 버튼 영역 제외한 높이 */
176
- max-height: 870px !important;
177
- overflow: hidden;
178
- }
179
-
180
- .html_content {
181
- flex: 1;
182
- height: 870px; /* 헤더(30px)를 제외한 높이 */
183
- border-radius: 0 0 var(--radius-lg) var(--radius-lg);
184
- overflow: hidden;
185
- box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.05);
186
- background: var(--surface);
187
- }
188
-
189
- /* 버튼 영역 스타일 */
190
- .right-top-buttons {
191
- margin-bottom: 15px;
192
- background: linear-gradient(to right, var(--neutral-100), var(--neutral-200));
193
- padding: 15px;
194
- border-radius: var(--radius-lg);
195
- box-shadow: var(--shadow-md);
196
- border: 1px solid var(--neutral-300);
197
- }
198
-
199
- /* 상단 메뉴 버튼과 하단 액션 버튼 구분 */
200
- .setting-buttons {
201
- display: flex;
202
- gap: 8px;
203
- padding: 8px 0;
204
- justify-content: space-between;
205
- border-bottom: 2px dashed var(--neutral-300);
206
- padding-bottom: 12px;
207
- margin-bottom: 12px;
208
- }
209
-
210
- .setting-buttons .ant-btn {
211
- background: linear-gradient(135deg, var(--surface), var(--neutral-100));
212
- border: 1px solid var(--neutral-300);
213
- color: var(--text-primary);
214
- font-weight: 600;
215
- box-shadow: var(--shadow-sm);
216
- min-width: 100px;
217
- height: 38px;
218
- border-radius: var(--radius-lg);
219
- }
220
-
221
- .setting-buttons .ant-btn:hover {
222
- background: linear-gradient(135deg, var(--neutral-100), var(--neutral-200));
223
- transform: translateY(-2px);
224
- box-shadow: var(--shadow-md);
225
- }
226
-
227
- .action-buttons {
228
- margin-top: 5px;
229
- margin-bottom: 8px;
230
- display: flex;
231
- flex-wrap: wrap;
232
- gap: 8px;
233
- }
234
-
235
- .action-buttons .ant-btn {
236
- min-width: 80px;
237
- height: 40px;
238
- font-weight: 600;
239
- border-radius: var(--radius-md);
240
- box-shadow: var(--shadow-sm);
241
- text-transform: uppercase;
242
- letter-spacing: 0.5px;
243
- font-size: 0.85em;
244
- }
245
-
246
- .action-buttons .ant-btn-primary {
247
- background: linear-gradient(to right, var(--primary), var(--secondary));
248
- border: none;
249
- color: white;
250
- }
251
-
252
- .action-buttons .ant-btn-primary:hover {
253
- background: linear-gradient(to right, var(--secondary), var(--primary));
254
- transform: translateY(-2px);
255
- box-shadow: 0 4px 12px rgba(0, 102, 204, 0.3);
256
- }
257
-
258
- .action-buttons .ant-btn-default {
259
- background: var(--surface);
260
- border: 1px solid var(--neutral-300);
261
- color: var(--text-primary);
262
- }
263
-
264
- .action-buttons .ant-btn-default:hover {
265
- border-color: var(--secondary);
266
- color: var(--secondary);
267
- transform: translateY(-2px);
268
- box-shadow: var(--shadow-md);
269
- }
270
-
271
- /* 각 버튼 스타일 커스텀 - 클래스 기반 */
272
- .send-btn {
273
- background: linear-gradient(to right, var(--primary), var(--secondary)) !important;
274
- border: none !important;
275
- color: white !important;
276
- }
277
-
278
- .boost-btn {
279
- background: linear-gradient(to right, var(--tertiary), #9966cc) !important;
280
- border: none !important;
281
- color: white !important;
282
- }
283
-
284
- .execute-btn {
285
- background: linear-gradient(to right, var(--success), #66d9a8) !important;
286
- border: none !important;
287
- color: white !important;
288
- }
289
-
290
- .deploy-btn {
291
- background: linear-gradient(to right, var(--warning), #ffcc66) !important;
292
- border: none !important;
293
- color: white !important;
294
- }
295
-
296
- .clear-btn {
297
- background: linear-gradient(to right, #f44336, #ff7961) !important;
298
- border: none !important;
299
- color: white !important;
300
- }
301
-
302
- /* 메뉴 버튼 추가 스타일 */
303
- .code-btn, .history-btn, .template-btn {
304
- transition: all 0.3s ease;
305
- }
306
-
307
- .code-btn:hover, .history-btn:hover, .template-btn:hover {
308
- transform: translateY(-2px);
309
- box-shadow: var(--shadow-md);
310
- }
311
-
312
- /* 텍스트 영역 스타일링 */
313
- #component-0 textarea,
314
- .gradio-container textarea,
315
- .ant-input-textarea-large textarea {
316
- height: 730px !important;
317
- min-height: 300px !important;
318
- resize: vertical !important;
319
- border: 2px solid var(--neutral-200);
320
- border-radius: var(--radius-lg);
321
- transition: all 0.3s;
322
- background: var(--surface);
323
- color: var(--text-primary);
324
- padding: 1rem;
325
- flex-grow: 1;
326
- box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.03);
327
- }
328
-
329
- #component-0 textarea:focus,
330
- .gradio-container textarea:focus,
331
- .ant-input-textarea-large textarea:focus {
332
- border-color: var(--accent);
333
- box-shadow: 0 0 0 3px rgba(102, 163, 255, 0.2);
334
- }
335
-
336
- /* 우측 박스 텍스트 폰트 크기 20% 감소 */
337
- .input-panel textarea,
338
- .input-panel .ant-input-textarea-large textarea,
339
- .input-panel .help-text {
340
- font-size: 0.8em; /* 기본 폰트 크기에서 20% 감소 */
341
- }
342
-
343
- .ant-input-textarea {
344
- display: flex;
345
- flex-direction: column;
346
- flex: 1;
347
- }
348
-
349
- .input-panel .ant-input-textarea {
350
- flex: 1;
351
- display: flex;
352
- flex-direction: column;
353
- }
354
-
355
- .input-panel .ant-input-textarea-large {
356
- flex: 1;
357
- }
358
-
359
- .input-panel textarea {
360
- flex-grow: 1;
361
- height: calc(100% - 120px) !important; /* 도움말 텍스트와 배포 결과 공간 확보 */
362
- min-height: 300px !important;
363
- }
364
-
365
- /* 도움말 텍스트 스타일 */
366
- .help-text {
367
- padding: 8px 12px;
368
- background-color: var(--neutral-100);
369
- border-radius: var(--radius-md);
370
- color: var(--text-secondary);
371
- font-style: italic;
372
- margin-top: 8px;
373
- border-left: 3px solid var(--accent);
374
- }
375
-
376
- /* 배포 결과 스타일링 */
377
- .deploy-result {
378
- margin-top: 10px;
379
- height: 90px;
380
- max-height: 90px;
381
- overflow-y: auto;
382
- background-color: var(--neutral-100);
383
- padding: 10px;
384
- border-radius: var(--radius-md);
385
- border-left: 3px solid var(--primary);
386
- }
387
-
388
- #deploy-result a {
389
- color: var(--primary);
390
- font-weight: bold;
391
- text-decoration: underline;
392
- }
393
-
394
- [label="배포 결과"] {
395
- margin-top: 15px;
396
- padding: 12px;
397
- background-color: var(--neutral-100);
398
- border-radius: var(--radius-md);
399
- border-left: 3px solid var(--primary);
400
- }
401
-
402
- .deploy-success {
403
- color: var(--success);
404
- padding: 10px;
405
- background-color: rgba(52, 199, 89, 0.1);
406
- border-radius: var(--radius-md);
407
- }
408
-
409
- .deploy-error {
410
- color: var(--error);
411
- padding: 10px;
412
- background-color: rgba(255, 59, 48, 0.1);
413
- border-radius: var(--radius-md);
414
- }
415
-
416
- /* Drawer customization */
417
- .ant-drawer-content-wrapper {
418
- border-radius: 16px 0 0 16px;
419
- }
420
-
421
- .ant-drawer-header {
422
- background: linear-gradient(to right, var(--primary), var(--tertiary));
423
- color: white;
424
- border-radius: 16px 0 0 0;
425
- }
426
-
427
- .ant-drawer-title {
428
- color: white;
429
- font-weight: 600;
430
- letter-spacing: 0.5px;
431
- }
432
-
433
- .ant-drawer-close {
434
- color: white;
435
- }
436
-
437
- .ant-drawer-body {
438
- background: var(--surface);
439
- }
440
-
441
- /* 탭 컨텐츠 높이 조정 */
442
- .ant-tabs-content {
443
- height: 100%;
444
- }
445
-
446
- .ant-tabs-tabpane {
447
- height: 100%;
448
- display: flex;
449
- flex-direction: column;
450
- }
451
-
452
- /* 히스토리와 템플릿 스타일링 */
453
- .history_chatbot button {
454
- background: none;
455
- border: none;
456
- }
457
-
458
- .session-drawer .chatbot {
459
- height: calc(100vh - 200px);
460
- overflow-y: auto;
461
- }
462
-
463
- .session-history {
464
- height: 700px;
465
- overflow-y: auto;
466
- padding: 1rem;
467
- }
468
-
469
- .prompt-grid {
470
- display: grid;
471
- grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
472
- gap: 1.5rem;
473
- padding: 1.5rem;
474
- }
475
-
476
- .prompt-card {
477
- background: var(--surface);
478
- border-radius: var(--radius-lg);
479
- padding: 1.25rem;
480
- cursor: pointer;
481
- transition: all 0.3s;
482
- box-shadow: var(--shadow-sm);
483
- min-height: 300px;
484
- border: 1px solid var(--neutral-200);
485
- }
486
-
487
- .prompt-card:hover {
488
- transform: translateY(-4px);
489
- box-shadow: var(--shadow-lg);
490
- }
491
-
492
- /* 스크롤바 스타일링 */
493
- ::-webkit-scrollbar {
494
- width: 8px;
495
- height: 8px;
496
- }
497
-
498
- ::-webkit-scrollbar-track {
499
- background: var(--neutral-100);
500
- border-radius: 4px;
501
- }
502
-
503
- ::-webkit-scrollbar-thumb {
504
- background: var(--neutral-300);
505
- border-radius: 4px;
506
- }
507
-
508
- ::-webkit-scrollbar-thumb:hover {
509
- background: var(--neutral-400);
510
- }
511
-
512
- /* 애니메이션 */
513
- @keyframes fadeIn {
514
- from { opacity: 0; transform: translateY(10px); }
515
- to { opacity: 1; transform: translateY(0); }
516
- }
517
-
518
- .fade-in {
519
- animation: fadeIn 0.5s ease-out;
520
- }
521
-
522
- @keyframes spin {
523
- to { transform: rotate(360deg); }
524
- }
525
-
526
- /* 푸터 숨기기 */
527
- footer, .footer, div[class*="footer"], #footer {
528
- display: none !important;
529
- }
530
-
531
- /* 반응형 조정 */
532
- @media (max-width: 768px) {
533
- .left_header {
534
- padding: 1rem;
535
- }
536
-
537
- .prompt-grid {
538
- grid-template-columns: 1fr;
539
- }
540
-
541
- .setting-buttons, .action-buttons {
542
- flex-wrap: wrap;
543
- }
544
-
545
- .setting-buttons .ant-btn,
546
- .action-buttons .ant-btn {
547
- min-width: calc(50% - 8px);
548
- margin: 4px;
549
- }
550
- }