@gallop.software/studio 0.1.21 → 0.1.22

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.
@@ -1,4 +1,10 @@
1
1
  "use client";
2
+ import {
3
+ baseReset,
4
+ colors,
5
+ fontSize,
6
+ fontStack
7
+ } from "./chunk-R5WKNVEV.mjs";
2
8
 
3
9
  // src/components/StudioUI.tsx
4
10
  import { useEffect as useEffect3, useCallback as useCallback2, useState as useState6 } from "react";
@@ -54,18 +60,6 @@ import { css as css2, keyframes as keyframes2 } from "@emotion/react";
54
60
  // src/components/StudioModal.tsx
55
61
  import { css, keyframes } from "@emotion/react";
56
62
  import { jsx, jsxs } from "@emotion/react/jsx-runtime";
57
- var colors = {
58
- primary: "#635bff",
59
- primaryHover: "#5851e5",
60
- background: "#f6f9fc",
61
- surface: "#ffffff",
62
- surfaceHover: "#f6f9fc",
63
- border: "#e3e8ee",
64
- text: "#1a1f36",
65
- textSecondary: "#697386",
66
- danger: "#df1b41",
67
- dangerHover: "#c41535"
68
- };
69
63
  var fadeIn = keyframes`
70
64
  from { opacity: 0; }
71
65
  to { opacity: 1; }
@@ -91,8 +85,10 @@ var styles = {
91
85
  justify-content: center;
92
86
  z-index: 10000;
93
87
  animation: ${fadeIn} 0.15s ease-out;
88
+ font-family: ${fontStack};
94
89
  `,
95
90
  modal: css`
91
+ ${baseReset}
96
92
  background-color: ${colors.surface};
97
93
  border-radius: 12px;
98
94
  box-shadow: 0 30px 60px -12px rgba(50, 50, 93, 0.25), 0 18px 36px -18px rgba(0, 0, 0, 0.3);
@@ -105,7 +101,7 @@ var styles = {
105
101
  padding: 24px 24px 0;
106
102
  `,
107
103
  title: css`
108
- font-size: 17px;
104
+ font-size: ${fontSize.lg};
109
105
  font-weight: 600;
110
106
  color: ${colors.text};
111
107
  margin: 0;
@@ -115,7 +111,7 @@ var styles = {
115
111
  padding: 12px 24px 24px;
116
112
  `,
117
113
  message: css`
118
- font-size: 14px;
114
+ font-size: ${fontSize.base};
119
115
  color: ${colors.textSecondary};
120
116
  margin: 0;
121
117
  line-height: 1.6;
@@ -130,7 +126,7 @@ var styles = {
130
126
  `,
131
127
  btn: css`
132
128
  padding: 10px 18px;
133
- font-size: 14px;
129
+ font-size: ${fontSize.base};
134
130
  font-weight: 500;
135
131
  border-radius: 6px;
136
132
  cursor: pointer;
@@ -144,7 +140,7 @@ var styles = {
144
140
 
145
141
  &:hover {
146
142
  background-color: ${colors.surfaceHover};
147
- border-color: #d0d5dd;
143
+ border-color: ${colors.borderHover};
148
144
  }
149
145
  `,
150
146
  btnConfirm: css`
@@ -208,19 +204,6 @@ function AlertModal({
208
204
 
209
205
  // src/components/StudioToolbar.tsx
210
206
  import { Fragment, jsx as jsx2, jsxs as jsxs2 } from "@emotion/react/jsx-runtime";
211
- var colors2 = {
212
- primary: "#635bff",
213
- primaryHover: "#5851e5",
214
- primaryLight: "#f0f0ff",
215
- background: "#ffffff",
216
- surface: "#ffffff",
217
- surfaceHover: "#f6f9fc",
218
- border: "#e3e8ee",
219
- text: "#1a1f36",
220
- textSecondary: "#697386",
221
- danger: "#df1b41",
222
- dangerLight: "#fff5f7"
223
- };
224
207
  var spin = keyframes2`
225
208
  to { transform: rotate(360deg); }
226
209
  `;
@@ -230,13 +213,13 @@ var styles2 = {
230
213
  align-items: center;
231
214
  justify-content: space-between;
232
215
  padding: 12px 24px;
233
- background-color: ${colors2.background};
234
- border-bottom: 1px solid ${colors2.border};
216
+ background-color: ${colors.surface};
217
+ border-bottom: 1px solid ${colors.border};
235
218
  `,
236
219
  left: css2`
237
220
  display: flex;
238
221
  align-items: center;
239
- gap: 6px;
222
+ gap: 8px;
240
223
  `,
241
224
  right: css2`
242
225
  display: flex;
@@ -247,20 +230,20 @@ var styles2 = {
247
230
  display: inline-flex;
248
231
  align-items: center;
249
232
  gap: 6px;
250
- padding: 6px 12px;
233
+ padding: 8px 14px;
251
234
  border-radius: 6px;
252
- font-size: 13px;
235
+ font-size: ${fontSize.base};
253
236
  font-weight: 500;
254
- background: ${colors2.surface};
255
- border: 1px solid ${colors2.border};
237
+ background: ${colors.surface};
238
+ border: 1px solid ${colors.border};
256
239
  cursor: pointer;
257
240
  transition: all 0.15s ease;
258
- color: ${colors2.text};
241
+ color: ${colors.text};
259
242
  letter-spacing: -0.01em;
260
243
 
261
244
  &:hover:not(:disabled) {
262
- background-color: ${colors2.surfaceHover};
263
- border-color: #d0d5dd;
245
+ background-color: ${colors.surfaceHover};
246
+ border-color: ${colors.borderHover};
264
247
  }
265
248
 
266
249
  &:disabled {
@@ -269,52 +252,43 @@ var styles2 = {
269
252
  }
270
253
  `,
271
254
  btnPrimary: css2`
272
- background: ${colors2.primary};
273
- border-color: ${colors2.primary};
255
+ background: ${colors.primary};
256
+ border-color: ${colors.primary};
274
257
  color: white;
275
258
 
276
259
  &:hover:not(:disabled) {
277
- background: ${colors2.primaryHover};
278
- border-color: ${colors2.primaryHover};
260
+ background: ${colors.primaryHover};
261
+ border-color: ${colors.primaryHover};
279
262
  }
280
263
  `,
281
264
  btnDanger: css2`
282
- color: ${colors2.danger};
265
+ color: ${colors.danger};
283
266
 
284
267
  &:hover:not(:disabled) {
285
- background-color: ${colors2.dangerLight};
286
- border-color: ${colors2.danger};
287
- }
288
- `,
289
- btnGhost: css2`
290
- border-color: transparent;
291
- background: transparent;
292
-
293
- &:hover:not(:disabled) {
294
- background-color: ${colors2.surfaceHover};
295
- border-color: transparent;
268
+ background-color: ${colors.dangerLight};
269
+ border-color: ${colors.danger};
296
270
  }
297
271
  `,
298
272
  icon: css2`
299
- width: 14px;
300
- height: 14px;
273
+ width: 15px;
274
+ height: 15px;
301
275
  `,
302
276
  iconSpin: css2`
303
277
  animation: ${spin} 1s linear infinite;
304
278
  `,
