@uniai-fe/uds-templates 0.1.0 → 0.1.2

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.
package/README.md CHANGED
@@ -125,6 +125,12 @@ export default function LoginPage() {
125
125
 
126
126
  > modules 레포 내부(Storybook 등)에서는 개발 편의를 위해 `@uniai-fe/uds-templates/src/index.scss`를 직접 import하지만, 외부 서비스/패키지는 `@uniai-fe/uds-templates/css` 엔트리만 사용해야 한다.
127
127
 
128
+ ### 토큰 스코프 & ThemeProvider
129
+
130
+ - templates SCSS는 모든 디자인 토큰을 `:root`에 선언하고, 빌드 시 `scripts/merge-theme-root.mjs`가 토큰 블록을 단일 `:root { ... }`로 합쳐 중복 선언을 제거합니다.
131
+ - 서비스 앱은 foundation ThemeProvider가 주입하는 `.uds-theme-root`를 루트에 유지해야 하며, CSS import 순서는 `@uniai-fe/uds-foundation/css` → `@uniai-fe/uds-primitives/css` → `@uniai-fe/uds-templates/css` 입니다.
132
+ - modules 레포(Storybook 등)는 SCSS 원본을 직접 사용하지만, 외부 프로젝트는 CSS 엔트리만 import한다는 규칙을 README/CODEX-RULES에 명시하고 있습니다.
133
+
128
134
  ## Modal 모듈 사용법
129
135
 
130
136
  ui-legacy에서 사용하던 모달 스택/옵션을 templates 레이어로 옮겨왔습니다. 핵심 흐름은 다음과 같습니다.
package/dist/styles.css CHANGED
@@ -1,6 +1,4 @@
1
1
  @charset "UTF-8";
2
- /* templates styles는 foundation/primitives 순으로 import된 이후를 가정한다. */
3
- /* 템플릿 레벨 스타일을 통합해 서비스 앱이 단일 엔트리만 import하도록 구성한다. */
4
2
  :root {
5
3
  --frame-device-height: 812px;
6
4
  --frame-device-width: 480px;
@@ -10,11 +8,32 @@
10
8
  --page-frame-header-padding-top: var(--frame-safe-area-top);
11
9
  --page-frame-footer-safe-area: var(--frame-safe-area-bottom);
12
10
  --page-frame-max-width: var(
13
- --frame-device-width,
14
- 480px
11
+ --frame-device-width,
12
+ 480px
15
13
  );
14
+ --uds-modal-overlay-bg: var(--dialog-overlay-bg, rgba(5, 6, 12, 0.55));
15
+ --uds-modal-surface-bg: var(--color-bg-surface-static-white);
16
+ --uds-modal-surface-radius: var(--theme-radius-large-1);
17
+ --uds-modal-surface-shadow: 0px 18px 40px rgba(8, 11, 30, 0.18);
18
+ --uds-modal-max-width: min(
19
+ 360px,
20
+ calc(100vw - var(--spacing-padding-10) * 2)
21
+ );
22
+ --uds-modal-max-height: calc(100vh - var(--spacing-padding-10) * 2);
23
+ --auth-container-max-width: 335px;
24
+ --auth-container-gap: var(--spacing-padding-7, 28px);
25
+ --auth-container-padding-inline: var(--spacing-padding-6, 24px);
26
+ --auth-container-padding-top: calc(
27
+ var(--spacing-padding-9, 32px) + env(safe-area-inset-top, 0px)
28
+ );
29
+ --auth-container-padding-bottom: var(--spacing-padding-10, 40px);
16
30
  }
17
31
 
32
+ /* templates styles는 foundation/primitives 순으로 import된 이후를 가정한다. */
33
+ /* 템플릿 레벨 스타일을 통합해 서비스 앱이 단일 엔트리만 import하도록 구성한다. */
34
+ /* namespace 충돌을 막기 위해 모든 @use 경로에 고유 alias를 부여한다. */
35
+
36
+
18
37
  .page-frame-container {
19
38
  display: grid;
20
39
  grid-template-rows: auto 1fr auto;
@@ -67,17 +86,7 @@
67
86
  }
68
87
 
69
88
  /* foundation CSS는 소비 앱 루트에서 한 번만 로드된다는 전제하에 토큰만 참조한다. */
70
- :where(.radix-themes, .theme-root, :root) {
71
- --uds-modal-overlay-bg: var(--dialog-overlay-bg, rgba(5, 6, 12, 0.55));
72
- --uds-modal-surface-bg: var(--color-bg-surface-static-white);
73
- --uds-modal-surface-radius: var(--theme-radius-large-1);
74
- --uds-modal-surface-shadow: 0px 18px 40px rgba(8, 11, 30, 0.18);
75
- --uds-modal-max-width: min(
76
- 360px,
77
- calc(100vw - var(--spacing-padding-10) * 2)
78
- );
79
- --uds-modal-max-height: calc(100vh - var(--spacing-padding-10) * 2);
80
- }
89
+
81
90
 
82
91
  .uds-modal-root {
83
92
  position: fixed;
@@ -260,3 +269,501 @@
260
269
  transition: none;
261
270
  }
262
271
  }
