@orioncactuscorp/ui 1.12.2 → 1.14.0

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.
Files changed (56) hide show
  1. package/CHANGELOG.md +100 -0
  2. package/README.md +92 -12
  3. package/dist/components/Badge/Badge.css +1 -1
  4. package/dist/components/Badge/Badge.module.scss.js +12 -12
  5. package/dist/components/FloatingWindow/FloatingWindow.css +1 -0
  6. package/dist/components/FloatingWindow/FloatingWindow.js +692 -0
  7. package/dist/components/FloatingWindow/FloatingWindow.module.scss.js +17 -0
  8. package/dist/components/FloatingWindow/FloatingWindowManager.js +36 -0
  9. package/dist/components/FloatingWindow/contexts.js +25 -0
  10. package/dist/components/FloatingWindow/geometry.js +222 -0
  11. package/dist/components/FloatingWindow/stack.js +31 -0
  12. package/dist/components/FloatingWindow.d.ts +6 -0
  13. package/dist/components/FloatingWindow.js +18 -0
  14. package/dist/components/Modal/Modal.css +1 -1
  15. package/dist/components/Modal/Modal.js +534 -715
  16. package/dist/components/Modal/Modal.module.scss.js +46 -44
  17. package/dist/components/Modal/initialFocus.js +11 -0
  18. package/dist/components/Modal/useModalDrag.js +328 -310
  19. package/dist/components/internal/ModalPresentation.js +359 -0
  20. package/dist/index.js +108 -92
  21. package/dist/styles.css +3 -2
  22. package/dist/ui/src/components/Badge/types.d.ts +1 -1
  23. package/dist/ui/src/components/Badge/types.d.ts.map +1 -1
  24. package/dist/ui/src/components/FloatingWindow/FloatingWindow.d.ts +32 -0
  25. package/dist/ui/src/components/FloatingWindow/FloatingWindow.d.ts.map +1 -0
  26. package/dist/ui/src/components/FloatingWindow/FloatingWindowManager.d.ts +4 -0
  27. package/dist/ui/src/components/FloatingWindow/FloatingWindowManager.d.ts.map +1 -0
  28. package/dist/ui/src/components/FloatingWindow/contexts.d.ts +36 -0
  29. package/dist/ui/src/components/FloatingWindow/contexts.d.ts.map +1 -0
  30. package/dist/ui/src/components/FloatingWindow/geometry.d.ts +31 -0
  31. package/dist/ui/src/components/FloatingWindow/geometry.d.ts.map +1 -0
  32. package/dist/ui/src/components/FloatingWindow/index.d.ts +4 -0
  33. package/dist/ui/src/components/FloatingWindow/index.d.ts.map +1 -0
  34. package/dist/ui/src/components/FloatingWindow/stack.d.ts +9 -0
  35. package/dist/ui/src/components/FloatingWindow/stack.d.ts.map +1 -0
  36. package/dist/ui/src/components/FloatingWindow/types.d.ts +121 -0
  37. package/dist/ui/src/components/FloatingWindow/types.d.ts.map +1 -0
  38. package/dist/ui/src/components/Modal/Modal.d.ts +1 -1
  39. package/dist/ui/src/components/Modal/Modal.d.ts.map +1 -1
  40. package/dist/ui/src/components/Modal/contexts.d.ts +3 -0
  41. package/dist/ui/src/components/Modal/contexts.d.ts.map +1 -1
  42. package/dist/ui/src/components/Modal/initialFocus.d.ts +18 -0
  43. package/dist/ui/src/components/Modal/initialFocus.d.ts.map +1 -0
  44. package/dist/ui/src/components/Modal/types.d.ts +9 -1
  45. package/dist/ui/src/components/Modal/types.d.ts.map +1 -1
  46. package/dist/ui/src/components/Modal/useModalDrag.d.ts.map +1 -1
  47. package/dist/ui/src/components/internal/ModalPresentation.d.ts +61 -0
  48. package/dist/ui/src/components/internal/ModalPresentation.d.ts.map +1 -0
  49. package/dist/ui/src/index.d.ts +2 -0
  50. package/dist/ui/src/index.d.ts.map +1 -1
  51. package/dist/ui/src/utils/motion.d.ts.map +1 -1
  52. package/dist/utils/motion.js +194 -135
  53. package/docs/api-conventions.md +2 -5
  54. package/docs/motion.md +4 -0
  55. package/docs/selector-contract.md +58 -0
  56. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,105 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.14.0