305
279
  selectionCount: css2`
306
- font-size: 13px;
307
- color: ${colors2.textSecondary};
280
+ font-size: ${fontSize.base};
281
+ color: ${colors.textSecondary};
308
282
  display: flex;
309
283
  align-items: center;
310
284
  gap: 8px;
311
285
  `,
312
286
  clearBtn: css2`
313
- color: ${colors2.primary};
287
+ color: ${colors.primary};
314
288
  background: none;
315
289
  border: none;
316
290
  cursor: pointer;
317
- font-size: 13px;
291
+ font-size: ${fontSize.base};
318
292
  font-weight: 500;
319
293
  padding: 0;
320
294
 
@@ -324,14 +298,15 @@ var styles2 = {
324
298
  `,
325
299
  divider: css2`
326
300
  width: 1px;
327
- height: 20px;
328
- background: ${colors2.border};
301
+ height: 24px;
302
+ background: ${colors.border};
329
303
  margin: 0 4px;
330
304
  `,
331
305
  viewToggle: css2`
332
306
  display: flex;
333
307
  align-items: center;
334
- background-color: ${colors2.surfaceHover};
308
+ background-color: ${colors.surfaceHover};
309
+ border: 1px solid ${colors.border};
335
310
  border-radius: 6px;
336
311
  padding: 2px;
337
312
  `,