272
+
273
+
274
+ .auth-container {
275
+ min-height: min(100svh, 100dvh);
276
+ padding: var(--auth-container-padding-top) var(--auth-container-padding-inline) calc(var(--auth-container-padding-bottom) + env(safe-area-inset-bottom, 0px));
277
+ box-sizing: border-box;
278
+ display: flex;
279
+ flex-direction: column;
280
+ align-items: center;
281
+ background-color: var(--color-common-100, #ffffff);
282
+ color: inherit;
283
+ }
284
+
285
+ .auth-container__inner {
286
+ width: min(100%, var(--auth-container-max-width, 335px));
287
+ display: flex;
288
+ flex-direction: column;
289
+ gap: var(--auth-container-gap);
290
+ margin-block: auto;
291
+ }
292
+
293
+ .auth-container__header {
294
+ width: 100%;
295
+ }
296
+
297
+ .auth-container__body {
298
+ display: flex;
299
+ flex-direction: column;
300
+ gap: var(--spacing-padding-6, 24px);
301
+ }
302
+
303
+ .auth-container__footer {
304
+ display: flex;
305
+ flex-direction: column;
306
+ gap: var(--spacing-padding-4, 16px);
307
+ }
308
+
309
+ .auth-container__footer {
310
+ margin-top: auto;
311
+ }
312
+
313
+ .auth-complete-container {
314
+ width: 100%;
315
+ }
316
+
317
+ .auth-complete-wrapper {
318
+ text-align: center;
319
+ }
320
+
321
+ .auth-complete-icon {
322
+ width: 60px;
323
+ height: 60px;
324
+ margin: 0 auto 12px;
325
+ }
326
+
327
+ .auth-complete-icon svg {
328
+ width: 100%;
329
+ height: 100%;
330
+ display: block;
331
+ }
332
+
333
+ .auth-complete-title {
334
+ font-size: var(--font-heading-medium-size, 24px);
335
+ font-weight: var(--font-heading-medium-weight, 600);
336
+ color: var(--color-cool-gray-20);
337
+ line-height: var(--font-heading-medium-line-height, 1.4em);
338
+ }
339
+
340
+ .auth-complete-description {
341
+ margin-top: 4px;
342
+ font-size: var(--font-caption-large-size, 12px);
343
+ color: var(--color-label-standard);
344
+ line-height: var(--font-caption-large-line-height, 1.5em);
345
+ }
346
+
347
+ .auth-complete-contents {
348
+ width: 100%;
349
+ margin-top: var(--spacing-padding-4, 16px);
350
+ }
351
+
352
+ .auth-login-form {
353
+ display: flex;
354
+ flex-direction: column;
355
+ gap: var(--spacing-padding-7, 28px);
356
+ margin-top: var(--spacing-padding-10, 40px);
357
+ }
358
+
359
+ .auth-login-fields {
360
+ display: flex;
361
+ flex-direction: column;
362
+ gap: var(--spacing-padding-5, 20px);
363
+ }
364
+
365
+ .auth-login-util-container {
366
+ margin-top: 80px;
367
+ display: flex;
368
+ flex-direction: column;
369
+ gap: var(--spacing-padding-6, 24px);
370
+ }
371
+
372
+ .auth-login-find-account {
373
+ display: flex;
374
+ justify-content: center;
375
+ align-items: center;
376
+ --divider-height: 13px;
377
+ --divider-color: var(--color-label-neutral);
378
+ }
379
+
380
+ .auth-login-find-account-button {
381
+ color: var(--color-label-standard);
382
+ font-size: 13px;
383
+ line-height: 1em;
384
+ font-weight: 400;
385
+ padding-inline: var(--spacing-padding-1, 4px);
386
+ }
387
+ .auth-login-find-account-button:hover {
388
+ color: var(--color-primary-50, #2563eb);
389
+ }
390
+
391
+ .auth-login-signup {
392
+ display: flex;
393
+ justify-content: center;
394
+ }
395
+
396
+ .auth-login-signup-button {
397
+ text-decoration: none;
398
+ min-width: 160px;
399
+ justify-content: center;
400
+ --theme-button-font-label-medium-size: var(--font-caption-medium-size);
401
+ }
402
+
403
+ .auth-find-account-container {
404
+ width: 100%;
405
+ }
406
+
407
+ .auth-find-account-form {
408
+ display: flex;
409
+ flex-direction: column;
410
+ gap: var(--spacing-padding-6, 24px);
411
+ }
412
+
413
+ .auth-find-account-fields {
414
+ display: flex;
415
+ flex-direction: column;
416
+ gap: var(--spacing-padding-5, 20px);
417
+ }
418
+
419
+ .auth-find-account-form--code .auth-find-account-fields {
420
+ margin-bottom: var(--spacing-padding-4, 16px);
421
+ }
422
+
423
+ .auth-find-account-email-block {
424
+ display: flex;
425
+ flex-direction: column;
426
+ gap: var(--spacing-padding-3, 12px);
427
+ margin-bottom: var(--spacing-padding-7, 28px);
428
+ }
429
+
430
+ .auth-find-account-email-label {
431
+ color: var(--color-label-standard, var(--primitive-coolgray-20, #3d3f43));
432
+ font-size: var(--font-label-small-size, 13px);
433
+ line-height: 1.5;
434
+ margin: 0;
435
+ }
436
+
437
+ .auth-find-account-email-field {
438
+ display: flex;
439
+ align-items: center;
440
+ justify-content: space-between;
441
+ border-bottom: 1px solid var(--color-border-standard, var(--primitive-coolgray-90, #e4e5e7));
442
+ min-height: var(--spacing-padding-14, 56px);
443
+ padding-bottom: var(--spacing-padding-2, 8px);
444
+ }
445
+
446
+ .auth-find-account-email-value {
447
+ font-size: var(--font-body-large-size, 19px);
448
+ color: var(--color-label-strong, var(--primitive-coolgray-10, #18191b));
449
+ line-height: 1.5;
450
+ word-break: break-word;
451
+ }
452
+
453
+ .auth-find-account-email-helper {
454
+ font-size: var(--font-caption-medium-size, 12px);
455
+ color: var(--color-label-alternative, var(--primitive-coolgray-50, #afb1b6));
456
+ margin: 0;
457
+ }
458
+
459
+ .auth-find-account-meta {
460
+ display: flex;
461
+ align-items: center;
462
+ justify-content: space-between;
463
+ gap: var(--spacing-padding-4, 16px);
464
+ }
465
+
466
+ .auth-find-account-timer-text {
467
+ font-size: var(--font-caption-medium-size, 12px);
468
+ color: var(--color-primary-50, #2563eb);
469
+ }
470
+
471
+ .auth-find-account-timer-helper,
472
+ .auth-find-account-helper {
473
+ font-size: var(--font-caption-medium-size, 12px);
474
+ color: var(--color-label-neutral, var(--primitive-coolgray-40, #797e86));
475
+ margin: 0;
476
+ }
477
+
478
+ .auth-find-account-result-card {
479
+ display: flex;
480
+ flex-direction: column;
481
+ gap: var(--spacing-padding-2, 8px);
482
+ padding: var(--spacing-padding-7, 28px);
483
+ border-radius: var(--shape-rounded-3, 16px);
484
+ background: var(--color-background-subtle);
485
+ margin-bottom: var(--spacing-padding-6, 24px);
486
+ }
487
+
488
+ .auth-find-account-result-label {
489
+ font-size: var(--font-caption-medium-size, 12px);
490
+ color: var(--color-label-assistive);
491
+ margin: 0;
492
+ }
493
+
494
+ .auth-find-account-result-value {
495
+ font-size: var(--font-heading-medium-size, 21px);
496
+ font-weight: 700;
497
+ color: var(--color-label-strong);
498
+ margin: 0;
499
+ word-break: break-word;
500
+ }
501
+
502
+ .auth-find-account-result-sub {
503
+ font-size: var(--font-body-medium-size, 15px);
504
+ color: var(--color-label-standard);
505
+ margin: 0;
506
+ }
507
+
508
+ .auth-find-account-result-helper {
509
+ font-size: var(--font-caption-medium-size, 12px);
510
+ color: var(--color-label-assistive);
511
+ margin: 0;
512
+ }
513
+
514
+ .auth-find-account-id-summary {
515
+ display: flex;
516
+ flex-direction: column;
517
+ align-items: center;
518
+ gap: var(--spacing-padding-4, 16px);
519
+ width: 100%;
520
+ }
521
+
522
+ .auth-find-account-id-summary-card {
523
+ width: fit-content;
524
+ min-width: 230px;
525
+ padding: 0 var(--spacing-padding-6, 16px);
526
+ border-radius: var(--theme-radius-medium-3, 8px);
527
+ background: var(--color-background-alternative-cool_gray, var(--color-cool-gray-95, #f2f2f3));
528
+ }
529
+
530
+ .auth-find-account-id-summary-row {
531
+ display: flex;
532
+ justify-content: space-between;
533
+ align-items: center;
534
+ gap: var(--spacing-padding-5, 20px);
535
+ margin: var(--spacing-gap-5, 12px) 0;
536
+ }
537
+ .auth-find-account-id-summary-row .auth-find-account-id-summary-text {
538
+ font-size: 0;
539
+ }
540
+ .auth-find-account-id-summary-row .auth-find-account-id-summary-text span {
541
+ font-size: var(--font-caption-large-size);
542
+ line-height: var(--font-caption-large-line-height);
543
+ }
544
+ .auth-find-account-id-summary-row dt {
545
+ color: var(--color-label-neutral);
546
+ }
547
+ .auth-find-account-id-summary-row dd {
548
+ color: var(--color-label-strong);
549
+ }
550
+
551
+ .auth-find-account-password-rules {
552
+ display: flex;
553
+ flex-direction: column;
554
+ gap: var(--spacing-padding-2, 8px);
555
+ padding: 0;
556
+ margin: 0;
557
+ list-style: none;
558
+ }
559
+
560
+ .auth-find-account-password-rule {
561
+ display: flex;
562
+ align-items: center;
563
+ gap: var(--spacing-padding-3, 12px);
564
+ font-size: var(--font-body-medium-size, 15px);
565
+ color: var(--color-label-assistive);
566
+ }
567
+
568
+ .auth-find-account-password-rule::before {
569
+ content: "";
570
+ width: 8px;
571
+ height: 8px;
572
+ border-radius: 50%;
573
+ background: var(--color-border-standard);
574
+ flex-shrink: 0;
575
+ }
576
+
577
+ .auth-find-account-password-rule[data-satisfied=true] {
578
+ color: var(--color-label-positive);
579
+ }
580
+
581
+ .auth-find-account-password-rule[data-satisfied=true]::before {
582
+ background: var(--color-label-positive);
583
+ }
584
+
585
+ .auth-find-account-password-helper {
586
+ font-size: var(--font-caption-medium-size, 12px);
587
+ color: var(--color-label-neutral);
588
+ margin: 0;
589
+ }
590
+
591
+ .auth-signup-form {
592
+ display: flex;
593
+ flex-direction: column;
594
+ gap: var(--spacing-padding-8, 32px);
595
+ margin-top: var(--spacing-padding-9, 36px);
596
+ }
597
+
598
+ .auth-signup-fields {
599
+ display: flex;
600
+ flex-direction: column;
601
+ gap: var(--spacing-padding-5, 20px);
602
+ }
603
+
604
+ .auth-signup-verification {
605
+ display: flex;
606
+ flex-direction: column;
607
+ gap: var(--spacing-padding-9, 36px);
608
+ }
609
+
610
+ .auth-signup-agreements {
611
+ display: flex;
612
+ flex-direction: column;
613
+ gap: var(--spacing-padding-4, 16px);
614
+ background: var(--color-background-subtle);
615
+ border-radius: var(--shape-rounded-3, 16px);
616
+ padding: var(--spacing-padding-5, 20px);
617
+ }
618
+
619
+ .auth-signup-agreement-all {
620
+ background: var(--color-background-soft, #f2f2f3);
621
+ border-radius: var(--shape-rounded-2, 12px);
622
+ padding: var(--spacing-padding-4, 16px);
623
+ }
624
+
625
+ .auth-signup-agreements-list {
626
+ width: 100%;
627
+ background: var(--color-common-100, #ffffff);
628
+ border-radius: var(--shape-rounded-2, 12px);
629
+ padding: var(--spacing-padding-4, 16px);
630
+ display: flex;
631
+ flex-direction: column;
632
+ gap: var(--spacing-padding-3, 12px);
633
+ }
634
+
635
+ .auth-signup-agreement-row {
636
+ display: flex;
637
+ align-items: center;
638
+ justify-content: space-between;
639
+ gap: var(--spacing-padding-3, 12px);
640
+ }
641
+
642
+ .auth-signup-agreement-toggle {
643
+ border: none;
644
+ background: none;
645
+ padding: 0;
646
+ margin: 0;
647
+ display: flex;
648
+ align-items: center;
649
+ gap: var(--spacing-padding-3, 12px);
650
+ cursor: pointer;
651
+ flex: 1;
652
+ text-align: left;
653
+ flex-wrap: nowrap;
654
+ font-size: 14px;
655
+ }
656
+
657
+ .auth-signup-agreement-icon {
658
+ width: 20px;
659
+ height: 20px;
660
+ color: var(--color-label-assistive, #94989e);
661
+ flex-shrink: 0;
662
+ }
663
+ .auth-signup-agreement-icon svg {
664
+ display: block;
665
+ width: 100%;
666
+ height: 100%;
667
+ }
668
+ .auth-signup-agreement-icon svg path {
669
+ stroke: currentColor;
670
+ }
671
+
672
+ .auth-signup-agreement-toggle[data-checked=true] .auth-signup-agreement-icon {
673
+ color: var(--color-primary-default);
674
+ border-color: var(--color-primary-default);
675
+ }
676
+
677
+ .auth-signup-agreement-label {
678
+ display: inline-flex;
679
+ gap: var(--spacing-padding-1, 4px);
680
+ align-items: baseline;
681
+ flex-wrap: nowrap;
682
+ }
683
+
684
+ .auth-signup-agreement-badge {
685
+ font-size: 14px;
686
+ color: var(--color-primary-default);
687
+ }
688
+ .auth-signup-agreement-badge[data-required=false] {
689
+ color: var(--color-label-standard);
690
+ }
691
+
692
+ .auth-signup-agreement-title {
693
+ font-size: 14px;
694
+ color: var(--color-label-standard);
695
+ font-weight: 400;
696
+ line-height: 1.4;
697
+ }
698
+
699
+ .auth-signup-agreement-description {
700
+ font-size: 13px;
701
+ color: var(--color-label-assistive);
702
+ margin: 0;
703
+ padding-left: calc(20px + var(--spacing-padding-3, 12px));
704
+ }
705
+
706
+ .auth-signup-agreement-detail {
707
+ border: none;
708
+ background: none;
709
+ color: var(--color-label-assistive);
710
+ cursor: pointer;
711
+ padding: 0;
712
+ display: flex;
713
+ align-items: center;
714
+ justify-content: center;
715
+ width: 20px;
716
+ height: 20px;
717
+ }
718
+ .auth-signup-agreement-detail svg {
719
+ display: block;
720
+ width: 100%;
721
+ height: 100%;
722
+ }
723
+
724
+ .auth-signup-agreement-detail:disabled {
725
+ opacity: 0.4;
726
+ cursor: default;
727
+ }
728
+
729
+ .auth-signup-agreement-detail:hover svg path {
730
+ fill: var(--color-label-standard);
731
+ }
732
+
733
+ .auth-signup-complete {
734
+ display: flex;
735
+ flex-direction: column;
736
+ gap: var(--spacing-padding-7, 28px);
737
+ text-align: center;
738
+ }
739
+
740
+ .auth-signup-complete-illustration {
741
+ display: flex;
742
+ justify-content: center;
743
+ }
744
+
745
+ .auth-signup-complete-title {
746
+ font-size: 24px;
747
+ font-weight: 700;
748
+ color: var(--color-label-standard);
749
+ margin: 0;
750
+ }
751
+
752
+ .auth-signup-complete-description {
753
+ margin: var(--spacing-padding-2, 8px) 0 0;
754
+ color: var(--color-label-assistive);
755
+ }
756
+
757
+ .auth-signup-complete-actions {
758
+ display: flex;
759
+ flex-direction: column;
760
+ gap: var(--spacing-padding-4, 16px);
761
+ }
762
+
763
+ .auth-signup-agreement-drawer-body p {
764
+ font-weight: 400;
765
+ color: var(--color-label-standard);
766
+ font-size: var(--font-body-xxsmall-size);
767
+ line-height: 1.5em;
768
+ letter-spacing: 0px;
769
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uniai-fe/uds-templates",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "UNIAI Design System; UI Templates Package",
5
5
  "type": "module",
6
6
  "private": false,
@@ -39,7 +39,7 @@
39
39
  "lint": "eslint . --max-warnings=0",
40
40
  "typecheck": "tsc --project tsconfig.build.json --noEmit",
41
41
  "build": "pnpm format && pnpm typecheck && pnpm css:build",
42
- "css:build": "sass --load-path=node_modules src/index.scss dist/styles.css --style=expanded --no-source-map",
42
+ "css:build": "sass --load-path=node_modules src/index.scss dist/styles.css --style=expanded --no-source-map && node ./scripts/merge-theme-root.mjs dist/styles.css --selector=:root",
43
43
  "dev": "tsc --project tsconfig.build.json --watch --noEmit",
44
44
  "module:lint": "pnpm lint",
45
45
  "module:typecheck": "pnpm typecheck",
@@ -49,7 +49,7 @@
49
49
  border-radius: var(--theme-radius-medium-3, 8px);
50
50
  background: var(
51
51
  --color-background-alternative-cool_gray,
52
- var(--colot-cool-gray-95, #f2f2f3)
52
+ var(--color-cool-gray-95, #f2f2f3)
53
53
  );
54
54
  }
55
55
 
@@ -23,11 +23,13 @@ export default function AuthLoginContainer({
23
23
  footer={footer}
24
24
  >
25
25
  <AuthLoginFormField {...fieldOptions} />
26
- <AuthLoginLinkButtons
27
- hrefFindId={linkOptions.find.id}
28
- hrefFindPassword={linkOptions.find.password}
29
- hrefSignup={linkOptions.signup}
30
- />
26
+ {linkOptions && (
27
+ <AuthLoginLinkButtons
28
+ hrefFindId={linkOptions.find.id}
29
+ hrefFindPassword={linkOptions.find.password}
30
+ hrefSignup={linkOptions.signup}
31
+ />
32
+ )}
31
33
  </AuthContainer>
32
34
  </>
33
35
  );
@@ -91,5 +91,5 @@ export type AuthLoginLinkOptions = {
91
91
  export type AuthLoginProps<TFields extends AuthLoginFields = AuthLoginFields> =
92
92
  Omit<AuthContainerProps, "children"> & {
93
93
  fieldOptions: AuthLoginFieldOptions<TFields>;
94
- linkOptions: AuthLoginLinkOptions;
94
+ linkOptions?: AuthLoginLinkOptions;
95
95
  };
package/src/index.scss CHANGED
@@ -2,7 +2,15 @@
2
2
  // @use "@uniai-fe/uds-primitives/styles";
3
3
 
4
4
  /* 템플릿 레벨 스타일을 통합해 서비스 앱이 단일 엔트리만 import하도록 구성한다. */
5
- @use "./page-frame/container/index.scss" as *;
6
- @use "./page-frame/mobile/index.scss" as *;
7
- @use "./page-frame/navigation/index.scss" as *;
8
- @use "./modal/index.scss" as *;
5
+ /* namespace 충돌을 막기 위해 모든 @use 경로에 고유 alias를 부여한다. */
6
+ @use "./page-frame/container/index.scss" as pageFrameContainer;
7
+ @use "./page-frame/mobile/index.scss" as pageFrameMobile;
8
+ @use "./page-frame/navigation/index.scss" as pageFrameNavigation;
9
+ @use "./modal/index.scss" as modalStyles;
10
+
11
+ @use "./auth/common/container/index.scss" as authCommonContainer;
12
+ @use "./auth/common/complete/index.scss" as authCommonComplete;
13
+ @use "./auth/login/index.scss" as authLogin;
14
+ @use "./auth/find-id/index.scss" as authFindId;
15
+ @use "./auth/find-password/index.scss" as authFindPassword;
16
+ @use "./auth/signup/styles/signup.scss" as authSignup;
@@ -1,5 +1,5 @@
1
1
  /* foundation CSS는 소비 앱 루트에서 한 번만 로드된다는 전제하에 토큰만 참조한다. */
2
- :where(.radix-themes, .theme-root, :root) {
2
+ :root {
3
3
  --uds-modal-overlay-bg: var(--dialog-overlay-bg, rgba(5, 6, 12, 0.55));
4
4
  --uds-modal-surface-bg: var(--color-bg-surface-static-white);
5
5
  --uds-modal-surface-radius: var(--theme-radius-large-1);