4
+
5
+ ### Changes
6
+
7
+ <!-- generated:start -->
8
+
9
+ _Commit range: `@orioncactuscorp/ui@1.13.0..HEAD`_
10
+
11
+ #### Other
12
+
13
+ - `0f92eea` FloatingWindow 컴포넌트 추가 (#235)
14
+ - `e44c0e4` 모달 초기 포커스 정책 개선 (#236)
15
+ - `95cca4e` 0 duration 모션 즉시 완료 처리 (#234)
16
+ - `a94819d` FloatingWindow 다중 창 관리자 추가 (#237)
17
+ - `3582939` Modal·FloatingWindow 프레젠테이션 일원화 (#238)
18
+ <!-- generated:end -->
19
+
20
+ ### Minor Changes
21
+
22
+ - e44c0e4: Modal과 ModalWindow가 DOM상 첫 control 대신 등록된 title을 기본 초기 focus로 사용하도록 개선하고, `auto`, `title`, `first-interactive` focus preset을 추가합니다. modeless FloatingWindow는 열릴 때 현재 focus를 유지합니다.
23
+
24
+ Migration Notes:
25
+ - 기본 Modal/ModalWindow 초기 focus가 Header close button에서 title로 변경됩니다. 첫 tabbable 요소가 필요한 경우 `initialFocus="first-interactive"`를 지정하세요.
26
+ - `initialFocus="content"`는 호환용으로 유지되지만 신규 구현은 `title` 또는 구체적인 ref/function을 우선하세요.
27
+
28
+ - 0f92eea: trigger/명시적 anchor 기준 collision-aware 배치, 자유 drag 전환, viewport 경계 보정을 지원하는 `FloatingWindow`와 동일 geometry에 Modal 기본 presentation, popup scale/fade motion 및 focus trap을 연결하는 `ModalWindowRoot`를 추가합니다. ModalWindow backdrop은 기본적으로 표시하지 않으며 명시적으로 활성화할 수 있습니다.
29
+
30
+ Migration Notes:
31
+ - 없음
32
+
33
+ - a94819d: 다중 FloatingWindow의 등록, 활성화 순서, modality 우선순위, 최상단 dismissal과 modal focus handoff를 조정하는 `FloatingWindowManager`를 추가합니다.
34
+
35
+ FloatingWindow의 modeless와 modal Root가 동일한 Modal popup surface 진입·종료 모션을 사용하도록 motion ownership을 surface로 일원화하고, Header와 NavigationSection을 대체형 top chrome 계약으로 명확히 합니다.
36
+
37
+ `ModalWindowRoot`는 Modal과 동일하게 backdrop을 기본 표시해 배경 pointer 입력을 차단합니다.
38
+
39
+ 비활성 modeless window의 Close는 창을 최상단으로 올리지 않고 기존 stack 위치에서 종료 모션을 실행합니다.
40
+
41
+ FloatingWindowContent에 Modal과 동일한 `resize="fixed"` surface와 body scroll state 연동을 추가하고, Footer의 ActionArea 조합이 scroll 경계에 맞춰 동작하도록 개선합니다.
42
+
43
+ Migration Notes:
44
+ - 다중 창을 사용할 때 `FloatingWindowManager`로 root들을 감싸고 각 root에 고유한 `windowId`를 지정합니다.
45
+ - `FloatingWindowHeader`와 `FloatingWindowNavigationSection`은 함께 사용하지 않고 필요한 top chrome 하나를 선택합니다.
46
+ - 단일 창과 Manager 밖의 기존 사용법은 변경되지 않습니다.
47
+
48
+ ### Patch Changes
49
+
50
+ - 95cca4e: motion duration 또는 duration factor가 `0`일 때 Accordion과 Modal의 런타임 spring을 시작하지 않고 최종 상태로 즉시 완료하도록 수정합니다. 음수, 비유한 값, 잘못된 CSS multiplier 형식은 runtime 설정 오류로 명확히 거부합니다.
51
+ - 3582939: Modal surface가 header의 overlay positioning과 stacking을 명시적으로 소유하도록 우선순위를 보강해, CSS Module 주입 순서와 무관하게 FloatingWindow의 header, body, footer가 같은 열에 정렬되고 header drag가 유지되도록 수정합니다.
52
+
53
+ FloatingWindowClose에 custom render 구성을 추가해 ActionArea 같은 임의의 버튼도 Root의 기본 dismiss 및 exit lifecycle을 유지하며 창을 닫을 수 있습니다.
54
+
55
+ Migration Notes:
56
+ - 없음
57
+
58
+ ### Migration Notes
59
+
60
+ - 기본 Modal/ModalWindow 초기 focus가 Header close button에서 title로 변경됩니다. 첫 tabbable 요소가 필요한 경우 `initialFocus="first-interactive"`를 지정하세요.
61
+ - `initialFocus="content"`는 호환용으로 유지되지만 신규 구현은 `title` 또는 구체적인 ref/function을 우선하세요.
62
+ - 다중 창을 사용할 때 `FloatingWindowManager`로 root들을 감싸고 각 root에 고유한 `windowId`를 지정합니다.
63
+ - `FloatingWindowHeader`와 `FloatingWindowNavigationSection`은 함께 사용하지 않고 필요한 top chrome 하나를 선택합니다.
64
+ - 단일 창과 Manager 밖의 기존 사용법은 변경되지 않습니다.
65
+
66
+ ## 1.13.0
67
+
68
+ ### Changes
69
+
70
+ <!-- generated:start -->
71
+
72
+ _Commit range: `@orioncactuscorp/ui@1.12.2..HEAD`_
73
+
74
+ #### Other
75
+
76
+ - `c35682c` npm 패키지 리소스 링크 자동화 (#230)
77
+ - `a120226` Badge size 명명 표준화 (#231)
78
+ <!-- generated:end -->
79
+
80
+ ### Minor Changes
81
+
82
+ - a120226: Badge의 작은 named size를 표준 size scale에 맞춰 `tiny`에서 `xsmall`로 정규화하고 TypeScript prop, 런타임 class, `data-oc-size` selector 계약을 일치시킵니다.
83
+
84
+ Migration Notes
85
+ - `<Badge size='tiny'>`를 `<Badge size='xsmall'>`로 변경
86
+ - `[data-oc-component='badge'][data-oc-size='tiny']` selector를 `[data-oc-component='badge'][data-oc-size='xsmall']`로 변경
87
+
88
+ ### Patch Changes
89
+
90
+ - c35682c: npm package README에서 공개 Storybook, 버전 고정 Changelog, UI Documentation, 의견 전달 경로를 바로 확인할 수 있도록 추가하고, 릴리즈 버전 변경 시 UI와 Icons의 jsDelivr 리소스 URL을 각 package manifest 버전에 맞춰 자동 갱신·검증합니다. publish 직전에는 README가 가리키는 리소스가 실제 tarball에 포함되는지 확인하고, Storybook 빌드에서는 README deep-link의 story ID를 검증합니다.
91
+
92
+ Migration Notes
93
+ - 없음
94
+
95
+ - Updated dependencies [c35682c]
96
+ - @orioncactuscorp/icons@1.13.0
97
+
98
+ ### Migration Notes
99
+
100
+ - `<Badge size='tiny'>`를 `<Badge size='xsmall'>`로 변경
101
+ - `[data-oc-component='badge'][data-oc-size='tiny']` selector를 `[data-oc-component='badge'][data-oc-size='xsmall']`로 변경
102
+
3
103
  ## 1.12.2
4
104
 
5
105
  ### Changes
package/README.md CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  orioncactus 디자인 시스템의 React 19+ UI package입니다.
4
4
 
5
+ ## Resources
6
+
7
+ - [Storybook][storybook] — 최신 컴포넌트와 사용 예시
8
+ - [Changelog][changelog] — 이 패키지 버전까지의 전체 변경 내역
9
+ - [Documentation](#documentation) — 이 패키지 버전에 고정된 상세 가이드
10
+
5
11
  ## 요구사항
6
12
 
7
13
  - React 19+, React DOM 19+
@@ -66,7 +72,7 @@ export default function Example() {
66
72
 
67
73
  ## Documentation
68
74
 
69
- 이 패키지는 상세 가이드를 `docs/`로 함께 배포합니다. 설치 후 `node_modules/@orioncactuscorp/ui/docs/`에서 설치 버전과 일치하는 문서를 바로 읽을 수 있고, 웹에서는 `https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/<파일명>`으로 볼 수 있습니다.
75
+ 이 패키지는 상세 가이드를 `docs/`로 함께 배포합니다. 설치 후 `node_modules/@orioncactuscorp/ui/docs/`에서 설치 버전과 일치하는 문서를 바로 읽을 수 있고, 웹에서는 `https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/<파일명>`으로 볼 수 있습니다.
70
76
 
71
77
  | 문서 | 내용 |
72
78
  | -------------------------------------------------------------- | ------------------------------------------------------------------------ |
@@ -101,10 +107,78 @@ export default function Example() {
101
107
  - `Accordion`, `AccordionItem`, `AccordionSummary`, `AccordionDetails`, `AccordionDescription`, `AccordionContent`
102
108
  - `TabsRoot`, `TabsList`, `TabsTab`, `TabsPanel`
103
109
  - `Modal`, `ModalRoot`, `ModalTrigger`, `ModalContent`, `ModalHeader`, `ModalNavigationSection`, `ModalBody`, `ModalFooter`, `ModalClose`
110
+ - `FloatingWindow`, `FloatingWindowManager`, `FloatingWindowRoot`, `ModalWindowRoot`, `FloatingWindowTrigger`, `FloatingWindowContent`, `FloatingWindowDragHandle`, `FloatingWindowHeader`, `FloatingWindowNavigationSection`, `FloatingWindowBody`, `FloatingWindowFooter`, `FloatingWindowTitle`, `FloatingWindowDescription`, `FloatingWindowClose`
104
111
  - `TooltipProvider`, `TooltipRoot`, `TooltipTrigger`, `TooltipContent`
105
112
  - `ScrollArea`, `ScrollAreaContainer`
106
113
  - `SvgIcon`, `Interaction`
107
114
 
115
+ ### Modal initial focus
116
+
117
+ Modal은 DOM 순서의 첫 control을 기계적으로 선택하지 않습니다. 기본 `initialFocus="auto"`는 `ModalHeader`의 title을 `tabIndex={-1}`인 정적 문맥 시작점으로 포커스하고, title이 없을 때만 첫 tabbable 요소로 fallback합니다. modeless surface는 현재 작업 포커스를 유지합니다.
118
+
119
+ - 일반 Modal과 `ModalWindowRoot`는 같은 초기 포커스 정책을 공유합니다.
120
+ - form은 ref/function으로 첫 입력을, 단순 진행 dialog는 주요 action을 명시할 수 있습니다.
121
+ - 되돌리기 어려운 확인 dialog는 취소처럼 가장 덜 파괴적인 action을 ref로 지정하세요.
122
+ - `initialFocus="first-interactive"`는 첫 tabbable 요소, `initialFocus="title"`은 등록된 title을 명시합니다.
123
+ - `initialFocus="content"`는 dialog container를 포커스하는 호환용 escape hatch입니다. 신규 사용은 title 또는 구체적인 ref/function을 우선하세요.
124
+
125
+ ### FloatingWindow
126
+
127
+ `FloatingWindowRoot`는 trigger 또는 명시적 anchor를 기준으로 collision-aware 배치되는 modeless dialog가 기본입니다. `ModalWindowRoot`는 같은 geometry에 focus trap, 배경 입력을 차단하는 backdrop, Modal popup scale/fade motion을 적용합니다. 필요한 경우에만 `FloatingWindowContent backdrop="hidden"`으로 dimmer를 숨길 수 있으며 modal focus와 배경 inert 정책은 유지됩니다. Header, Body, Footer, NavigationSection은 Modal 기본 presentation을 공유합니다.
128
+
129
+ ```tsx
130
+ import {
131
+ FloatingWindowBody,
132
+ FloatingWindowContent,
133
+ FloatingWindowFooter,
134
+ FloatingWindowHeader,
135
+ FloatingWindowManager,
136
+ FloatingWindowRoot,
137
+ FloatingWindowTrigger,
138
+ ActionArea,
139
+ ActionAreaButton,
140
+ } from '@orioncactuscorp/ui';
141
+
142
+ <FloatingWindowManager>
143
+ <FloatingWindowRoot windowId='notes'>
144
+ <FloatingWindowTrigger>메모 열기</FloatingWindowTrigger>
145
+ <FloatingWindowContent placement='rightTop' resize='fixed'>
146
+ <FloatingWindowHeader title='프로젝트 메모' />
147
+ <FloatingWindowBody>임의 콘텐츠</FloatingWindowBody>
148
+ <FloatingWindowFooter>
149
+ <ActionArea variant='neutral'>
150
+ <ActionAreaButton priority='alternative'>취소</ActionAreaButton>
151
+ <ActionAreaButton priority='main'>저장</ActionAreaButton>
152
+ </ActionArea>
153
+ </FloatingWindowFooter>
154
+ </FloatingWindowContent>
155
+ </FloatingWindowRoot>
156
+ </FloatingWindowManager>;
157
+ ```
158
+
159
+ - modeless 창은 외부 pointer 작업으로 닫히지 않으며 Escape와 명시적 close로 닫습니다.
160
+ - `placement` 또는 `side` + `alignment`는 trigger 기준 배치를 정합니다. `placement`를 지정하면 `side`와 `alignment`보다 우선합니다.
161
+ - 기본 collision 정책은 주축 `flip`, 정렬축 `shift`입니다. 따라서 오른쪽 공간이 부족한 `right` 창은 왼쪽으로 전환되고, 아래 공간이 부족한 `bottom` 창은 위쪽으로 전환됩니다.
162
+ - `anchor`로 trigger 대신 element, ref, resolver 함수를 기준점으로 사용할 수 있습니다. 열려 있는 anchored window는 anchor가 크기 변화 없이 layout에서 이동해도 좌표를 다시 맞춥니다.
163
+ - 창을 drag하면 anchor에서 분리되어 free window가 됩니다. `position`은 controlled 자유 좌표, `defaultPosition`은 처음부터 분리된 초기 좌표입니다.
164
+ - `onPositionChange`는 anchor 재배치, drag, viewport 보정 중 좌표 변경을 알리고, `onPositionCommit`은 drag 종료 좌표를 저장할 때 사용합니다.
165
+ - `collisionBoundary`는 기본 viewport이며 특정 element를 전달하면 해당 element의 화면상 rect를 배치·이동 경계로 사용합니다.
166
+ - 기본 `dragHandleVisibility={48}`은 viewport 높이가 줄어도 drag handle의 48px을 남겨 창을 복구할 수 있게 합니다.
167
+ - `resize="fixed"`는 Modal popup과 같은 고정 높이 surface를 사용합니다. Body가 넘치면 내부만 스크롤되고 Header와 Footer의 경계 상태가 자동 갱신됩니다.
168
+ - Footer의 기본 action 조합은 Modal과 동일하게 `ActionArea`와 `ActionAreaButton`을 사용합니다.
169
+ - `ModalWindowRoot`는 배경을 inert 처리하고 focus를 가두는 application modal입니다. 배경 pointer 작업만 허용하고 focus는 창에 유지해야 하면 `FloatingWindowRoot modal='trap-focus'`를 사용합니다.
170
+ - modeless `FloatingWindowRoot`는 기본적으로 현재 focus를 유지하며, `ModalWindowRoot`는 Modal과 동일하게 등록된 title을 초기 focus로 사용합니다. `initialFocus`를 명시하면 두 root 모두 해당 정책을 우선합니다.
171
+ - `FloatingWindowClose`의 접근성 이름은 명시한 `aria-label`을 우선하고, 없으면 `label`(기본값 `닫기`)을 사용합니다.
172
+ - `FloatingWindowHeader`와 `FloatingWindowNavigationSection`은 surface 최상단을 소유하는 대체형 chrome입니다. Navigation을 사용할 때는 title이 기본적으로 dialog 접근성 이름을 제공합니다.
173
+ - Header와 명시적인 `FloatingWindowDragHandle`에서 drag를 시작할 수 있습니다. 내부 interactive element는 자동 제외되며 custom interactive target은 `data-oc-window-no-drag`를 선언할 수 있습니다.
174
+ - `FloatingWindowManager`는 열린 창을 등록하고 open, pointer, focus 활성화 순서에 따라 stack level을 정규화합니다. Manager 안의 각 root에는 고유한 `windowId`가 필요합니다.
175
+ - Escape와 outside dismissal은 활성 창 하나에만 적용됩니다. 활성 창의 종료 모션이 끝나면 바로 아래 창이 활성화되며, 개별 창의 geometry나 position 저장은 Manager가 소유하지 않습니다.
176
+ - 비활성 modeless 창의 명시적 Close는 창을 활성화하거나 최상단으로 올리지 않고 현재 stack 위치에서 종료합니다.
177
+ - modeless 창의 활성화는 stacking만 변경하며 포커스를 강제로 이동하지 않습니다. 닫힐 때의 포커스 복원은 각 Dialog trigger 계약을 따릅니다.
178
+ - modal과 `trap-focus` 창은 focus isolation을 보호하기 위해 modeless 창보다 위에 유지됩니다. 같은 modality tier 안에서는 최근 활성화한 창이 위로 이동합니다.
179
+ - focus-owning 창이 여러 개 열리면 활성 창 하나만 실제 modal/inert owner가 됩니다. 아래 modal은 요청한 modality와 stack tier를 유지한 채 대기하고, 위 창 종료 후 focus isolation을 승계합니다.
180
+ - Manager 밖에서는 기존 단일 창 동작을 유지합니다. `onActivate`, `stackLevel`은 외부 coordinator를 위한 unmanaged escape hatch이며 Manager 안에서는 자동 stack level이 우선합니다.
181
+
108
182
  ## Customization
109
183
 
110
184
  컴포넌트 커스터마이즈는 CSS Module 해시가 아니라 안정 data attribute와 component contract 변수를 사용합니다.
@@ -539,16 +613,22 @@ package는 VS Code CSS variable autocomplete 확장(`phoenisx.cssvar`)이 읽을
539
613
 
540
614
  MIT
541
615
 
616
+ ## 의견 나누기
617
+
618
+ GitHub 리포지터리 공개를 준비하고 있습니다. 그동안 의견이나 해결이 필요한 경우 [design@orioncactus.com](mailto:design@orioncactus.com)으로 편히 알려주세요.
619
+
542
620
  <!-- 버전은 `bun run agent:sync-version`이 릴리스마다 stamp합니다. 직접 수정하지 마세요. -->
543
621
 
544
- [api-conventions]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/api-conventions.md
545
- [selector-contract]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/selector-contract.md
546
- [colors]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/colors.md
547
- [typography]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/typography.md
548
- [scss-helpers]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/scss-helpers.md
549
- [motion]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/motion.md
550
- [spring]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/spring.md
551
- [responsive-foundation-profile]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/responsive-foundation-profile.md
552
- [tokens]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/tokens.md
553
- [stability]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/stability.md
554
- [editor-setup]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.12.2/docs/editor-setup.md
622
+ [storybook]: https://oc-ui-storybook.pages.dev
623
+ [changelog]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/CHANGELOG.md
624
+ [api-conventions]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/api-conventions.md
625
+ [selector-contract]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/selector-contract.md
626
+ [colors]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/colors.md
627
+ [typography]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/typography.md
628
+ [scss-helpers]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/scss-helpers.md
629
+ [motion]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/motion.md
630
+ [spring]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/spring.md
631
+ [responsive-foundation-profile]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/responsive-foundation-profile.md
632
+ [tokens]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/tokens.md
633
+ [stability]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/stability.md
634
+ [editor-setup]: https://cdn.jsdelivr.net/npm/@orioncactuscorp/ui@1.14.0/docs/editor-setup.md
@@ -1 +1 @@
1
- .oc-Badge-module__badge__ZbEBU{font-size:calc(var(--oc-typo-size-label1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-label1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-label1);font-weight:var(--oc-typo-weight-label1-medium);display:inline-flex;position:relative;isolation:isolate;align-items:center;justify-content:center;gap:var(--oc-space-item-gap-atom);appearance:none;margin:0;border:none;background:transparent;padding:0;color:var(--oc-badge-color);text-align:center;text-decoration:none;white-space:nowrap;transition:color calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback)}@media(prefers-reduced-motion:reduce){.oc-Badge-module__badge__ZbEBU{transition-property:color;transition-duration:calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-feedback)}}.oc-Badge-module__badge__ZbEBU:before{position:absolute;inset-block-start:calc(-1 * var(--oc-badge-padding-y));inset-inline-start:calc(-1 * var(--oc-badge-padding-x));z-index:1;box-sizing:content-box;border-radius:var(--oc-badge-radius);background-color:var(--oc-badge-background-color);padding:var(--oc-badge-padding-y) var(--oc-badge-padding-x);inline-size:100%;block-size:100%;content:"";opacity:var(--oc-badge-background-opacity);transition:background-color calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback),opacity calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback)}@media(prefers-reduced-motion:reduce){.oc-Badge-module__badge__ZbEBU:before{transition-property:background-color,opacity;transition-duration:calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-feedback)}}.oc-Badge-module__badge__ZbEBU:where(.oc-Badge-module__padding__kNk-D){overflow:hidden;border-radius:var(--oc-badge-radius);padding:var(--oc-badge-padding-y) var(--oc-badge-padding-x);--oc-interaction-inset-x: 0;--oc-interaction-inset-y: 0}.oc-Badge-module__badge__ZbEBU:where(.oc-Badge-module__padding__kNk-D):before{inset:0;padding:0}.oc-Badge-module__badge__ZbEBU:focus-visible:not(:disabled,[aria-disabled=true])>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-focus);transform:scale(1)}@media(hover:hover){.oc-Badge-module__badge__ZbEBU[data-oc-interactive=true]:hover:not(:disabled,[aria-disabled=true])>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-hover);transform:scale(1)}}.oc-Badge-module__badge__ZbEBU[data-oc-interactive=true]:active:not(:disabled,[aria-disabled=true])>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-active);transform:scale(1)}.oc-Badge-module__badge__ZbEBU[data-oc-interactive=true]{-webkit-user-select:none;user-select:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.oc-Badge-module__badge__ZbEBU[data-oc-interactive=true] [data-oc-part=content]{pointer-events:none}.oc-Badge-module__badge__ZbEBU:disabled,.oc-Badge-module__badge__ZbEBU[aria-disabled=true]{--oc-badge-color: var(--oc-color-theme-label-disable);--oc-badge-background-color: var(--oc-color-theme-interaction-disable);cursor:not-allowed}.oc-Badge-module__badge__ZbEBU [data-oc-part=content]{position:relative;z-index:3}.oc-Badge-module__badge__ZbEBU>[data-oc-component=interaction]{z-index:2;border-radius:var(--oc-badge-radius)}.oc-Badge-module__badge__ZbEBU{--oc-badge-padding-x: .4em;--oc-badge-padding-y: .25em;--oc-badge-radius: max(0px, .4em * var(--oc-atomic-radius-factor));--oc-badge-color: var(--oc-color-theme-label-alternative);--oc-badge-background-color: transparent;--oc-badge-background-opacity: var(--oc-color-global-opacity-100);--oc-interaction-color: currentcolor;--oc-interaction-inset-x: calc(-1 * var(--oc-badge-padding-x));--oc-interaction-inset-y: calc(-1 * var(--oc-badge-padding-y));--oc-interaction-radius: var(--oc-badge-radius)}.oc-Badge-module__normal__tNcew{--oc-badge-color: var(--oc-color-theme-label-alternative);--oc-badge-background-color: var(--oc-color-theme-fill-normal)}.oc-Badge-module__accent__nIDKx{--oc-badge-color: var(--oc-badge-accent-color, var(--oc-color-theme-primary-normal));--oc-badge-background-color: var(--oc-badge-accent-color, var(--oc-color-theme-primary-normal));--oc-badge-background-opacity: var(--oc-color-global-opacity-8)}.oc-Badge-module__overlay__4KVqG{-webkit-backdrop-filter:blur(var(--oc-atomic-blur-normal));backdrop-filter:blur(var(--oc-atomic-blur-normal));--oc-badge-color: var(--oc-color-theme-label-normal);--oc-badge-background-color: var(--oc-color-theme-background-normal-normal);--oc-badge-background-opacity: var(--oc-color-global-opacity-74)}.oc-Badge-module__tiny__2VWq-{font-size:calc(var(--oc-typo-size-caption1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-caption1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-caption1);font-weight:var(--oc-typo-weight-caption1-bold);--oc-badge-padding-x: .375em;--oc-badge-padding-y: .1em;--oc-badge-radius: max(0px, .3125em * var(--oc-atomic-radius-factor))}
1
+ .oc-Badge-module__badge__ZbEBU{font-size:calc(var(--oc-typo-size-label1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-label1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-label1);font-weight:var(--oc-typo-weight-label1-medium);display:inline-flex;position:relative;isolation:isolate;align-items:center;justify-content:center;gap:var(--oc-space-item-gap-atom);appearance:none;margin:0;border:none;background:transparent;padding:0;color:var(--oc-badge-color);text-align:center;text-decoration:none;white-space:nowrap;transition:color calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback)}@media(prefers-reduced-motion:reduce){.oc-Badge-module__badge__ZbEBU{transition-property:color;transition-duration:calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-feedback)}}.oc-Badge-module__badge__ZbEBU:before{position:absolute;inset-block-start:calc(-1 * var(--oc-badge-padding-y));inset-inline-start:calc(-1 * var(--oc-badge-padding-x));z-index:1;box-sizing:content-box;border-radius:var(--oc-badge-radius);background-color:var(--oc-badge-background-color);padding:var(--oc-badge-padding-y) var(--oc-badge-padding-x);inline-size:100%;block-size:100%;content:"";opacity:var(--oc-badge-background-opacity);transition:background-color calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback),opacity calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) var(--oc-motion-timing-feedback)}@media(prefers-reduced-motion:reduce){.oc-Badge-module__badge__ZbEBU:before{transition-property:background-color,opacity;transition-duration:calc(var(--oc-motion-duration-feedback) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-feedback)}}.oc-Badge-module__badge__ZbEBU:where(.oc-Badge-module__padding__kNk-D){overflow:hidden;border-radius:var(--oc-badge-radius);padding:var(--oc-badge-padding-y) var(--oc-badge-padding-x);--oc-interaction-inset-x: 0;--oc-interaction-inset-y: 0}.oc-Badge-module__badge__ZbEBU:where(.oc-Badge-module__padding__kNk-D):before{inset:0;padding:0}.oc-Badge-module__badge__ZbEBU:focus-visible:not(:disabled,[aria-disabled=true])>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-focus);transform:scale(1)}@media(hover:hover){.oc-Badge-module__badge__ZbEBU[data-oc-interactive=true]:hover:not(:disabled,[aria-disabled=true])>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-hover);transform:scale(1)}}.oc-Badge-module__badge__ZbEBU[data-oc-interactive=true]:active:not(:disabled,[aria-disabled=true])>[data-oc-component=interaction]{opacity:var(--oc-interaction-opacity-active);transform:scale(1)}.oc-Badge-module__badge__ZbEBU[data-oc-interactive=true]{-webkit-user-select:none;user-select:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.oc-Badge-module__badge__ZbEBU[data-oc-interactive=true] [data-oc-part=content]{pointer-events:none}.oc-Badge-module__badge__ZbEBU:disabled,.oc-Badge-module__badge__ZbEBU[aria-disabled=true]{--oc-badge-color: var(--oc-color-theme-label-disable);--oc-badge-background-color: var(--oc-color-theme-interaction-disable);cursor:not-allowed}.oc-Badge-module__badge__ZbEBU [data-oc-part=content]{position:relative;z-index:3}.oc-Badge-module__badge__ZbEBU>[data-oc-component=interaction]{z-index:2;border-radius:var(--oc-badge-radius)}.oc-Badge-module__badge__ZbEBU{--oc-badge-padding-x: .4em;--oc-badge-padding-y: .25em;--oc-badge-radius: max(0px, .4em * var(--oc-atomic-radius-factor));--oc-badge-color: var(--oc-color-theme-label-alternative);--oc-badge-background-color: transparent;--oc-badge-background-opacity: var(--oc-color-global-opacity-100);--oc-interaction-color: currentcolor;--oc-interaction-inset-x: calc(-1 * var(--oc-badge-padding-x));--oc-interaction-inset-y: calc(-1 * var(--oc-badge-padding-y));--oc-interaction-radius: var(--oc-badge-radius)}.oc-Badge-module__normal__tNcew{--oc-badge-color: var(--oc-color-theme-label-alternative);--oc-badge-background-color: var(--oc-color-theme-fill-normal)}.oc-Badge-module__accent__nIDKx{--oc-badge-color: var(--oc-badge-accent-color, var(--oc-color-theme-primary-normal));--oc-badge-background-color: var(--oc-badge-accent-color, var(--oc-color-theme-primary-normal));--oc-badge-background-opacity: var(--oc-color-global-opacity-8)}.oc-Badge-module__overlay__4KVqG{-webkit-backdrop-filter:blur(var(--oc-atomic-blur-normal));backdrop-filter:blur(var(--oc-atomic-blur-normal));--oc-badge-color: var(--oc-color-theme-label-normal);--oc-badge-background-color: var(--oc-color-theme-background-normal-normal);--oc-badge-background-opacity: var(--oc-color-global-opacity-74)}.oc-Badge-module__xsmall__twvBK{font-size:calc(var(--oc-typo-size-caption1) * var(--oc-typo-size-factor, 1));line-height:calc(var(--oc-typo-height-caption1) * var(--oc-typo-size-factor, 1));letter-spacing:var(--oc-typo-spacing-caption1);font-weight:var(--oc-typo-weight-caption1-bold);--oc-badge-padding-x: .375em;--oc-badge-padding-y: .1em;--oc-badge-radius: max(0px, .3125em * var(--oc-atomic-radius-factor))}
@@ -1,17 +1,17 @@
1
- import './Badge.css';const o = "oc-Badge-module__badge__ZbEBU", e = "oc-Badge-module__padding__kNk-D", _ = "oc-Badge-module__normal__tNcew", a = "oc-Badge-module__accent__nIDKx", d = "oc-Badge-module__overlay__4KVqG", c = "oc-Badge-module__tiny__2VWq-", n = {
2
- badge: o,
3
- padding: e,
4
- normal: _,
5
- accent: a,
1
+ import './Badge.css';const a = "oc-Badge-module__badge__ZbEBU", o = "oc-Badge-module__padding__kNk-D", e = "oc-Badge-module__normal__tNcew", _ = "oc-Badge-module__accent__nIDKx", d = "oc-Badge-module__overlay__4KVqG", c = "oc-Badge-module__xsmall__twvBK", l = {
2
+ badge: a,
3
+ padding: o,
4
+ normal: e,
5
+ accent: _,
6
6
  overlay: d,
7
- tiny: c
7
+ xsmall: c
8
8
  };
9
9
  export {
10
- a as accent,
11
- o as badge,
12
- n as default,
13
- _ as normal,
10
+ _ as accent,
11
+ a as badge,
12
+ l as default,
13
+ e as normal,
14
14
  d as overlay,
15
- e as padding,
16
- c as tiny
15
+ o as padding,
16
+ c as xsmall
17
17
  };
@@ -0,0 +1 @@
1
+ .oc-FloatingWindow-module__trigger__qlrNq{cursor:pointer}.oc-FloatingWindow-module__backdrop__53p3-,.oc-FloatingWindow-module__positioner__yoopu{--oc-floating-window-stack-offset: 0;--_-floating-window-z-index: calc(var(--oc-zindex-4) + var(--oc-floating-window-stack-offset));position:fixed;inset:0}.oc-FloatingWindow-module__backdrop__53p3-{z-index:var(--_-floating-window-z-index);background-color:var(--oc-color-theme-material-dimmer);transition:opacity calc(.486s * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) linear(0 0%,.0045 .83%,.0168 1.67%,.0355 2.5%,.0593 3.33%,.087 4.17%,.1177 5%,.1506 5.83%,.1851 6.67%,.2205 7.5%,.2564 8.33%,.2924 9.17%,.3281 10%,.3633 10.83%,.3978 11.67%,.4314 12.5%,.464 13.33%,.4954 14.17%,.5257 15%,.5547 15.83%,.5824 16.67%,.6088 17.5%,.6339 18.33%,.6577 19.17%,.6803 20%,.7016 20.83%,.7218 21.67%,.7407 22.5%,.7586 23.33%,.7754 24.17%,.7911 25%,.8059 25.83%,.8197 26.67%,.8326 27.5%,.8447 28.33%,.856 29.17%,.8666 30%,.8764 30.83%,.8855 31.67%,.8941 32.5%,.902 33.33%,.9094 34.17%,.9162 35%,.9226 35.83%,.9285 36.67%,.9339 37.5%,.939 38.33%,.9437 39.17%,.9481 40%,.9521 40.83%,.9558 41.67%,.9593 42.5%,.9625 43.33%,.9654 44.17%,.9682 45%,.9707 45.83%,.973 46.67%,.9752 47.5%,.9771 48.33%,.979 49.17%,.9806 50%,.9822 50.83%,.9836 51.67%,.985 52.5%,.9862 53.33%,.9873 54.17%,.9883 55%,.9893 55.83%,.9901 56.67%,.991 57.5%,.9917 58.33%,.9924 59.17%,.993 60%,.9936 60.83%,.9941 61.67%,.9946 62.5%,.995 63.33%,.9954 64.17%,.9958 65%,.9962 65.83%,.9965 66.67%,.9968 67.5%,.997 68.33%,.9973 69.17%,.9975 70%,.9977 70.83%,.9979 71.67%,.9981 72.5%,.9983 73.33%,.9984 74.17%,.9985 75%,.9987 75.83%,.9988 76.67%,.9989 77.5%,.999 78.33%,.9991 79.17%,.9991 80%,.9992 80.83%,.9993 81.67%,.9993 82.5%,.9994 83.33%,.9994 84.17%,.9995 85%,.9995 85.83%,.9996 86.67%,.9996 87.5%,.9996 88.33%,.9997 89.17%,.9997 90%,.9997 90.83%,.9998 91.67%,.9998 92.5%,.9998 93.33%,.9998 94.17%,.9998 95%,.9998 95.83%,.9999 96.67%,.9999 97.5%,.9999 98.33%,.9999 99.17%,1 100%)}@media(prefers-reduced-motion:reduce){.oc-FloatingWindow-module__backdrop__53p3-{transition-property:opacity;transition-duration:calc(var(--oc-motion-duration-surface) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-surface)}}.oc-FloatingWindow-module__backdrop__53p3-[data-ending-style],.oc-FloatingWindow-module__backdrop__53p3-[data-starting-style]{opacity:0}.oc-FloatingWindow-module__positioner__yoopu{z-index:calc(var(--_-floating-window-z-index) + 1);pointer-events:none}.oc-FloatingWindow-module__window__7l1n6{--oc-floating-window-x: 0px;--oc-floating-window-y: 0px;position:fixed;inset-block-start:0;inset-inline-start:0;max-width:100%;max-height:100dvh;opacity:1;outline:none;pointer-events:auto;transform:translate3d(var(--oc-floating-window-x),var(--oc-floating-window-y),0);transition:opacity calc(.486s * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) linear(0 0%,.0045 .83%,.0168 1.67%,.0355 2.5%,.0593 3.33%,.087 4.17%,.1177 5%,.1506 5.83%,.1851 6.67%,.2205 7.5%,.2564 8.33%,.2924 9.17%,.3281 10%,.3633 10.83%,.3978 11.67%,.4314 12.5%,.464 13.33%,.4954 14.17%,.5257 15%,.5547 15.83%,.5824 16.67%,.6088 17.5%,.6339 18.33%,.6577 19.17%,.6803 20%,.7016 20.83%,.7218 21.67%,.7407 22.5%,.7586 23.33%,.7754 24.17%,.7911 25%,.8059 25.83%,.8197 26.67%,.8326 27.5%,.8447 28.33%,.856 29.17%,.8666 30%,.8764 30.83%,.8855 31.67%,.8941 32.5%,.902 33.33%,.9094 34.17%,.9162 35%,.9226 35.83%,.9285 36.67%,.9339 37.5%,.939 38.33%,.9437 39.17%,.9481 40%,.9521 40.83%,.9558 41.67%,.9593 42.5%,.9625 43.33%,.9654 44.17%,.9682 45%,.9707 45.83%,.973 46.67%,.9752 47.5%,.9771 48.33%,.979 49.17%,.9806 50%,.9822 50.83%,.9836 51.67%,.985 52.5%,.9862 53.33%,.9873 54.17%,.9883 55%,.9893 55.83%,.9901 56.67%,.991 57.5%,.9917 58.33%,.9924 59.17%,.993 60%,.9936 60.83%,.9941 61.67%,.9946 62.5%,.995 63.33%,.9954 64.17%,.9958 65%,.9962 65.83%,.9965 66.67%,.9968 67.5%,.997 68.33%,.9973 69.17%,.9975 70%,.9977 70.83%,.9979 71.67%,.9981 72.5%,.9983 73.33%,.9984 74.17%,.9985 75%,.9987 75.83%,.9988 76.67%,.9989 77.5%,.999 78.33%,.9991 79.17%,.9991 80%,.9992 80.83%,.9993 81.67%,.9993 82.5%,.9994 83.33%,.9994 84.17%,.9995 85%,.9995 85.83%,.9996 86.67%,.9996 87.5%,.9996 88.33%,.9997 89.17%,.9997 90%,.9997 90.83%,.9998 91.67%,.9998 92.5%,.9998 93.33%,.9998 94.17%,.9998 95%,.9998 95.83%,.9999 96.67%,.9999 97.5%,.9999 98.33%,.9999 99.17%,1 100%)}@media(prefers-reduced-motion:reduce){.oc-FloatingWindow-module__window__7l1n6{transition-property:opacity;transition-duration:calc(var(--oc-motion-duration-surface) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-surface)}}.oc-FloatingWindow-module__window__7l1n6[data-oc-positioned=false]{visibility:hidden}.oc-FloatingWindow-module__window__7l1n6[data-ending-style],.oc-FloatingWindow-module__window__7l1n6[data-starting-style]{opacity:0}.oc-FloatingWindow-module__window__7l1n6[data-ending-style]>[data-oc-part=surface-motion],.oc-FloatingWindow-module__window__7l1n6[data-starting-style]>[data-oc-part=surface-motion]{--oc-modal-scale: max(0, 1 + (.98 - 1) * var(--oc-motion-scale-factor-spatial))}.oc-FloatingWindow-module__window__7l1n6[data-ending-style]>[data-oc-part=surface-motion]:before,.oc-FloatingWindow-module__window__7l1n6[data-ending-style]>[data-oc-part=surface-motion]>[data-oc-part=surface],.oc-FloatingWindow-module__window__7l1n6[data-starting-style]>[data-oc-part=surface-motion]:before,.oc-FloatingWindow-module__window__7l1n6[data-starting-style]>[data-oc-part=surface-motion]>[data-oc-part=surface]{transform:scale(var(--oc-modal-scale))}.oc-FloatingWindow-module__window__7l1n6[data-ending-style]{transition:opacity calc(.449s * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) linear(0 0%,.0045 .83%,.0169 1.67%,.0356 2.5%,.0594 3.33%,.0871 4.17%,.1179 5%,.1508 5.83%,.1853 6.67%,.2208 7.5%,.2567 8.33%,.2927 9.17%,.3285 10%,.3637 10.83%,.3983 11.67%,.4319 12.5%,.4644 13.33%,.4959 14.17%,.5261 15%,.5551 15.83%,.5828 16.67%,.6092 17.5%,.6343 18.33%,.6582 19.17%,.6807 20%,.7021 20.83%,.7222 21.67%,.7412 22.5%,.759 23.33%,.7758 24.17%,.7915 25%,.8063 25.83%,.8201 26.67%,.833 27.5%,.8451 28.33%,.8564 29.17%,.8669 30%,.8767 30.83%,.8858 31.67%,.8943 32.5%,.9022 33.33%,.9096 34.17%,.9164 35%,.9228 35.83%,.9287 36.67%,.9341 37.5%,.9392 38.33%,.9439 39.17%,.9482 40%,.9523 40.83%,.956 41.67%,.9594 42.5%,.9626 43.33%,.9656 44.17%,.9683 45%,.9708 45.83%,.9731 46.67%,.9753 47.5%,.9772 48.33%,.979 49.17%,.9807 50%,.9823 50.83%,.9837 51.67%,.985 52.5%,.9862 53.33%,.9874 54.17%,.9884 55%,.9893 55.83%,.9902 56.67%,.991 57.5%,.9917 58.33%,.9924 59.17%,.993 60%,.9936 60.83%,.9941 61.67%,.9946 62.5%,.9951 63.33%,.9955 64.17%,.9958 65%,.9962 65.83%,.9965 66.67%,.9968 67.5%,.9971 68.33%,.9973 69.17%,.9975 70%,.9977 70.83%,.9979 71.67%,.9981 72.5%,.9983 73.33%,.9984 74.17%,.9985 75%,.9987 75.83%,.9988 76.67%,.9989 77.5%,.999 78.33%,.9991 79.17%,.9991 80%,.9992 80.83%,.9993 81.67%,.9993 82.5%,.9994 83.33%,.9994 84.17%,.9995 85%,.9995 85.83%,.9996 86.67%,.9996 87.5%,.9996 88.33%,.9997 89.17%,.9997 90%,.9997 90.83%,.9998 91.67%,.9998 92.5%,.9998 93.33%,.9998 94.17%,.9998 95%,.9998 95.83%,.9999 96.67%,.9999 97.5%,.9999 98.33%,.9999 99.17%,1 100%)}.oc-FloatingWindow-module__window__7l1n6[data-ending-style]>[data-oc-part=surface-motion]:before,.oc-FloatingWindow-module__window__7l1n6[data-ending-style]>[data-oc-part=surface-motion]>[data-oc-part=surface]{transition:transform calc(.449s * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) linear(0 0%,.0045 .83%,.0169 1.67%,.0356 2.5%,.0594 3.33%,.0871 4.17%,.1179 5%,.1508 5.83%,.1853 6.67%,.2208 7.5%,.2567 8.33%,.2927 9.17%,.3285 10%,.3637 10.83%,.3983 11.67%,.4319 12.5%,.4644 13.33%,.4959 14.17%,.5261 15%,.5551 15.83%,.5828 16.67%,.6092 17.5%,.6343 18.33%,.6582 19.17%,.6807 20%,.7021 20.83%,.7222 21.67%,.7412 22.5%,.759 23.33%,.7758 24.17%,.7915 25%,.8063 25.83%,.8201 26.67%,.833 27.5%,.8451 28.33%,.8564 29.17%,.8669 30%,.8767 30.83%,.8858 31.67%,.8943 32.5%,.9022 33.33%,.9096 34.17%,.9164 35%,.9228 35.83%,.9287 36.67%,.9341 37.5%,.9392 38.33%,.9439 39.17%,.9482 40%,.9523 40.83%,.956 41.67%,.9594 42.5%,.9626 43.33%,.9656 44.17%,.9683 45%,.9708 45.83%,.9731 46.67%,.9753 47.5%,.9772 48.33%,.979 49.17%,.9807 50%,.9823 50.83%,.9837 51.67%,.985 52.5%,.9862 53.33%,.9874 54.17%,.9884 55%,.9893 55.83%,.9902 56.67%,.991 57.5%,.9917 58.33%,.9924 59.17%,.993 60%,.9936 60.83%,.9941 61.67%,.9946 62.5%,.9951 63.33%,.9955 64.17%,.9958 65%,.9962 65.83%,.9965 66.67%,.9968 67.5%,.9971 68.33%,.9973 69.17%,.9975 70%,.9977 70.83%,.9979 71.67%,.9981 72.5%,.9983 73.33%,.9984 74.17%,.9985 75%,.9987 75.83%,.9988 76.67%,.9989 77.5%,.999 78.33%,.9991 79.17%,.9991 80%,.9992 80.83%,.9993 81.67%,.9993 82.5%,.9994 83.33%,.9994 84.17%,.9995 85%,.9995 85.83%,.9996 86.67%,.9996 87.5%,.9996 88.33%,.9997 89.17%,.9997 90%,.9997 90.83%,.9998 91.67%,.9998 92.5%,.9998 93.33%,.9998 94.17%,.9998 95%,.9998 95.83%,.9999 96.67%,.9999 97.5%,.9999 98.33%,.9999 99.17%,1 100%)}.oc-FloatingWindow-module__window__7l1n6[data-ending-style]>[data-oc-part=surface-motion]:before{transition:transform calc(.449s * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) linear(0 0%,.0045 .83%,.0169 1.67%,.0356 2.5%,.0594 3.33%,.0871 4.17%,.1179 5%,.1508 5.83%,.1853 6.67%,.2208 7.5%,.2567 8.33%,.2927 9.17%,.3285 10%,.3637 10.83%,.3983 11.67%,.4319 12.5%,.4644 13.33%,.4959 14.17%,.5261 15%,.5551 15.83%,.5828 16.67%,.6092 17.5%,.6343 18.33%,.6582 19.17%,.6807 20%,.7021 20.83%,.7222 21.67%,.7412 22.5%,.759 23.33%,.7758 24.17%,.7915 25%,.8063 25.83%,.8201 26.67%,.833 27.5%,.8451 28.33%,.8564 29.17%,.8669 30%,.8767 30.83%,.8858 31.67%,.8943 32.5%,.9022 33.33%,.9096 34.17%,.9164 35%,.9228 35.83%,.9287 36.67%,.9341 37.5%,.9392 38.33%,.9439 39.17%,.9482 40%,.9523 40.83%,.956 41.67%,.9594 42.5%,.9626 43.33%,.9656 44.17%,.9683 45%,.9708 45.83%,.9731 46.67%,.9753 47.5%,.9772 48.33%,.979 49.17%,.9807 50%,.9823 50.83%,.9837 51.67%,.985 52.5%,.9862 53.33%,.9874 54.17%,.9884 55%,.9893 55.83%,.9902 56.67%,.991 57.5%,.9917 58.33%,.9924 59.17%,.993 60%,.9936 60.83%,.9941 61.67%,.9946 62.5%,.9951 63.33%,.9955 64.17%,.9958 65%,.9962 65.83%,.9965 66.67%,.9968 67.5%,.9971 68.33%,.9973 69.17%,.9975 70%,.9977 70.83%,.9979 71.67%,.9981 72.5%,.9983 73.33%,.9984 74.17%,.9985 75%,.9987 75.83%,.9988 76.67%,.9989 77.5%,.999 78.33%,.9991 79.17%,.9991 80%,.9992 80.83%,.9993 81.67%,.9993 82.5%,.9994 83.33%,.9994 84.17%,.9995 85%,.9995 85.83%,.9996 86.67%,.9996 87.5%,.9996 88.33%,.9997 89.17%,.9997 90%,.9997 90.83%,.9998 91.67%,.9998 92.5%,.9998 93.33%,.9998 94.17%,.9998 95%,.9998 95.83%,.9999 96.67%,.9999 97.5%,.9999 98.33%,.9999 99.17%,1 100%),opacity calc(.449s * var(--oc-motion-duration-factor) * var(--oc-motion-pace-normal) * 1) linear(0 0%,.0045 .83%,.0169 1.67%,.0356 2.5%,.0594 3.33%,.0871 4.17%,.1179 5%,.1508 5.83%,.1853 6.67%,.2208 7.5%,.2567 8.33%,.2927 9.17%,.3285 10%,.3637 10.83%,.3983 11.67%,.4319 12.5%,.4644 13.33%,.4959 14.17%,.5261 15%,.5551 15.83%,.5828 16.67%,.6092 17.5%,.6343 18.33%,.6582 19.17%,.6807 20%,.7021 20.83%,.7222 21.67%,.7412 22.5%,.759 23.33%,.7758 24.17%,.7915 25%,.8063 25.83%,.8201 26.67%,.833 27.5%,.8451 28.33%,.8564 29.17%,.8669 30%,.8767 30.83%,.8858 31.67%,.8943 32.5%,.9022 33.33%,.9096 34.17%,.9164 35%,.9228 35.83%,.9287 36.67%,.9341 37.5%,.9392 38.33%,.9439 39.17%,.9482 40%,.9523 40.83%,.956 41.67%,.9594 42.5%,.9626 43.33%,.9656 44.17%,.9683 45%,.9708 45.83%,.9731 46.67%,.9753 47.5%,.9772 48.33%,.979 49.17%,.9807 50%,.9823 50.83%,.9837 51.67%,.985 52.5%,.9862 53.33%,.9874 54.17%,.9884 55%,.9893 55.83%,.9902 56.67%,.991 57.5%,.9917 58.33%,.9924 59.17%,.993 60%,.9936 60.83%,.9941 61.67%,.9946 62.5%,.9951 63.33%,.9955 64.17%,.9958 65%,.9962 65.83%,.9965 66.67%,.9968 67.5%,.9971 68.33%,.9973 69.17%,.9975 70%,.9977 70.83%,.9979 71.67%,.9981 72.5%,.9983 73.33%,.9984 74.17%,.9985 75%,.9987 75.83%,.9988 76.67%,.9989 77.5%,.999 78.33%,.9991 79.17%,.9991 80%,.9992 80.83%,.9993 81.67%,.9993 82.5%,.9994 83.33%,.9994 84.17%,.9995 85%,.9995 85.83%,.9996 86.67%,.9996 87.5%,.9996 88.33%,.9997 89.17%,.9997 90%,.9997 90.83%,.9998 91.67%,.9998 92.5%,.9998 93.33%,.9998 94.17%,.9998 95%,.9998 95.83%,.9999 96.67%,.9999 97.5%,.9999 98.33%,.9999 99.17%,1 100%)}@media(prefers-reduced-motion:reduce){.oc-FloatingWindow-module__window__7l1n6[data-ending-style]>[data-oc-part=surface-motion]:before{transition-property:opacity;transition-duration:calc(var(--oc-motion-duration-surface-exit) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-surface-exit);transform:none}}.oc-FloatingWindow-module__window__7l1n6[data-oc-window-dragging=true]{cursor:grabbing;-webkit-user-select:none;user-select:none}.oc-FloatingWindow-module__window__7l1n6 [data-oc-component=modal-header][data-oc-draggable=true]{cursor:grab;touch-action:none}.oc-FloatingWindow-module__window__7l1n6>.oc-FloatingWindow-module__presentationMotion__DWXpt{transform:none}.oc-FloatingWindow-module__dragHandle__MfwPD{min-width:0;touch-action:none}.oc-FloatingWindow-module__dragHandle__MfwPD[data-oc-draggable=true]{cursor:grab}@media(prefers-reduced-motion:reduce){.oc-FloatingWindow-module__backdrop__53p3-,.oc-FloatingWindow-module__window__7l1n6{transition-property:opacity;transition-duration:calc(var(--oc-motion-duration-surface) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-surface)}.oc-FloatingWindow-module__window__7l1n6[data-ending-style]>[data-oc-part=surface-motion],.oc-FloatingWindow-module__window__7l1n6[data-starting-style]>[data-oc-part=surface-motion]{--oc-modal-scale: 1}.oc-FloatingWindow-module__window__7l1n6>[data-oc-part=surface-motion]{transition-property:opacity;transition-duration:calc(var(--oc-motion-duration-surface) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-surface)}.oc-FloatingWindow-module__window__7l1n6>[data-oc-part=surface-motion]:before{transition-property:opacity;transition-duration:calc(var(--oc-motion-duration-surface) * var(--oc-motion-duration-factor-reduced) * var(--oc-motion-pace-normal) * 1);transition-timing-function:var(--oc-motion-timing-surface)}.oc-FloatingWindow-module__window__7l1n6>[data-oc-part=surface-motion]>[data-oc-part=surface]{transition:none}}