@@ -341,20 +316,20 @@ var styles2 = {
341
316
  border: none;
342
317
  border-radius: 4px;
343
318
  cursor: pointer;
344
- color: ${colors2.textSecondary};
319
+ color: ${colors.textSecondary};
345
320
  transition: all 0.15s ease;
346
321
  display: flex;
347
322
  align-items: center;
348
323
  justify-content: center;
349
324
 
350
325
  &:hover {
351
- color: ${colors2.text};
326
+ color: ${colors.text};
352
327
  }
353
328
  `,
354
329
  viewBtnActive: css2`
355
- background-color: ${colors2.surface};
356
- color: ${colors2.text};
357
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
330
+ background-color: ${colors.surface};
331
+ color: ${colors.text};
332
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
358
333
  `
359
334
  };
360
335
  function StudioToolbar() {
@@ -505,7 +480,7 @@ function StudioToolbar() {
505
480
  /* @__PURE__ */ jsxs2(
506
481
  "button",
507
482
  {
508
- css: [styles2.btn, styles2.btnGhost],
483
+ css: styles2.btn,
509
484
  onClick: handleReprocess,
510
485
  disabled: !hasSelection,
511
486
  children: [
@@ -517,7 +492,7 @@ function StudioToolbar() {
517
492
  /* @__PURE__ */ jsxs2(
518
493
  "button",
519
494
  {
520
- css: [styles2.btn, styles2.btnGhost, styles2.btnDanger],
495
+ css: [styles2.btn, styles2.btnDanger],
521
496
  onClick: handleDeleteClick,
522
497
  disabled: !hasSelection,
523
498
  children: [
@@ -529,7 +504,7 @@ function StudioToolbar() {
529
504
  /* @__PURE__ */ jsxs2(
530
505
  "button",
531
506
  {
532
- css: [styles2.btn, styles2.btnGhost],
507
+ css: styles2.btn,
533
508
  onClick: handleSyncCdn,
534
509
  disabled: !hasSelection,
535
510
  children: [
@@ -538,7 +513,7 @@ function StudioToolbar() {
538
513
  ]
539
514
  }
540
515
  ),
541
- /* @__PURE__ */ jsxs2("button", { css: [styles2.btn, styles2.btnGhost], onClick: handleScan, children: [
516
+ /* @__PURE__ */ jsxs2("button", { css: styles2.btn, onClick: handleScan, children: [
542
517
  /* @__PURE__ */ jsx2(ScanIcon, {}),
543
518
  "Scan"
544
519
  ] })
@@ -552,7 +527,7 @@ function StudioToolbar() {
552
527
  /* @__PURE__ */ jsx2(
553
528
  "button",
554
529
  {
555
- css: [styles2.btn, styles2.btnGhost],
530
+ css: styles2.btn,
556
531
  onClick: handleRefresh,
557
532
  children: /* @__PURE__ */ jsx2(RefreshIcon, { spinning: refreshing })
558
533
  }
@@ -606,30 +581,19 @@ function ListIcon() {
606
581
  // src/components/StudioBreadcrumb.tsx
607
582
  import { css as css3 } from "@emotion/react";
608
583
  import { jsx as jsx3, jsxs as jsxs3 } from "@emotion/react/jsx-runtime";
609
- var colors3 = {
610
- primary: "#635bff",
611
- background: "#ffffff",
612
- surface: "#ffffff",
613
- surfaceHover: "#f6f9fc",
614
- border: "#e3e8ee",
615
- borderLight: "#eef1f6",
616
- text: "#1a1f36",
617
- textSecondary: "#697386",
618
- textMuted: "#8792a2"
619
- };
620
584
  var styles3 = {
621
585
  container: css3`
622
586
  display: flex;
623
587
  align-items: center;
624
588
  gap: 8px;
625
589
  padding: 10px 24px;
626
- background-color: ${colors3.surface};
627
- border-bottom: 1px solid ${colors3.borderLight};
590
+ background-color: ${colors.surface};
591
+ border-bottom: 1px solid ${colors.borderLight};
628
592
  `,
629
593
  backBtn: css3`
630
594
  padding: 6px;
631
- background: none;
632
- border: none;
595
+ background: ${colors.surface};
596
+ border: 1px solid ${colors.border};
633
597
  border-radius: 6px;
634
598
  cursor: pointer;
635
599
  transition: all 0.15s ease;
@@ -638,19 +602,20 @@ var styles3 = {
638
602
  justify-content: center;
639
603
 
640
604
  &:hover {
641
- background-color: ${colors3.surfaceHover};
605
+ background-color: ${colors.surfaceHover};
606
+ border-color: ${colors.borderHover};
642
607
  }
643
608
  `,
644
609
  backIcon: css3`
645
610
  width: 16px;
646
611
  height: 16px;
647
- color: ${colors3.textSecondary};
612
+ color: ${colors.textSecondary};
648
613
  `,
649
614
  nav: css3`
650
615
  display: flex;
651
616
  align-items: center;
652
617
  gap: 2px;
653
- font-size: 13px;
618
+ font-size: ${fontSize.base};
654
619
  `,
655
620
  item: css3`
656
621
  display: flex;
@@ -658,7 +623,7 @@ var styles3 = {
658
623
  gap: 2px;
659
624
  `,
660
625
  separator: css3`
661
- color: ${colors3.textMuted};
626
+ color: ${colors.textMuted};
662
627
  margin: 0 2px;
663
628
  `,
664
629
  btn: css3`
@@ -668,22 +633,22 @@ var styles3 = {
668
633
  border-radius: 4px;
669
634
  cursor: pointer;
670
635
  transition: all 0.15s ease;
671
- font-size: 13px;
636
+ font-size: ${fontSize.base};
672
637
  letter-spacing: -0.01em;
673
638
 
674
639
  &:hover {
675
- background-color: ${colors3.surfaceHover};
640
+ background-color: ${colors.surfaceHover};
676
641
  }
677
642
  `,
678
643
  btnActive: css3`
679
- color: ${colors3.text};
644
+ color: ${colors.text};
680
645
  font-weight: 600;
681
646
  `,
682
647
  btnInactive: css3`
683
- color: ${colors3.textSecondary};
648
+ color: ${colors.textSecondary};
684
649
 
685
650
  &:hover {
686
- color: ${colors3.text};
651
+ color: ${colors.text};
687
652
  }
688
653
  `
689
654
  };
@@ -714,21 +679,6 @@ function StudioBreadcrumb() {
714
679
  import { useEffect, useState as useState2 } from "react";
715
680
  import { css as css4, keyframes as keyframes3 } from "@emotion/react";
716
681
  import { jsx as jsx4, jsxs as jsxs4 } from "@emotion/react/jsx-runtime";
717
- var colors4 = {
718
- primary: "#635bff",
719
- primaryHover: "#5851e5",
720
- primaryLight: "#f0f0ff",
721
- background: "#f6f9fc",
722
- surface: "#ffffff",
723
- surfaceHover: "#f6f9fc",
724
- border: "#e3e8ee",
725
- borderLight: "#eef1f6",
726
- text: "#1a1f36",
727
- textSecondary: "#697386",
728
- textMuted: "#8792a2",
729
- success: "#0d7d4d",
730
- successLight: "#e6f7ef"
731
- };
732
682
  var spin2 = keyframes3`
733
683
  to { transform: rotate(360deg); }
734
684
  `;
@@ -743,8 +693,8 @@ var styles4 = {
743
693
  width: 32px;
744
694
  height: 32px;
745
695
  border-radius: 50%;
746
- border: 3px solid ${colors4.border};
747
- border-top-color: ${colors4.primary};
696
+ border: 3px solid ${colors.border};
697
+ border-top-color: ${colors.primary};
748
698
  animation: ${spin2} 0.8s linear infinite;
749
699
  `,
750
700
  empty: css4`
@@ -753,7 +703,7 @@ var styles4 = {
753
703
  align-items: center;
754
704
  justify-content: center;
755
705
  height: 256px;
756
- color: ${colors4.textSecondary};
706
+ color: ${colors.textSecondary};
757
707
  `,
758
708
  emptyIcon: css4`
759
709
  width: 48px;
@@ -762,12 +712,12 @@ var styles4 = {
762
712
  opacity: 0.5;
763
713
  `,
764
714
  emptyText: css4`
765
- font-size: 14px;
715
+ font-size: ${fontSize.base};
766
716
  margin: 0 0 4px 0;
767
717
 
768
718
  &:last-child {
769
- color: ${colors4.textMuted};
770
- font-size: 13px;
719
+ color: ${colors.textMuted};
720
+ font-size: ${fontSize.sm};
771
721
  }
772
722
  `,
773
723
  grid: css4`
@@ -783,11 +733,11 @@ var styles4 = {
783
733
  item: css4`
784
734
  position: relative;
785
735
  border-radius: 8px;
786
- border: 1px solid ${colors4.border};
736
+ border: 1px solid ${colors.border};
787
737
  overflow: hidden;
788
738
  cursor: pointer;
789
739
  transition: all 0.15s ease;
790
- background-color: ${colors4.surface};
740
+ background-color: ${colors.surface};
791
741
  user-select: none;
792
742
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
793
743
 
@@ -797,11 +747,11 @@ var styles4 = {
797
747
  }
798
748
  `,
799
749
  itemSelected: css4`
800
- border-color: ${colors4.primary};
801
- box-shadow: 0 0 0 1px ${colors4.primary};
750
+ border-color: ${colors.primary};
751
+ box-shadow: 0 0 0 1px ${colors.primary};
802
752
 
803
753
  &:hover {
804
- border-color: ${colors4.primary};
754
+ border-color: ${colors.primary};
805
755
  }
806
756
  `,
807
757
  checkboxWrapper: css4`
@@ -815,7 +765,7 @@ var styles4 = {
815
765
  checkbox: css4`
816
766
  width: 16px;
817
767
  height: 16px;
818
- accent-color: ${colors4.primary};
768
+ accent-color: ${colors.primary};
819
769
  cursor: pointer;
820
770
  `,
821
771
  cdnBadge: css4`
@@ -823,8 +773,8 @@ var styles4 = {
823
773
  top: 8px;
824
774
  right: 8px;
825
775
  z-index: 10;
826
- background-color: ${colors4.successLight};
827
- color: ${colors4.success};
776
+ background-color: ${colors.successLight};
777
+ color: ${colors.success};
828
778
  font-size: 11px;
829
779
  font-weight: 500;
830
780
  padding: 2px 8px;
@@ -836,7 +786,7 @@ var styles4 = {
836
786
  align-items: center;
837
787
  justify-content: center;
838
788
  padding: 16px;
839
- background: ${colors4.background};
789
+ background: ${colors.background};
840
790
  `,
841
791
  folderIcon: css4`
842
792
  width: 56px;
@@ -846,7 +796,7 @@ var styles4 = {
846
796
  fileIcon: css4`
847
797
  width: 40px;
848
798
  height: 40px;
849
- color: ${colors4.textMuted};
799
+ color: ${colors.textMuted};
850
800
  `,
851
801
  image: css4`
852
802
  max-width: 100%;
@@ -856,8 +806,8 @@ var styles4 = {
856
806
  `,
857
807
  label: css4`
858
808
  padding: 10px 12px;
859
- background-color: ${colors4.surface};
860
- border-top: 1px solid ${colors4.borderLight};
809
+ background-color: ${colors.surface};
810
+ border-top: 1px solid ${colors.borderLight};
861
811
  `,
862
812
  labelRow: css4`
863
813
  display: flex;
@@ -870,9 +820,9 @@ var styles4 = {
870
820
  min-width: 0;
871
821
  `,
872
822
  name: css4`
873
- font-size: 13px;
823
+ font-size: ${fontSize.sm};
874
824
  font-weight: 500;
875
- color: ${colors4.text};
825
+ color: ${colors.text};
876
826
  white-space: nowrap;
877
827
  overflow: hidden;
878
828
  text-overflow: ellipsis;
@@ -880,24 +830,25 @@ var styles4 = {
880
830
  letter-spacing: -0.01em;
881
831
  `,
882
832
  size: css4`
883
- font-size: 12px;
884
- color: ${colors4.textMuted};
833
+ font-size: ${fontSize.xs};
834
+ color: ${colors.textMuted};
885
835
  margin: 2px 0 0 0;
886
836
  `,
887
837
  openBtn: css4`
888
838
  flex-shrink: 0;
889
- font-size: 12px;
839
+ font-size: ${fontSize.xs};
890
840
  font-weight: 500;
891
- color: ${colors4.primary};
892
- background: none;
893
- border: none;
894
- padding: 4px 8px;
841
+ color: ${colors.primary};
842
+ background: ${colors.surface};
843
+ border: 1px solid ${colors.border};
844
+ padding: 4px 10px;
895
845
  cursor: pointer;
896
846
  border-radius: 4px;
897
- transition: background-color 0.15s ease;
847
+ transition: all 0.15s ease;
898
848
 
899
849
  &:hover {
900
- background-color: ${colors4.primaryLight};
850
+ background-color: ${colors.primaryLight};
851
+ border-color: ${colors.primary};
901
852
  }
902
853
  `,
903
854
  selectAllRow: css4`
@@ -905,27 +856,27 @@ var styles4 = {
905
856
  align-items: center;
906
857
  margin-bottom: 16px;
907
858
  padding: 12px 16px;
908
- background: ${colors4.surface};
859
+ background: ${colors.surface};
909
860
  border-radius: 8px;
910
- border: 1px solid ${colors4.border};
861
+ border: 1px solid ${colors.border};
911
862
  `,
912
863
  selectAllLabel: css4`
913
864
  display: flex;
914
865
  align-items: center;
915
866
  gap: 10px;
916
- font-size: 13px;
867
+ font-size: ${fontSize.base};
917
868
  font-weight: 500;
918
- color: ${colors4.textSecondary};
869
+ color: ${colors.textSecondary};
919
870
  cursor: pointer;
920
871
 
921
872
  &:hover {
922
- color: ${colors4.text};
873
+ color: ${colors.text};
923
874
  }
924
875
  `,
925
876
  selectAllCheckbox: css4`
926
877
  width: 16px;
927
878
  height: 16px;
928
- accent-color: ${colors4.primary};
879
+ accent-color: ${colors.primary};
929
880
  `
930
881
  };
931
882
  function StudioFileGrid() {
@@ -1083,19 +1034,6 @@ function formatFileSize(bytes) {
1083
1034
  import { useEffect as useEffect2, useState as useState3 } from "react";
1084
1035
  import { css as css5, keyframes as keyframes4 } from "@emotion/react";
1085
1036
  import { jsx as jsx5, jsxs as jsxs5 } from "@emotion/react/jsx-runtime";
1086
- var colors5 = {
1087
- primary: "#635bff",
1088
- primaryLight: "#f0f0ff",
1089
- background: "#f6f9fc",
1090
- surface: "#ffffff",
1091
- surfaceHover: "#f6f9fc",
1092
- border: "#e3e8ee",
1093
- borderLight: "#eef1f6",
1094
- text: "#1a1f36",
1095
- textSecondary: "#697386",
1096
- textMuted: "#8792a2",
1097
- success: "#0d7d4d"
1098
- };
1099
1037
  var spin3 = keyframes4`
1100
1038
  to { transform: rotate(360deg); }
1101
1039
  `;
@@ -1110,8 +1048,8 @@ var styles5 = {
1110
1048
  width: 32px;
1111
1049
  height: 32px;
1112
1050
  border-radius: 50%;
1113
- border: 3px solid ${colors5.border};
1114
- border-top-color: ${colors5.primary};
1051
+ border: 3px solid ${colors.border};
1052
+ border-top-color: ${colors.primary};
1115
1053
  animation: ${spin3} 0.8s linear infinite;
1116
1054
  `,
1117
1055
  empty: css5`
@@ -1120,12 +1058,12 @@ var styles5 = {
1120
1058
  align-items: center;
1121
1059
  justify-content: center;
1122
1060
  height: 256px;
1123
- color: ${colors5.textSecondary};
1061
+ color: ${colors.textSecondary};
1124
1062
  `,
1125
1063
  tableWrapper: css5`
1126
- background: ${colors5.surface};
1064
+ background: ${colors.surface};
1127
1065
  border-radius: 8px;
1128
- border: 1px solid ${colors5.border};
1066
+ border: 1px solid ${colors.border};
1129
1067
  overflow: hidden;
1130
1068
  `,
1131
1069
  table: css5`
@@ -1135,13 +1073,13 @@ var styles5 = {
1135
1073
  th: css5`
1136
1074
  text-align: left;
1137
1075
  font-size: 11px;
1138
- color: ${colors5.textMuted};
1076
+ color: ${colors.textMuted};
1139
1077
  text-transform: uppercase;
1140
1078
  letter-spacing: 0.05em;
1141
1079
  padding: 12px 16px;
1142
1080
  font-weight: 600;
1143
- background: ${colors5.background};
1144
- border-bottom: 1px solid ${colors5.border};
1081
+ background: ${colors.background};
1082
+ border-bottom: 1px solid ${colors.border};
1145
1083
  `,
1146
1084
  thCheckbox: css5`
1147
1085
  width: 48px;
@@ -1162,18 +1100,18 @@ var styles5 = {
1162
1100
  user-select: none;
1163
1101
 
1164
1102
  &:hover {
1165
- background-color: ${colors5.surfaceHover};
1103
+ background-color: ${colors.surfaceHover};
1166
1104
  }
1167
1105
 
1168
1106
  &:not(:last-child) td {
1169
- border-bottom: 1px solid ${colors5.borderLight};
1107
+ border-bottom: 1px solid ${colors.borderLight};
1170
1108
  }
1171
1109
  `,
1172
1110
  rowSelected: css5`
1173
- background-color: ${colors5.primaryLight};
1111
+ background-color: ${colors.primaryLight};
1174
1112
 
1175
1113
  &:hover {
1176
- background-color: ${colors5.primaryLight};
1114
+ background-color: ${colors.primaryLight};
1177
1115
  }
1178
1116
  `,
1179
1117
  td: css5`
@@ -1186,7 +1124,7 @@ var styles5 = {
1186
1124
  checkbox: css5`
1187
1125
  width: 16px;
1188
1126
  height: 16px;
1189
- accent-color: ${colors5.primary};
1127
+ accent-color: ${colors.primary};
1190
1128
  cursor: pointer;
1191
1129
  `,
1192
1130
  nameCell: css5`
@@ -1203,7 +1141,7 @@ var styles5 = {
1203
1141
  fileIcon: css5`
1204
1142
  width: 20px;
1205
1143
  height: 20px;
1206
- color: ${colors5.textMuted};
1144
+ color: ${colors.textMuted};
1207
1145
  flex-shrink: 0;
1208
1146
  `,
1209
1147
  thumbnail: css5`
@@ -1212,47 +1150,48 @@ var styles5 = {
1212
1150
  object-fit: cover;
1213
1151
  border-radius: 6px;
1214
1152
  flex-shrink: 0;
1215
- border: 1px solid ${colors5.borderLight};
1153
+ border: 1px solid ${colors.borderLight};
1216
1154
  `,
1217
1155
  name: css5`
1218
- font-size: 14px;
1156
+ font-size: ${fontSize.base};
1219
1157
  font-weight: 500;
1220
- color: ${colors5.text};
1158
+ color: ${colors.text};
1221
1159
  letter-spacing: -0.01em;
1222
1160
  `,
1223
1161
  meta: css5`
1224
- font-size: 13px;
1225
- color: ${colors5.textSecondary};
1162
+ font-size: ${fontSize.sm};
1163
+ color: ${colors.textSecondary};
1226
1164
  `,
1227
1165
  cdnBadge: css5`
1228
1166
  display: inline-flex;
1229
1167
  align-items: center;
1230
1168
  gap: 4px;
1231
- font-size: 12px;
1169
+ font-size: ${fontSize.xs};
1232
1170
  font-weight: 500;
1233
- color: ${colors5.success};
1171
+ color: ${colors.success};
1234
1172
  `,
1235
1173
  cdnIcon: css5`
1236
1174
  width: 12px;
1237
1175
  height: 12px;
1238
1176
  `,
1239
1177
  cdnEmpty: css5`
1240
- font-size: 13px;
1241
- color: ${colors5.textMuted};
1178
+ font-size: ${fontSize.sm};
1179
+ color: ${colors.textMuted};
1242
1180
  `,
1243
1181
  openBtn: css5`
1244
- font-size: 12px;
1182
+ font-size: ${fontSize.xs};
1245
1183
  font-weight: 500;
1246
- color: ${colors5.primary};
1247
- background: none;
1248
- border: none;
1249
- padding: 4px 10px;
1184
+ color: ${colors.primary};
1185
+ background: ${colors.surface};
1186
+ border: 1px solid ${colors.border};
1187
+ padding: 4px 12px;
1250
1188
  cursor: pointer;
1251
1189
  border-radius: 4px;
1252
- transition: background-color 0.15s ease;
1190
+ transition: all 0.15s ease;
1253
1191
 
1254
1192
  &:hover {
1255
- background-color: ${colors5.primaryLight};
1193
+ background-color: ${colors.primaryLight};
1194
+ border-color: ${colors.primary};
1256
1195
  }
1257
1196
  `
1258
1197
  };
@@ -1408,43 +1347,26 @@ function isVideoFile(filename) {
1408
1347
  const ext = filename.toLowerCase().substring(filename.lastIndexOf("."));
1409
1348
  return VIDEO_EXTENSIONS.includes(ext);
1410
1349
  }
1411
- var colors6 = {
1412
- primary: "#635bff",
1413
- primaryHover: "#5851e5",
1414
- primaryLight: "#f0f0ff",
1415
- background: "#f6f9fc",
1416
- surface: "#ffffff",
1417
- surfaceHover: "#f6f9fc",
1418
- border: "#e3e8ee",
1419
- borderLight: "#eef1f6",
1420
- text: "#1a1f36",
1421
- textSecondary: "#697386",
1422
- textMuted: "#8792a2",
1423
- success: "#0d7d4d",
1424
- successLight: "#e6f7ef",
1425
- danger: "#df1b41",
1426
- dangerLight: "#fff5f7"
1427
- };
1428
1350
  var styles6 = {
1429
1351
  panel: css6`
1430
1352
  width: 320px;
1431
- border-left: 1px solid ${colors6.border};
1432
- background-color: ${colors6.surface};
1353
+ border-left: 1px solid ${colors.border};
1354
+ background-color: ${colors.surface};
1433
1355
  padding: 20px;
1434
1356
  overflow: auto;
1435
1357
  `,
1436
1358
  title: css6`
1437
- font-size: 13px;
1359
+ font-size: ${fontSize.sm};
1438
1360
  font-weight: 600;
1439
- color: ${colors6.textSecondary};
1361
+ color: ${colors.textSecondary};
1440
1362
  text-transform: uppercase;
1441
1363
  letter-spacing: 0.05em;
1442
1364
  margin: 0 0 16px 0;
1443
1365
  `,
1444
1366
  imageContainer: css6`
1445
- background-color: ${colors6.background};
1367
+ background-color: ${colors.background};
1446
1368
  border-radius: 8px;
1447
- border: 1px solid ${colors6.border};
1369
+ border: 1px solid ${colors.border};
1448
1370
  padding: 12px;
1449
1371
  margin-bottom: 20px;
1450
1372
  `,
@@ -1461,13 +1383,13 @@ var styles6 = {
1461
1383
  row: css6`
1462
1384
  display: flex;
1463
1385
  justify-content: space-between;
1464
- font-size: 13px;
1386
+ font-size: ${fontSize.sm};
1465
1387
  `,
1466
1388
  label: css6`
1467
- color: ${colors6.textSecondary};
1389
+ color: ${colors.textSecondary};
1468
1390
  `,
1469
1391
  value: css6`
1470
- color: ${colors6.text};
1392
+ color: ${colors.text};
1471
1393
  font-weight: 500;
1472
1394
  `,
1473
1395
  valueTruncate: css6`
@@ -1479,12 +1401,12 @@ var styles6 = {
1479
1401
  section: css6`
1480
1402
  padding-top: 12px;
1481
1403
  margin-top: 4px;
1482
- border-top: 1px solid ${colors6.borderLight};
1404
+ border-top: 1px solid ${colors.borderLight};
1483
1405
  `,
1484
1406
  sectionTitle: css6`
1485
- font-size: 11px;
1407
+ font-size: ${fontSize.xs};
1486
1408
  font-weight: 600;
1487
- color: ${colors6.textMuted};
1409
+ color: ${colors.textMuted};
1488
1410
  text-transform: uppercase;
1489
1411
  letter-spacing: 0.05em;
1490
1412
  margin: 0 0 10px 0;
@@ -1493,8 +1415,8 @@ var styles6 = {
1493
1415
  display: flex;
1494
1416
  align-items: center;
1495
1417
  gap: 8px;
1496
- font-size: 13px;
1497
- color: ${colors6.success};
1418
+ font-size: ${fontSize.sm};
1419
+ color: ${colors.success};
1498
1420
  font-weight: 500;
1499
1421
  `,
1500
1422
  cdnIcon: css6`
@@ -1503,9 +1425,9 @@ var styles6 = {
1503
1425
  `,
1504
1426
  copyBtn: css6`
1505
1427
  margin-top: 8px;
1506
- font-size: 13px;
1428
+ font-size: ${fontSize.sm};
1507
1429
  font-weight: 500;
1508
- color: ${colors6.primary};
1430
+ color: ${colors.primary};
1509
1431
  background: none;
1510
1432
  border: none;
1511
1433
  cursor: pointer;
@@ -1519,7 +1441,7 @@ var styles6 = {
1519
1441
  margin-top: 8px;
1520
1442
  height: 32px;
1521
1443
  border-radius: 6px;
1522
- border: 1px solid ${colors6.border};
1444
+ border: 1px solid ${colors.border};
1523
1445
  `,
1524
1446
  emptyState: css6`
1525
1447
  display: flex;
@@ -1530,8 +1452,8 @@ var styles6 = {
1530
1452
  text-align: center;
1531
1453
  `,
1532
1454
  emptyText: css6`
1533
- font-size: 13px;
1534
- color: ${colors6.textMuted};
1455
+ font-size: ${fontSize.sm};
1456
+ color: ${colors.textMuted};
1535
1457
  margin: 0;
1536
1458
  `,
1537
1459
  filePlaceholder: css6`
@@ -1539,13 +1461,13 @@ var styles6 = {
1539
1461
  align-items: center;
1540
1462
  justify-content: center;
1541
1463
  height: 120px;
1542
- background: ${colors6.background};
1464
+ background: ${colors.background};
1543
1465
  border-radius: 6px;
1544
1466
  `,
1545
1467
  fileIcon: css6`
1546
1468
  width: 56px;
1547
1469
  height: 56px;
1548
- color: ${colors6.textMuted};
1470
+ color: ${colors.textMuted};
1549
1471
  `,
1550
1472
  folderIcon: css6`
1551
1473
  width: 56px;
@@ -1560,7 +1482,7 @@ var styles6 = {
1560
1482
  actions: css6`
1561
1483
  margin-top: 20px;
1562
1484
  padding-top: 20px;
1563
- border-top: 1px solid ${colors6.border};
1485
+ border-top: 1px solid ${colors.border};
1564
1486
  display: flex;
1565
1487
  flex-direction: column;
1566
1488
  gap: 8px;
@@ -1568,26 +1490,26 @@ var styles6 = {
1568
1490
  actionBtn: css6`
1569
1491
  width: 100%;
1570
1492
  padding: 10px 14px;
1571
- font-size: 13px;
1493
+ font-size: ${fontSize.base};
1572
1494
  font-weight: 500;
1573
- background-color: ${colors6.surface};
1574
- border: 1px solid ${colors6.border};
1495
+ background-color: ${colors.surface};
1496
+ border: 1px solid ${colors.border};
1575
1497
  border-radius: 6px;
1576
1498
  cursor: pointer;
1577
1499
  transition: all 0.15s ease;
1578
- color: ${colors6.text};
1500
+ color: ${colors.text};
1579
1501
 
1580
1502
  &:hover {
1581
- background-color: ${colors6.surfaceHover};
1503
+ background-color: ${colors.surfaceHover};
1582
1504
  border-color: #d0d5dd;
1583
1505
  }
1584
1506
  `,
1585
1507
  actionBtnDanger: css6`
1586
- color: ${colors6.danger};
1508
+ color: ${colors.danger};
1587
1509
 
1588
1510
  &:hover {
1589
- background-color: ${colors6.dangerLight};
1590
- border-color: ${colors6.danger};
1511
+ background-color: ${colors.dangerLight};
1512
+ border-color: ${colors.danger};
1591
1513
  }
1592
1514
  `
1593
1515
  };
@@ -1787,20 +1709,24 @@ import { Fragment as Fragment3, jsx as jsx7, jsxs as jsxs7 } from "@emotion/reac
1787
1709
  var styles7 = {
1788
1710
  btn: css7`
1789
1711
  padding: 8px;
1790
- background: none;
1791
- border: none;
1792
- border-radius: 8px;
1712
+ background: ${colors.surface};
1713
+ border: 1px solid ${colors.border};
1714
+ border-radius: 6px;
1793
1715
  cursor: pointer;
1794
- transition: background-color 0.15s;
1716
+ transition: all 0.15s ease;
1717
+ display: flex;
1718
+ align-items: center;
1719
+ justify-content: center;
1795
1720
 
1796
1721
  &:hover {
1797
- background-color: #f3f4f6;
1722
+ background-color: ${colors.surfaceHover};
1723
+ border-color: ${colors.borderHover};
1798
1724
  }
1799
1725
  `,
1800
1726
  icon: css7`
1801
- width: 20px;
1802
- height: 20px;
1803
- color: #6b7280;
1727
+ width: 18px;
1728
+ height: 18px;
1729
+ color: ${colors.textSecondary};
1804
1730
  `,
1805
1731
  overlay: css7`
1806
1732
  position: fixed;
@@ -1812,20 +1738,15 @@ var styles7 = {
1812
1738
  display: flex;
1813
1739
  align-items: center;
1814
1740
  justify-content: center;
1815
- `,
1816
- backdrop: css7`
1817
- position: absolute;
1818
- top: 0;
1819
- right: 0;
1820
- bottom: 0;
1821
- left: 0;
1822
- background-color: rgba(0, 0, 0, 0.3);
1741
+ background-color: rgba(26, 31, 54, 0.4);
1742
+ backdrop-filter: blur(4px);
1823
1743
  `,
1824
1744
  panel: css7`
1745
+ ${baseReset}
1825
1746
  position: relative;
1826
- background-color: white;
1747
+ background-color: ${colors.surface};
1827
1748
  border-radius: 12px;
1828
- box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
1749
+ box-shadow: 0 30px 60px -12px rgba(50, 50, 93, 0.25), 0 18px 36px -18px rgba(0, 0, 0, 0.3);
1829
1750
  width: 100%;
1830
1751
  max-width: 512px;
1831
1752
  padding: 24px;
@@ -1837,19 +1758,26 @@ var styles7 = {
1837
1758
  margin-bottom: 24px;
1838
1759
  `,
1839
1760
  title: css7`
1840
- font-size: 18px;
1761
+ font-size: ${fontSize.xl};
1841
1762
  font-weight: 600;
1763
+ color: ${colors.text};
1842
1764
  margin: 0;
1765
+ letter-spacing: -0.02em;
1843
1766
  `,
1844
1767
  closeBtn: css7`
1845
- padding: 4px;
1846
- background: none;
1847
- border: none;
1848
- border-radius: 8px;
1768
+ padding: 6px;
1769
+ background: ${colors.surface};
1770
+ border: 1px solid ${colors.border};
1771
+ border-radius: 6px;
1849
1772
  cursor: pointer;
1773
+ transition: all 0.15s ease;
1774
+ display: flex;
1775
+ align-items: center;
1776
+ justify-content: center;
1850
1777
 
1851
1778
  &:hover {
1852
- background-color: #f3f4f6;
1779
+ background-color: ${colors.surfaceHover};
1780
+ border-color: ${colors.borderHover};
1853
1781
  }
1854
1782
  `,
1855
1783
  sections: css7`
@@ -1858,23 +1786,24 @@ var styles7 = {
1858
1786
  gap: 24px;
1859
1787
  `,
1860
1788
  sectionTitle: css7`
1861
- font-size: 14px;
1862
- font-weight: 500;
1863
- color: #111827;
1789
+ font-size: ${fontSize.base};
1790
+ font-weight: 600;
1791
+ color: ${colors.text};
1864
1792
  margin: 0 0 12px 0;
1865
1793
  `,
1866
1794
  description: css7`
1867
- font-size: 12px;
1868
- color: #6b7280;
1795
+ font-size: ${fontSize.sm};
1796
+ color: ${colors.textSecondary};
1869
1797
  margin: 0 0 12px 0;
1870
1798
  `,
1871
1799
  code: css7`
1872
- background-color: #f9fafb;
1800
+ background-color: ${colors.background};
1873
1801
  border-radius: 8px;
1874
1802
  padding: 12px;
1875
- font-family: monospace;
1876
- font-size: 12px;
1877
- color: #4b5563;
1803
+ font-family: 'SF Mono', Monaco, Consolas, monospace;
1804
+ font-size: ${fontSize.xs};
1805
+ color: ${colors.textSecondary};
1806
+ border: 1px solid ${colors.border};
1878
1807
  `,
1879
1808
  codeLine: css7`
1880
1809
  margin: 0 0 4px 0;
@@ -1885,14 +1814,22 @@ var styles7 = {
1885
1814
  `,
1886
1815
  input: css7`
1887
1816
  width: 100%;
1888
- padding: 8px 12px;
1889
- border: 1px solid #e5e7eb;
1890
- border-radius: 8px;
1891
- font-size: 14px;
1817
+ padding: 10px 14px;
1818
+ border: 1px solid ${colors.border};
1819
+ border-radius: 6px;
1820
+ font-size: ${fontSize.base};
1821
+ color: ${colors.text};
1822
+ background: ${colors.surface};
1823
+ transition: all 0.15s ease;
1892
1824
 
1893
1825
  &:focus {
1894
1826
  outline: none;
1895
- box-shadow: 0 0 0 2px #a855f7;
1827
+ border-color: ${colors.primary};
1828
+ box-shadow: 0 0 0 3px ${colors.primaryLight};
1829
+ }
1830
+
1831
+ &::placeholder {
1832
+ color: ${colors.textMuted};
1896
1833
  }
1897
1834
  `,
1898
1835
  grid: css7`
@@ -1901,41 +1838,50 @@ var styles7 = {
1901
1838
  gap: 12px;
1902
1839
  `,
1903
1840
  label: css7`
1904
- font-size: 12px;
1905
- color: #6b7280;
1841
+ font-size: ${fontSize.xs};
1842
+ font-weight: 500;
1843
+ color: ${colors.textSecondary};
1906
1844
  display: block;
1907
- margin-bottom: 4px;
1845
+ margin-bottom: 6px;
1908
1846
  `,
1909
1847
  footer: css7`
1910
1848
  margin-top: 24px;
1849
+ padding-top: 20px;
1850
+ border-top: 1px solid ${colors.border};
1911
1851
  display: flex;
1912
1852
  justify-content: flex-end;
1913
1853
  gap: 12px;
1914
1854
  `,
1915
1855
  cancelBtn: css7`
1916
- padding: 8px 16px;
1917
- font-size: 14px;
1918
- color: #4b5563;
1919
- background: none;
1920
- border: none;
1921
- border-radius: 8px;
1856
+ padding: 10px 18px;
1857
+ font-size: ${fontSize.base};
1858
+ font-weight: 500;
1859
+ color: ${colors.text};
1860
+ background: ${colors.surface};
1861
+ border: 1px solid ${colors.border};
1862
+ border-radius: 6px;
1922
1863
  cursor: pointer;
1864
+ transition: all 0.15s ease;
1923
1865
 
1924
1866
  &:hover {
1925
- background-color: #f3f4f6;
1867
+ background-color: ${colors.surfaceHover};
1868
+ border-color: ${colors.borderHover};
1926
1869
  }
1927
1870
  `,
1928
1871
  saveBtn: css7`
1929
- padding: 8px 16px;
1930
- font-size: 14px;
1872
+ padding: 10px 18px;
1873
+ font-size: ${fontSize.base};
1874
+ font-weight: 500;
1931
1875
  color: white;
1932
- background-color: #9333ea;
1933
- border: none;
1934
- border-radius: 8px;
1876
+ background-color: ${colors.primary};
1877
+ border: 1px solid ${colors.primary};
1878
+ border-radius: 6px;
1935
1879
  cursor: pointer;
1880
+ transition: all 0.15s ease;
1936
1881
 
1937
1882
  &:hover {
1938
- background-color: #7c3aed;
1883
+ background-color: ${colors.primaryHover};
1884
+ border-color: ${colors.primaryHover};
1939
1885
  }
1940
1886
  `
1941
1887
  };
@@ -1963,92 +1909,75 @@ function StudioSettings() {
1963
1909
  ] });
1964
1910
  }
1965
1911
  function SettingsPanel({ onClose }) {
1966
- return /* @__PURE__ */ jsxs7("div", { css: styles7.overlay, children: [
1967
- /* @__PURE__ */ jsx7("div", { css: styles7.backdrop, onClick: onClose }),
1968
- /* @__PURE__ */ jsxs7("div", { css: styles7.panel, children: [
1969
- /* @__PURE__ */ jsxs7("div", { css: styles7.header, children: [
1970
- /* @__PURE__ */ jsx7("h2", { css: styles7.title, children: "Settings" }),
1971
- /* @__PURE__ */ jsx7("button", { css: styles7.closeBtn, onClick: onClose, children: /* @__PURE__ */ jsx7("svg", { css: styles7.icon, fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx7("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }) }) })
1912
+ return /* @__PURE__ */ jsx7("div", { css: styles7.overlay, onClick: onClose, children: /* @__PURE__ */ jsxs7("div", { css: styles7.panel, onClick: (e) => e.stopPropagation(), children: [
1913
+ /* @__PURE__ */ jsxs7("div", { css: styles7.header, children: [
1914
+ /* @__PURE__ */ jsx7("h2", { css: styles7.title, children: "Settings" }),
1915
+ /* @__PURE__ */ jsx7("button", { css: styles7.closeBtn, onClick: onClose, children: /* @__PURE__ */ jsx7("svg", { css: styles7.icon, fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx7("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }) }) })
1916
+ ] }),
1917
+ /* @__PURE__ */ jsxs7("div", { css: styles7.sections, children: [
1918
+ /* @__PURE__ */ jsxs7("section", { children: [
1919
+ /* @__PURE__ */ jsx7("h3", { css: styles7.sectionTitle, children: "Cloudflare R2" }),
1920
+ /* @__PURE__ */ jsx7("p", { css: styles7.description, children: "Configure in .env.local file:" }),
1921
+ /* @__PURE__ */ jsxs7("div", { css: styles7.code, children: [
1922
+ /* @__PURE__ */ jsx7("p", { css: styles7.codeLine, children: "CLOUDFLARE_R2_ACCOUNT_ID" }),
1923
+ /* @__PURE__ */ jsx7("p", { css: styles7.codeLine, children: "CLOUDFLARE_R2_ACCESS_KEY_ID" }),
1924
+ /* @__PURE__ */ jsx7("p", { css: styles7.codeLine, children: "CLOUDFLARE_R2_SECRET_ACCESS_KEY" }),
1925
+ /* @__PURE__ */ jsx7("p", { css: styles7.codeLine, children: "CLOUDFLARE_R2_BUCKET_NAME" }),
1926
+ /* @__PURE__ */ jsx7("p", { css: styles7.codeLine, children: "CLOUDFLARE_R2_PUBLIC_URL" })
1927
+ ] })
1972
1928
  ] }),
1973
- /* @__PURE__ */ jsxs7("div", { css: styles7.sections, children: [
1974
- /* @__PURE__ */ jsxs7("section", { children: [
1975
- /* @__PURE__ */ jsx7("h3", { css: styles7.sectionTitle, children: "Cloudflare R2" }),
1976
- /* @__PURE__ */ jsx7("p", { css: styles7.description, children: "Configure in .env.local file:" }),
1977
- /* @__PURE__ */ jsxs7("div", { css: styles7.code, children: [
1978
- /* @__PURE__ */ jsx7("p", { css: styles7.codeLine, children: "CLOUDFLARE_R2_ACCOUNT_ID" }),
1979
- /* @__PURE__ */ jsx7("p", { css: styles7.codeLine, children: "CLOUDFLARE_R2_ACCESS_KEY_ID" }),
1980
- /* @__PURE__ */ jsx7("p", { css: styles7.codeLine, children: "CLOUDFLARE_R2_SECRET_ACCESS_KEY" }),
1981
- /* @__PURE__ */ jsx7("p", { css: styles7.codeLine, children: "CLOUDFLARE_R2_BUCKET_NAME" }),
1982
- /* @__PURE__ */ jsx7("p", { css: styles7.codeLine, children: "CLOUDFLARE_R2_PUBLIC_URL" })
1983
- ] })
1984
- ] }),
1985
- /* @__PURE__ */ jsxs7("section", { children: [
1986
- /* @__PURE__ */ jsx7("h3", { css: styles7.sectionTitle, children: "Custom CDN URL" }),
1987
- /* @__PURE__ */ jsx7("p", { css: styles7.description, children: "Override the default R2 URL with a custom domain:" }),
1988
- /* @__PURE__ */ jsx7("input", { css: styles7.input, type: "text", placeholder: "https://cdn.yourdomain.com" })
1989
- ] }),
1990
- /* @__PURE__ */ jsxs7("section", { children: [
1991
- /* @__PURE__ */ jsx7("h3", { css: styles7.sectionTitle, children: "Thumbnail Sizes" }),
1992
- /* @__PURE__ */ jsxs7("div", { css: styles7.grid, children: [
1993
- /* @__PURE__ */ jsxs7("div", { children: [
1994
- /* @__PURE__ */ jsx7("label", { css: styles7.label, children: "Small" }),
1995
- /* @__PURE__ */ jsx7("input", { css: styles7.input, type: "number", defaultValue: 300 })
1996
- ] }),
1997
- /* @__PURE__ */ jsxs7("div", { children: [
1998
- /* @__PURE__ */ jsx7("label", { css: styles7.label, children: "Medium" }),
1999
- /* @__PURE__ */ jsx7("input", { css: styles7.input, type: "number", defaultValue: 700 })
2000
- ] }),
2001
- /* @__PURE__ */ jsxs7("div", { children: [
2002
- /* @__PURE__ */ jsx7("label", { css: styles7.label, children: "Large" }),
2003
- /* @__PURE__ */ jsx7("input", { css: styles7.input, type: "number", defaultValue: 1400 })
2004
- ] })
1929
+ /* @__PURE__ */ jsxs7("section", { children: [
1930
+ /* @__PURE__ */ jsx7("h3", { css: styles7.sectionTitle, children: "Custom CDN URL" }),
1931
+ /* @__PURE__ */ jsx7("p", { css: styles7.description, children: "Override the default R2 URL with a custom domain:" }),
1932
+ /* @__PURE__ */ jsx7("input", { css: styles7.input, type: "text", placeholder: "https://cdn.yourdomain.com" })
1933
+ ] }),
1934
+ /* @__PURE__ */ jsxs7("section", { children: [
1935
+ /* @__PURE__ */ jsx7("h3", { css: styles7.sectionTitle, children: "Thumbnail Sizes" }),
1936
+ /* @__PURE__ */ jsxs7("div", { css: styles7.grid, children: [
1937
+ /* @__PURE__ */ jsxs7("div", { children: [
1938
+ /* @__PURE__ */ jsx7("label", { css: styles7.label, children: "Small" }),
1939
+ /* @__PURE__ */ jsx7("input", { css: styles7.input, type: "number", defaultValue: 300 })
1940
+ ] }),
1941
+ /* @__PURE__ */ jsxs7("div", { children: [
1942
+ /* @__PURE__ */ jsx7("label", { css: styles7.label, children: "Medium" }),
1943
+ /* @__PURE__ */ jsx7("input", { css: styles7.input, type: "number", defaultValue: 700 })
1944
+ ] }),
1945
+ /* @__PURE__ */ jsxs7("div", { children: [
1946
+ /* @__PURE__ */ jsx7("label", { css: styles7.label, children: "Large" }),
1947
+ /* @__PURE__ */ jsx7("input", { css: styles7.input, type: "number", defaultValue: 1400 })
2005
1948
  ] })
2006
1949
  ] })
2007
- ] }),
2008
- /* @__PURE__ */ jsxs7("div", { css: styles7.footer, children: [
2009
- /* @__PURE__ */ jsx7("button", { css: styles7.cancelBtn, onClick: onClose, children: "Cancel" }),
2010
- /* @__PURE__ */ jsx7("button", { css: styles7.saveBtn, children: "Save Changes" })
2011
1950
  ] })
1951
+ ] }),
1952
+ /* @__PURE__ */ jsxs7("div", { css: styles7.footer, children: [
1953
+ /* @__PURE__ */ jsx7("button", { css: styles7.cancelBtn, onClick: onClose, children: "Cancel" }),
1954
+ /* @__PURE__ */ jsx7("button", { css: styles7.saveBtn, children: "Save Changes" })
2012
1955
  ] })
2013
- ] });
1956
+ ] }) });
2014
1957
  }
2015
1958
 
2016
1959
  // src/components/StudioUI.tsx
2017
1960
  import { jsx as jsx8, jsxs as jsxs8 } from "@emotion/react/jsx-runtime";
2018
- var colors7 = {
2019
- primary: "#635bff",
2020
- primaryHover: "#5851e5",
2021
- background: "#f6f9fc",
2022
- surface: "#ffffff",
2023
- surfaceHover: "#f6f9fc",
2024
- border: "#e3e8ee",
2025
- borderLight: "#eef1f6",
2026
- text: "#1a1f36",
2027
- textSecondary: "#697386",
2028
- textMuted: "#8792a2"
2029
- };
2030
1961
  var styles8 = {
2031
1962
  container: css8`
1963
+ ${baseReset}
2032
1964
  display: flex;
2033
1965
  flex-direction: column;
2034
1966
  height: 100%;
2035
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Ubuntu, sans-serif;
2036
- background: ${colors7.background};
2037
- -webkit-font-smoothing: antialiased;
2038
- -moz-osx-font-smoothing: grayscale;
1967
+ background: ${colors.background};
2039
1968
  `,
2040
1969
  header: css8`
2041
1970
  display: flex;
2042
1971
  align-items: center;
2043
1972
  justify-content: space-between;
2044
1973
  padding: 16px 24px;
2045
- background: ${colors7.surface};
2046
- border-bottom: 1px solid ${colors7.border};
1974
+ background: ${colors.surface};
1975
+ border-bottom: 1px solid ${colors.border};
2047
1976
  `,
2048
1977
  title: css8`
2049
- font-size: 17px;
1978
+ font-size: ${fontSize.xl};
2050
1979
  font-weight: 600;
2051
- color: ${colors7.text};
1980
+ color: ${colors.text};
2052
1981
  margin: 0;
2053
1982
  letter-spacing: -0.02em;
2054
1983
  `,
@@ -2059,8 +1988,8 @@ var styles8 = {
2059
1988
  `,
2060
1989
  closeBtn: css8`
2061
1990
  padding: 8px;
2062
- background: none;
2063
- border: none;
1991
+ background: ${colors.surface};
1992
+ border: 1px solid ${colors.border};
2064
1993
  border-radius: 6px;
2065
1994
  cursor: pointer;
2066
1995
  transition: all 0.15s ease;
@@ -2069,13 +1998,14 @@ var styles8 = {
2069
1998
  justify-content: center;
2070
1999
 
2071
2000
  &:hover {
2072
- background-color: ${colors7.surfaceHover};
2001
+ background-color: ${colors.surfaceHover};
2002
+ border-color: ${colors.borderHover};
2073
2003
  }
2074
2004
  `,
2075
2005
  closeIcon: css8`
2076
2006
  width: 18px;
2077
2007
  height: 18px;
2078
- color: ${colors7.textSecondary};
2008
+ color: ${colors.textSecondary};
2079
2009
  `,
2080
2010
  content: css8`
2081
2011
  flex: 1;
@@ -2232,4 +2162,4 @@ export {
2232
2162
  StudioUI,
2233
2163
  StudioUI_default as default
2234
2164
  };
2235
- //# sourceMappingURL=StudioUI-WRFD73YR.mjs.map
2165
+ //# sourceMappingURL=StudioUI-3VFEM3VE.mjs.map