ssboost commited on
Commit
1e6714f
ยท
verified ยท
1 Parent(s): 5cd33c9

Update style.css

Browse files
Files changed (1) hide show
  1. style.css +62 -190
style.css CHANGED
@@ -7,12 +7,8 @@ body {
7
  color: #333;
8
  }
9
 
10
- :root {
11
- --primary-color: #FF7F00; /* ์ฃผํ™ฉ์ƒ‰ ํฌ์ธํŠธ ์ปฌ๋Ÿฌ */
12
- }
13
-
14
  .container {
15
- max-width: 1200px;
16
  margin: 20px auto;
17
  padding: 20px;
18
  background-color: white;
@@ -43,7 +39,7 @@ p {
43
  .upload-box {
44
  flex: 1;
45
  min-width: 300px;
46
- border: 2px dashed var(--primary-color); /* ์ฃผํ™ฉ์ƒ‰ ํ…Œ๋‘๋ฆฌ */
47
  border-radius: 5px;
48
  padding: 20px;
49
  text-align: center;
@@ -58,7 +54,7 @@ p {
58
  display: block;
59
  font-weight: bold;
60
  margin-bottom: 10px;
61
- color: var(--primary-color); /* ์ฃผํ™ฉ์ƒ‰ ๋ ˆ์ด๋ธ” */
62
  }
63
 
64
  .file-input {
@@ -67,7 +63,7 @@ p {
67
 
68
  .upload-button {
69
  display: inline-block;
70
- background-color: var(--primary-color); /* ์ฃผํ™ฉ์ƒ‰ ๋ฒ„ํŠผ */
71
  color: white;
72
  padding: 10px 20px;
73
  border-radius: 5px;
@@ -76,56 +72,61 @@ p {
76
  }
77
 
78
  .upload-button:hover {
79
- background-color: #E67300; /* ์ฃผํ™ฉ์ƒ‰ ๋ฒ„ํŠผ ํ˜ธ๋ฒ„ */
80
  }
81
 
82
  /* ์ž‘์—… ์˜์—ญ ๋ž˜ํผ */
83
  .workspace-wrapper {
84
- display: flex;
85
- flex-wrap: wrap;
86
  gap: 20px;
87
  margin-bottom: 20px;
88
  }
89
 
90
  /* ์บ”๋ฒ„์Šค์™€ ์ปจํŠธ๋กค ํŒจ๋„๋“ค์„ ๋ฌถ๋Š” ์˜์—ญ */
91
  .canvas-and-controls {
92
- flex: 3;
93
  display: flex;
94
- flex-direction: column;
95
- min-width: 0;
96
  }
97
 
98
  .canvas-container {
99
  position: relative;
100
- width: 100%;
 
101
  border: 2px solid #333;
102
  border-radius: 4px;
103
- overflow: hidden;
104
- margin-bottom: 20px;
105
  }
106
 
107
  #canvas {
108
- display: block;
109
- width: 100%;
110
- height: auto;
111
  background-color: #ffffff;
112
  cursor: default;
113
  }
114
 
115
- /* ์ปจํŠธ๋กค ํŒจ๋„๋“ค์„ ๋ชจ์•„๋‘๋Š” ์‚ฌ์ด๋“œ๋ฐ” ์—ญํ•  */
116
  .control-panel-sidebar {
117
  display: flex;
118
  flex-direction: column;
119
  gap: 15px;
 
120
  }
121
 
 
122
  .control-group {
123
  display: flex;
124
  flex-direction: column;
 
125
  border: 1px solid #ddd;
126
  padding: 15px;
127
  border-radius: 5px;
128
  background-color: #f9f9f9;
 
129
  }
130
 
131
  .control-group h3 {
@@ -133,7 +134,6 @@ p {
133
  font-size: 1rem;
134
  text-align: center;
135
  width: 100%;
136
- color: var(--primary-color); /* ์ฃผํ™ฉ์ƒ‰ ์ œ๋ชฉ */
137
  }
138
 
139
  .slider-container {
@@ -148,102 +148,21 @@ p {
148
 
149
  .slider-container label {
150
  font-weight: bold;
151
- min-width: 50px;
152
  text-align: left;
153
  flex-shrink: 0;
154
  }
155
 
156
  .slider-container input[type="range"] {
157
- flex-grow: 1;
158
- width: auto;
159
- margin: 0 5px;
160
- -webkit-appearance: none;
161
- background: white;
162
- border-radius: 10px;
163
- height: 6px;
164
- border: 1px solid #ddd;
165
- }
166
-
167
- /* ์Šฌ๋ผ์ด๋” ๋ฐ” ์ฃผํ™ฉ์ƒ‰ */
168
- */.slider-container input[type="range"] {
169
- flex-grow: 1;
170
- width: auto;
171
- margin: 0 5px;
172
- -webkit-appearance: none;
173
- height: 6px;
174
- border-radius: 10px;
175
- background: #e0e0e0;
176
- outline: none;
177
- }
178
-
179
- /* Chrome/Safari/Opera ์Šฌ๋ผ์ด๋” */
180
- .slider-container input[type="range"]::-webkit-slider-runnable-track {
181
- width: 100%;
182
- height: 6px;
183
- background: linear-gradient(to right, var(--primary-color) 0%, var(--primary-color) var(--value-percent, 50%), white var(--value-percent, 50%), white 100%);
184
- border-radius: 10px;
185
- border: 1px solid #ddd;
186
- }
187
-
188
- .slider-container input[type="range"]::-webkit-slider-thumb {
189
- -webkit-appearance: none;
190
- appearance: none;
191
- width: 18px;
192
- height: 18px;
193
- border-radius: 50%;
194
- background: var(--primary-color);
195
- margin-top: -7px;
196
- cursor: pointer;
197
- border: 2px solid white;
198
- box-shadow: 0 1px 3px rgba(0,0,0,0.2);
199
- }
200
-
201
- /* Firefox ์Šฌ๋ผ์ด๋” */
202
- .slider-container input[type="range"]::-moz-range-progress {
203
- background-color: var(--primary-color);
204
- height: 6px;
205
- border-radius: 10px 0 0 10px;
206
- }
207
-
208
- .slider-container input[type="range"]::-moz-range-track {
209
- width: 100%;
210
- height: 6px;
211
- background: white;
212
- border-radius: 10px;
213
- border: 1px solid #ddd;
214
- }
215
-
216
- .slider-container input[type="range"]::-moz-range-thumb {
217
- width: 18px;
218
- height: 18px;
219
- border-radius: 50%;
220
- background: var(--primary-color);
221
- cursor: pointer;
222
- border: 2px solid white;
223
- box-shadow: 0 1px 3px rgba(0,0,0,0.2);
224
- }
225
-
226
- /* Edge/IE ์Šฌ๋ผ์ด๋” */
227
- .slider-container input[type="range"]::-ms-fill-lower {
228
- background: var(--primary-color);
229
- border-radius: 10px 0 0 10px;
230
- }
231
-
232
- .slider-container input[type="range"]::-ms-fill-upper {
233
- background: white;
234
- border-radius: 0 10px 10px 0;
235
- border: 1px solid #ddd;
236
  }
237
 
238
- .slider-container input[type="range"]::-ms-thumb {
239
- width: 18px;
240
- height: 18px;
241
- border-radius: 50%;
242
- background: var(--primary-color);
243
- cursor: pointer;
244
- border: 2px solid white;
245
- box-shadow: 0 1px 3px rgba(0,0,0,0.2);
246
- margin-top: 0;
247
  }
248
 
249
  /* ๋ ˆ์ด์–ด ๋ชฉ๋ก ์Šคํƒ€์ผ */
@@ -265,65 +184,48 @@ p {
265
  }
266
  .layer-item:last-child { border-bottom: none; }
267
  .layer-item:hover { background-color: #f5f5f5; }
268
- .layer-item.active { background-color: #FFF0E6; font-weight: bold; color: var(--primary-color); } /* ์ฃผํ™ฉ์ƒ‰ ๊ฐ•์กฐ */
269
  .layer-name { flex-grow: 1; padding-left: 5px; }
270
  .layer-controls { display: flex; gap: 5px; }
271
  .layer-button {
272
- background-color: #f0f0f0;
273
- border: 1px solid #ddd;
274
- border-radius: 3px;
275
- padding: 2px 5px;
276
- cursor: pointer;
277
- font-size: 11px;
278
- color: #555;
279
  transition: all 0.2s ease;
280
  }
281
- .layer-button:hover {
282
- background-color: var(--primary-color); /* ์ฃผํ™ฉ์ƒ‰ ๋ฒ„ํŠผ ํ˜ธ๋ฒ„ */
283
- color: white;
284
- }
285
 
286
  /* ํ•„ํ„ฐ ํŒจ๋„ ์Šคํƒ€์ผ */
287
  .filter-panel {
 
288
  padding: 15px;
289
  border: 1px solid #ddd;
290
  border-radius: 5px;
291
  background-color: #f9f9f9;
292
  }
293
- .filter-panel h3 {
294
- margin: 0 0 15px 0;
295
- text-align: center;
296
- color: var(--primary-color); /* ์ฃผํ™ฉ์ƒ‰ ์ œ๋ชฉ */
297
- }
298
  .filter-sliders { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 15px; }
299
  .filter-slider-container { display: flex; flex-direction: column; gap: 5px; width: 100%; padding: 0 5px; box-sizing: border-box; }
300
  .filter-slider-container label { font-size: 14px; margin-bottom: 5px; text-align: left; }
301
- .large-slider {
302
- width: 100%;
303
- height: 20px;
304
- accent-color: var(--primary-color); /* ์ฃผํ™ฉ์ƒ‰ ์Šฌ๋ผ์ด๋” */
305
- }
306
- .filter-slider-container .value-display {
307
- text-align: right;
308
- font-weight: bold;
309
- color: var(--primary-color); /* ์ฃผํ™ฉ์ƒ‰ ๊ฐ’ ํ‘œ์‹œ */
310
- }
311
  .filter-buttons { display: flex; justify-content: center; margin-top: 15px; }
312
  #reset-filter-btn { width: auto; padding: 8px 15px; flex-grow: 1; max-width: 200px; }
313
 
 
314
  /* ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์„น์…˜ */
315
  .preview-section {
316
- flex: 2;
317
- display: flex;
318
  flex-direction: column;
319
- align-items: center;
320
- min-width: 0;
321
  }
322
 
323
  .preview-container {
324
- width: 100%;
325
- margin-top: 0;
326
- display: none;
327
  flex-direction: column;
328
  align-items: center;
329
  padding: 10px;
@@ -334,15 +236,14 @@ p {
334
 
335
  .preview-container h3 {
336
  margin-bottom: 10px;
337
- color: var(--primary-color); /* ์ฃผํ™ฉ์ƒ‰ ์ œ๋ชฉ */
338
  }
339
 
340
  #preview-img {
341
  max-width: 100%;
342
- max-height: 400px;
343
  border: 2px solid #333;
344
  border-radius: 4px;
345
- object-fit: contain;
346
  }
347
 
348
  /* ํ•˜๋‹จ ๋ฒ„ํŠผ ์ปจํ…Œ์ด๋„ˆ */
@@ -350,7 +251,7 @@ p {
350
  display: flex;
351
  justify-content: center;
352
  gap: 15px;
353
- margin-top: 20px;
354
  flex-wrap: wrap;
355
  }
356
 
@@ -362,59 +263,30 @@ button {
362
  font-weight: bold;
363
  transition: background-color 0.3s;
364
  }
365
-
366
- .primary-btn { background-color: var(--primary-color); color: white; } /* ์ฃผํ™ฉ์ƒ‰ ๋ฒ„ํŠผ */
367
- .primary-btn:hover { background-color: #E67300; } /* ์ฃผํ™ฉ์ƒ‰ ๋ฒ„ํŠผ ํ˜ธ๋ฒ„ */
368
  .danger-btn { background-color: #e74c3c; color: white; }
369
  .danger-btn:hover { background-color: #c0392b; }
370
- .info-btn { background-color: var(--primary-color); color: white; } /* ์ฃผํ™ฉ์ƒ‰ ๋ฒ„ํŠผ */
371
- .info-btn:hover { background-color: #E67300; } /* ์ฃผํ™ฉ์ƒ‰ ๋ฒ„ํŠผ ํ˜ธ๋ฒ„ */
372
-
373
- /* ์˜ˆ์‹œ ์ด๋ฏธ์ง€ ์Šคํƒ€์ผ */
374
- #example-images-container img {
375
- width: 160px;
376
- height: 160px;
377
- cursor: pointer;
378
- border: 1px solid #ccc;
379
- transition: border-color 0.3s;
380
- }
381
-
382
- #example-images-container img:hover {
383
- border-color: var(--primary-color); /* ์ฃผํ™ฉ์ƒ‰ ํ…Œ๋‘๋ฆฌ ํ˜ธ๋ฒ„ */
384
- }
385
 
386
- /* ์Šคํฌ๋กค๋ฐ” ์Šคํƒ€์ผ๋ง */
387
- ::-webkit-scrollbar {
388
- width: 8px;
389
- height: 8px;
390
- }
391
-
392
- ::-webkit-scrollbar-track {
393
- background: rgba(0, 0, 0, 0.05);
394
- border-radius: 10px;
395
- }
396
-
397
- ::-webkit-scrollbar-thumb {
398
- background: var(--primary-color); /* ์ฃผํ™ฉ์ƒ‰ ์Šคํฌ๋กค๋ฐ” */
399
- border-radius: 10px;
400
- }
401
 
402
  /* ๋ชจ๋ฐ”์ผ ๋Œ€์‘ */
403
- @media (max-width: 900px) {
404
  .workspace-wrapper {
405
- flex-direction: column;
406
- align-items: center;
407
  }
408
  .canvas-and-controls, .preview-section {
409
- flex-basis: auto;
410
- width: 100%;
411
- max-width: 600px;
412
  }
413
  .control-panel-sidebar {
414
- width: 100%;
415
  }
416
  .filter-sliders {
417
- grid-template-columns: 1fr;
418
  }
419
  }
420
 
 
7
  color: #333;
8
  }
9
 
 
 
 
 
10
  .container {
11
+ max-width: 1200px; /* ํŽ˜์ด์ง€ ์ „์ฒด ์ปจํ…Œ์ด๋„ˆ ์ตœ๋Œ€ ๋„ˆ๋น„ */
12
  margin: 20px auto;
13
  padding: 20px;
14
  background-color: white;
 
39
  .upload-box {
40
  flex: 1;
41
  min-width: 300px;
42
+ border: 2px dashed #3498db;
43
  border-radius: 5px;
44
  padding: 20px;
45
  text-align: center;
 
54
  display: block;
55
  font-weight: bold;
56
  margin-bottom: 10px;
57
+ color: #2980b9;
58
  }
59
 
60
  .file-input {
 
63
 
64
  .upload-button {
65
  display: inline-block;
66
+ background-color: #3498db;
67
  color: white;
68
  padding: 10px 20px;
69
  border-radius: 5px;
 
72
  }
73
 
74
  .upload-button:hover {
75
+ background-color: #2980b9;
76
  }
77
 
78
  /* ์ž‘์—… ์˜์—ญ ๋ž˜ํผ */
79
  .workspace-wrapper {
80
+ display: flex; /* ์บ”๋ฒ„์Šค+์ปจํŠธ๋กค ์˜์—ญ๊ณผ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์˜์—ญ์„ ๊ฐ€๋กœ๋กœ ๋ฐฐ์น˜ */
81
+ flex-wrap: wrap; /* ํ™”๋ฉด์ด ์ž‘์„ ๊ฒฝ์šฐ ์ค„๋ฐ”๊ฟˆ ํ—ˆ์šฉ */
82
  gap: 20px;
83
  margin-bottom: 20px;
84
  }
85
 
86
  /* ์บ”๋ฒ„์Šค์™€ ์ปจํŠธ๋กค ํŒจ๋„๋“ค์„ ๋ฌถ๋Š” ์˜์—ญ */
87
  .canvas-and-controls {
88
+ flex: 3; /* ๊ฐ€๋กœ ๋ฐฐ์น˜ ์‹œ ๋น„์œจ (์บ”๋ฒ„์Šค ์˜์—ญ์ด ๋” ๋„“๊ฒŒ) */
89
  display: flex;
90
+ flex-direction: column; /* ์บ”๋ฒ„์Šค ์•„๋ž˜์— ์ปจํŠธ๋กค ํŒจ๋„ ๋ฐฐ์น˜ (ํ•„์š”์‹œ ๊ตฌ์กฐ ๋ณ€๊ฒฝ) */
91
+ min-width: 0; /* flex item์˜ ๋‚ด์šฉ์ด ๋„˜์น  ๋•Œ ์ˆ˜์ถ•ํ•˜๋„๋ก ํ•จ */
92
  }
93
 
94
  .canvas-container {
95
  position: relative;
96
+ width: 100%; /* ๋ถ€๋ชจ ๋„ˆ๋น„์— ๋งž์ถค */
97
+ /* max-width: 800px; /* ์บ”๋ฒ„์Šค ์ตœ๋Œ€ ๋„ˆ๋น„๋Š” JS์—์„œ ์„ค์ •๋œ CANVAS_WIDTH์— ๋”ฐ๋ฆ„ */
98
  border: 2px solid #333;
99
  border-radius: 4px;
100
+ overflow: hidden; /* ์บ”๋ฒ„์Šค๊ฐ€ ๋„˜์น˜์ง€ ์•Š๋„๋ก */
101
+ margin-bottom: 20px; /* ์ปจํŠธ๋กค ํŒจ๋„๊ณผ์˜ ๊ฐ„๊ฒฉ */
102
  }
103
 
104
  #canvas {
105
+ display: block; /* ํ•˜๋‹จ ์—ฌ๋ฐฑ ์ œ๊ฑฐ */
106
+ width: 100%; /* canvas-container์— ๊ฝ‰ ์ฐจ๊ฒŒ */
107
+ height: auto; /* ๋น„์œจ ์œ ์ง€ */
108
  background-color: #ffffff;
109
  cursor: default;
110
  }
111
 
112
+ /* ์ปจํŠธ๋กค ํŒจ๋„๋“ค์„ ๋ชจ์•„๋‘๋Š” ์‚ฌ์ด๋“œ๋ฐ” ์—ญํ•  (๋˜๋Š” ์บ”๋ฒ„์Šค ์•„๋ž˜ ์˜์—ญ) */
113
  .control-panel-sidebar {
114
  display: flex;
115
  flex-direction: column;
116
  gap: 15px;
117
+ /* flex: 1; /* canvas-and-controls ๋‚ด์—์„œ ๋น„์œจ (ํ•„์š”์‹œ) */
118
  }
119
 
120
+
121
  .control-group {
122
  display: flex;
123
  flex-direction: column;
124
+ /* align-items: center; ํ•ญ๋ชฉ๋“ค์ด ์ค‘์•™ ์ •๋ ฌ๋˜์ง€ ์•Š๋„๋ก ์ œ๊ฑฐ ๋˜๋Š” ์ˆ˜์ • */
125
  border: 1px solid #ddd;
126
  padding: 15px;
127
  border-radius: 5px;
128
  background-color: #f9f9f9;
129
+ /* min-width: 250px; /* ์ตœ์†Œ ๋„ˆ๋น„๋Š” ์ƒํ™ฉ์— ๋”ฐ๋ผ ์กฐ์ • */
130
  }
131
 
132
  .control-group h3 {
 
134
  font-size: 1rem;
135
  text-align: center;
136
  width: 100%;
 
137
  }
138
 
139
  .slider-container {
 
148
 
149
  .slider-container label {
150
  font-weight: bold;
151
+ min-width: 50px; /* "ํšŒ์ „:" ๋“ฑ ๋ ˆ์ด๋ธ”์ด ์ž˜๋ฆฌ์ง€ ์•Š๋„๋ก ์ถฉ๋ถ„ํžˆ */
152
  text-align: left;
153
  flex-shrink: 0;
154
  }
155
 
156
  .slider-container input[type="range"] {
157
+ flex-grow: 1; /* ์Šฌ๋ผ์ด๋”๊ฐ€ ๋‚จ์€ ๊ณต๊ฐ„์„ ๋ชจ๋‘ ์ฐจ์ง€ */
158
+ width: auto; /* flex-grow๊ฐ€ ์ž‘๋™ํ•˜๋„๋ก auto๋กœ ์„ค์ • */
159
+ margin: 0 5px; /* ์ขŒ์šฐ ์•ฝ๊ฐ„์˜ ์—ฌ๋ฐฑ */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
160
  }
161
 
162
+ .slider-container .value-display {
163
+ min-width: 40px; /* ๊ฐ’ ํ‘œ์‹œ ์˜์—ญ ๋„ˆ๋น„ */
164
+ text-align: right; /* ๊ฐ’์„ ์˜ค๋ฅธ์ชฝ์— ํ‘œ์‹œ */
165
+ flex-shrink: 0;
 
 
 
 
 
166
  }
167
 
168
  /* ๋ ˆ์ด์–ด ๋ชฉ๋ก ์Šคํƒ€์ผ */
 
184
  }
185
  .layer-item:last-child { border-bottom: none; }
186
  .layer-item:hover { background-color: #f5f5f5; }
187
+ .layer-item.active { background-color: #e3f2fd; font-weight: bold; }
188
  .layer-name { flex-grow: 1; padding-left: 5px; }
189
  .layer-controls { display: flex; gap: 5px; }
190
  .layer-button {
191
+ background-color: #f0f0f0; border: 1px solid #ddd; border-radius: 3px;
192
+ padding: 2px 5px; cursor: pointer; font-size: 11px; color: #555;
 
 
 
 
 
193
  transition: all 0.2s ease;
194
  }
195
+ .layer-button:hover { background-color: #e0e0e0; }
196
+
 
 
197
 
198
  /* ํ•„ํ„ฐ ํŒจ๋„ ์Šคํƒ€์ผ */
199
  .filter-panel {
200
+ /* width: 100%; /* ๋ถ€๋ชจ(.control-panel-sidebar)์— ์˜ํ•ด ๋„ˆ๋น„ ๊ฒฐ์ • */
201
  padding: 15px;
202
  border: 1px solid #ddd;
203
  border-radius: 5px;
204
  background-color: #f9f9f9;
205
  }
206
+ .filter-panel h3 { margin: 0 0 15px 0; text-align: center; }
 
 
 
 
207
  .filter-sliders { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 15px; }
208
  .filter-slider-container { display: flex; flex-direction: column; gap: 5px; width: 100%; padding: 0 5px; box-sizing: border-box; }
209
  .filter-slider-container label { font-size: 14px; margin-bottom: 5px; text-align: left; }
210
+ .large-slider { width: 100%; height: 20px; /* ์Šฌ๋ผ์ด๋” ๋†’์ด ์กฐ์ • */ }
211
+ .filter-slider-container .value-display { text-align: right; font-weight: bold; }
 
 
 
 
 
 
 
 
212
  .filter-buttons { display: flex; justify-content: center; margin-top: 15px; }
213
  #reset-filter-btn { width: auto; padding: 8px 15px; flex-grow: 1; max-width: 200px; }
214
 
215
+
216
  /* ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์„น์…˜ */
217
  .preview-section {
218
+ flex: 2; /* ๊ฐ€๋กœ ๋ฐฐ์น˜ ์‹œ ๋น„์œจ (์บ”๋ฒ„์Šค ์˜์—ญ๋ณด๋‹ค ์ž‘๊ฒŒ) */
219
+ display: flex; /* ๋‚ด๋ถ€ ์ปจํ…Œ์ด๋„ˆ ์ •๋ ฌ ์œ„ํ•จ */
220
  flex-direction: column;
221
+ align-items: center; /* ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ค‘์•™์— */
222
+ min-width: 0; /* flex item์˜ ๋‚ด์šฉ์ด ๋„˜์น  ๋•Œ ์ˆ˜์ถ•ํ•˜๋„๋ก ํ•จ */
223
  }
224
 
225
  .preview-container {
226
+ width: 100%; /* preview-section ๋„ˆ๋น„์— ๋งž์ถค */
227
+ margin-top: 0; /* workspace-wrapper์—์„œ gap์œผ๋กœ ์ฒ˜๋ฆฌ */
228
+ display: none; /* ์ดˆ๊ธฐ์—๋Š” ์ˆจ๊น€ (JS๋กœ ์ œ์–ด) */
229
  flex-direction: column;
230
  align-items: center;
231
  padding: 10px;
 
236
 
237
  .preview-container h3 {
238
  margin-bottom: 10px;
 
239
  }
240
 
241
  #preview-img {
242
  max-width: 100%;
243
+ max-height: 400px; /* ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ด๋ฏธ์ง€ ์ตœ๋Œ€ ๋†’์ด ์ œํ•œ */
244
  border: 2px solid #333;
245
  border-radius: 4px;
246
+ object-fit: contain; /* ์ด๋ฏธ์ง€ ๋น„์œจ ์œ ์ง€ */
247
  }
248
 
249
  /* ํ•˜๋‹จ ๋ฒ„ํŠผ ์ปจํ…Œ์ด๋„ˆ */
 
251
  display: flex;
252
  justify-content: center;
253
  gap: 15px;
254
+ margin-top: 20px; /* workspace-wrapper ์™€์˜ ๊ฐ„๊ฒฉ */
255
  flex-wrap: wrap;
256
  }
257
 
 
263
  font-weight: bold;
264
  transition: background-color 0.3s;
265
  }
266
+ .primary-btn { background-color: #27ae60; color: white; }
267
+ .primary-btn:hover { background-color: #219653; }
 
268
  .danger-btn { background-color: #e74c3c; color: white; }
269
  .danger-btn:hover { background-color: #c0392b; }
270
+ .info-btn { background-color: #3498db; color: white; }
271
+ .info-btn:hover { background-color: #2980b9; }
 
 
 
 
 
 
 
 
 
 
 
 
 
272
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
273
 
274
  /* ๋ชจ๋ฐ”์ผ ๋Œ€์‘ */
275
+ @media (max-width: 900px) { /* ์ข€ ๋” ๋„“์€ ํ™”๋ฉด์—์„œ๋ถ€ํ„ฐ ๋ ˆ์ด์•„์›ƒ ๋ณ€๊ฒฝ ๊ณ ๋ ค */
276
  .workspace-wrapper {
277
+ flex-direction: column; /* ์ž‘์—… ์˜์—ญ๊ณผ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ์„ธ๋กœ๋กœ ๋ฐฐ์น˜ */
278
+ align-items: center; /* ์ค‘์•™ ์ •๋ ฌ */
279
  }
280
  .canvas-and-controls, .preview-section {
281
+ flex-basis: auto; /* flex ๋น„์œจ ์ดˆ๊ธฐํ™” */
282
+ width: 100%; /* ์ „์ฒด ๋„ˆ๋น„ ์‚ฌ์šฉ */
283
+ max-width: 600px; /* ๋ชจ๋ฐ”์ผ์—์„œ ๋„ˆ๋ฌด ๋„“์–ด์ง€์ง€ ์•Š๋„๋ก */
284
  }
285
  .control-panel-sidebar {
286
+ width: 100%; /* ์ „์ฒด ๋„ˆ๋น„ ์‚ฌ์šฉ */
287
  }
288
  .filter-sliders {
289
+ grid-template-columns: 1fr; /* ํ•„ํ„ฐ ์Šฌ๋ผ์ด๋” ํ•œ ์ค„๋กœ */
290
  }
291
  }
292