@rolemodel/optics 0.3.1 → 0.4.1

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 (37) hide show
  1. package/.babelrc.json +14 -0
  2. package/.github/pull_request_template.md +1 -0
  3. package/.github/workflows/publish-storybook.yml +1 -1
  4. package/.prettierignore +2 -0
  5. package/README.md +10 -14
  6. package/dist/css/optics.css +961 -446
  7. package/dist/css/optics.css.map +1 -1
  8. package/dist/scss/addons/tom-select.scss +1 -4
  9. package/dist/scss/components/alert.scss +56 -38
  10. package/dist/scss/components/avatar.scss +96 -0
  11. package/dist/scss/components/badge.scss +8 -3
  12. package/dist/scss/components/button.scss +168 -97
  13. package/dist/scss/components/button_group.scss +23 -5
  14. package/dist/scss/components/confirm-dialog.scss +88 -0
  15. package/dist/scss/components/divider.scss +59 -0
  16. package/dist/scss/components/form.scss +180 -49
  17. package/dist/scss/components/index.scss +6 -1
  18. package/dist/scss/components/modal.scss +156 -0
  19. package/dist/scss/components/pagination.scss +28 -0
  20. package/dist/scss/components/sidebar.scss +83 -159
  21. package/dist/scss/components/table.scss +22 -17
  22. package/dist/scss/components/tooltip.scss +136 -0
  23. package/dist/scss/core/tokens/base_tokens.scss +10 -5
  24. package/dist/scss/recipes/16six-sidebar.scss +32 -61
  25. package/dist/scss/recipes/domains-sidebar.scss +24 -44
  26. package/dist/tokens/tokens.json +9 -8
  27. package/package.json +30 -24
  28. package/.storybook/ModeSwitcher.jsx +0 -98
  29. package/.storybook/documentation.scss +0 -93
  30. package/.storybook/main.js +0 -11
  31. package/.storybook/manager.js +0 -22
  32. package/.storybook/preview.js +0 -12
  33. package/.storybook/rolemodelTheme.js +0 -10
  34. package/dist/scss/addons/rails-modal-and-panel/index.scss +0 -2
  35. package/dist/scss/addons/rails-modal-and-panel/modal.scss +0 -111
  36. package/dist/scss/components/flash.scss +0 -58
  37. /package/dist/scss/addons/{rails-modal-and-panel/panel.scss → panel.scss} +0 -0
@@ -228,8 +228,8 @@ select {
228
228
  /**
229
229
  * @tokens Encoded Images
230
230
  */
231
- --op-form-dropdown-arrow-width: 1rem;
232
- --op-form-dropdown-arrow: url("data:image/svg+xml,%3Csvg viewBox='0 0 10 7' version='1.1' xmlns='http://www.w3.org/2000/svg' width='10' height='7'%3E%3Cg transform='matrix(0.983953,0,0,1.00934,-9.22679,-3.65885)'%3E%3Cpath fill='%23d1d1d1' d='M9.37727 3.625l5.08154 6.93523L19.54036 3.625'/%3E%3C/g%3E%3C/svg%3E%0A");
231
+ --op-encoded-images-dropdown-arrow-width: var(--op-space-scale-unit);
232
+ --op-encoded-images-dropdown-arrow: url("data:image/svg+xml,%3Csvg viewBox='0 0 10 7' version='1.1' xmlns='http://www.w3.org/2000/svg' width='10' height='7'%3E%3Cg transform='matrix(0.983953,0,0,1.00934,-9.22679,-3.65885)'%3E%3Cpath fill='%23d1d1d1' d='M9.37727 3.625l5.08154 6.93523L19.54036 3.625'/%3E%3C/g%3E%3C/svg%3E%0A");
233
233
  /**
234
234
  * @tokens Space Scale
235
235
  * @presenter Spacing
@@ -278,9 +278,14 @@ select {
278
278
  * @tokens Input Focus
279
279
  * @presenter Shadow
280
280
  */
281
- --op-input-outer-focus: 0 0 0 var(--op-border-width-large) var(--op-color-primary-plus-four);
282
- --op-input-inner-focus: inset var(--op-border-all) var(--op-color-primary-minus-three);
283
- --op-input-focus: var(--op-input-inner-focus), var(--op-input-outer-focus);
281
+ --op-input-inner-focus: inset 0 0 0 var(--op-border-width-large);
282
+ --op-input-outer-focus: 0 0 0 var(--op-border-width-x-large);
283
+ --op-input-focus-primary: var(--op-input-inner-focus) var(--op-color-primary-plus-two),
284
+ var(--op-input-outer-focus) var(--op-color-primary-plus-five);
285
+ --op-input-focus-danger: var(--op-input-inner-focus) var(--op-color-alerts-danger-plus-two),
286
+ var(--op-input-outer-focus) var(--op-color-alerts-danger-plus-five);
287
+ --op-input-focus-warning: var(--op-input-inner-focus) var(--op-color-alerts-warning-plus-two),
288
+ var(--op-input-outer-focus) var(--op-color-alerts-warning-plus-five);
284
289
  }
285
290
 
286
291
  @keyframes rm-slide-in-out-flash {
@@ -2092,128 +2097,224 @@ small {
2092
2097
  }
2093
2098
  }
2094
2099
 
2095
- .alert-notice, .alert-info, .alert-danger, .alert-warning {
2100
+ .alert-notice, .alert-info, .alert-danger,
2101
+ .alert-alert, .alert-warning {
2096
2102
  display: flex;
2097
- align-items: flex-start;
2103
+ align-items: center;
2098
2104
  padding: var(--op-space-x-small) var(--op-space-medium);
2099
2105
  border-radius: var(--op-radius-medium);
2100
2106
  gap: var(--op-space-small);
2101
2107
  }
2102
- .alert-notice .alert__icon, .alert-info .alert__icon, .alert-danger .alert__icon, .alert-warning .alert__icon {
2108
+ .alert-notice .alert__icon, .alert-info .alert__icon, .alert-danger .alert__icon,
2109
+ .alert-alert .alert__icon, .alert-warning .alert__icon {
2103
2110
  /* stylelint-disable scss/at-extend-no-missing-placeholder */
2104
2111
  /* stylelint-enable scss/at-extend-no-missing-placeholder */
2105
2112
  line-height: var(--op-line-height-dense);
2106
2113
  }
2107
- .alert-notice .alert__messages, .alert-info .alert__messages, .alert-danger .alert__messages, .alert-warning .alert__messages {
2114
+ .alert-notice .alert__messages, .alert-info .alert__messages, .alert-danger .alert__messages,
2115
+ .alert-alert .alert__messages, .alert-warning .alert__messages {
2108
2116
  display: flex;
2109
2117
  flex: 1;
2110
2118
  flex-direction: column;
2111
2119
  gap: var(--op-space-2x-small);
2112
2120
  }
2113
- .alert-notice .alert__title, .alert-info .alert__title, .alert-danger .alert__title, .alert-warning .alert__title {
2121
+ .alert-notice .alert__title, .alert-info .alert__title, .alert-danger .alert__title,
2122
+ .alert-alert .alert__title, .alert-warning .alert__title {
2114
2123
  font-size: var(--op-font-medium);
2115
2124
  font-weight: var(--op-font-weight-medium);
2116
2125
  }
2117
- .alert-notice .alert__description, .alert-info .alert__description, .alert-danger .alert__description, .alert-warning .alert__description {
2126
+ .alert-notice .alert__description, .alert-info .alert__description, .alert-danger .alert__description,
2127
+ .alert-alert .alert__description, .alert-warning .alert__description {
2118
2128
  font-size: var(--op-font-small);
2119
2129
  }
2130
+ .alert--flash.alert-notice, .alert--flash.alert-info, .alert--flash.alert-danger,
2131
+ .alert--flash.alert-alert, .alert--flash.alert-warning {
2132
+ position: fixed;
2133
+ z-index: var(--op-z-index-alert-group);
2134
+ top: var(--op-space-large);
2135
+ right: var(--op-space-large);
2136
+ animation: var(--op-animation-flash);
2137
+ }
2120
2138
 
2121
2139
  .alert-warning {
2122
- background-color: var(--op-color-alerts-warning-base);
2123
- color: var(--op-color-alerts-warning-on-base);
2140
+ background-color: var(--op-color-alerts-warning-plus-eight);
2141
+ box-shadow: var(--op-border-all) var(--op-color-alerts-warning-base);
2142
+ color: var(--op-color-alerts-warning-on-plus-eight);
2124
2143
  }
2125
2144
  .alert-warning .alert__title {
2126
- color: var(--op-color-alerts-warning-on-plus-one);
2145
+ color: var(--op-color-alerts-warning-on-plus-eight-alt);
2127
2146
  }
2128
2147
  .alert-warning.alert--muted {
2129
2148
  background-color: var(--op-color-alerts-warning-plus-five);
2149
+ box-shadow: none;
2130
2150
  color: var(--op-color-alerts-warning-on-plus-five);
2131
2151
  }
2132
2152
  .alert-warning.alert--muted .alert__title {
2133
- color: var(--op-color-alerts-warning-on-plus-six);
2153
+ color: var(--op-color-alerts-warning-on-plus-five-alt);
2134
2154
  }
2135
- .alert-warning.alert--outlined {
2136
- background-color: var(--op-color-alerts-warning-plus-eight);
2137
- box-shadow: var(--op-border-all) var(--op-color-alerts-warning-base);
2138
- color: var(--op-color-alerts-warning-on-plus-five);
2155
+ .alert-warning.alert--filled {
2156
+ background-color: var(--op-color-alerts-warning-base);
2157
+ box-shadow: none;
2158
+ color: var(--op-color-alerts-warning-on-base);
2139
2159
  }
2140
- .alert-warning.alert--outlined .alert__title {
2141
- color: var(--op-color-alerts-warning-on-plus-four);
2160
+ .alert-warning.alert--filled .alert__title {
2161
+ color: var(--op-color-alerts-warning-on-base-alt);
2142
2162
  }
2143
2163
 
2144
- .alert-danger {
2145
- background-color: var(--op-color-alerts-danger-base);
2146
- color: var(--op-color-alerts-danger-on-base);
2164
+ .alert-danger,
2165
+ .alert-alert {
2166
+ background-color: var(--op-color-alerts-danger-plus-eight);
2167
+ box-shadow: var(--op-border-all) var(--op-color-alerts-danger-base);
2168
+ color: var(--op-color-alerts-danger-on-plus-eight);
2147
2169
  /* stylelint-disable no-descending-specificity */
2148
2170
  /* stylelint-enable no-descending-specificity */
2149
2171
  }
2150
- .alert-danger .alert__title {
2151
- color: var(--op-color-alerts-danger-on-plus-one);
2172
+ .alert-danger .alert__title,
2173
+ .alert-alert .alert__title {
2174
+ color: var(--op-color-alerts-danger-on-plus-eight-alt);
2152
2175
  }
2153
- .alert-danger.alert--muted {
2176
+ .alert-danger.alert--muted,
2177
+ .alert-alert.alert--muted {
2154
2178
  background-color: var(--op-color-alerts-danger-plus-five);
2179
+ box-shadow: none;
2155
2180
  color: var(--op-color-alerts-danger-on-plus-five);
2156
2181
  }
2157
- .alert-danger.alert--muted .alert__title {
2158
- color: var(--op-color-alerts-danger-on-plus-six);
2182
+ .alert-danger.alert--muted .alert__title,
2183
+ .alert-alert.alert--muted .alert__title {
2184
+ color: var(--op-color-alerts-danger-on-plus-five-alt);
2159
2185
  }
2160
- .alert-danger.alert--outlined {
2161
- background-color: var(--op-color-alerts-danger-plus-eight);
2162
- box-shadow: var(--op-border-all) var(--op-color-alerts-danger-base);
2163
- color: var(--op-color-alerts-danger-on-plus-five);
2186
+ .alert-danger.alert--filled,
2187
+ .alert-alert.alert--filled {
2188
+ background-color: var(--op-color-alerts-danger-base);
2189
+ box-shadow: none;
2190
+ color: var(--op-color-alerts-danger-on-base);
2164
2191
  }
2165
- .alert-danger.alert--outlined .alert__title {
2166
- color: var(--op-color-alerts-danger-on-plus-four);
2192
+ .alert-danger.alert--filled .alert__title,
2193
+ .alert-alert.alert--filled .alert__title {
2194
+ color: var(--op-color-alerts-danger-on-base-alt);
2167
2195
  }
2168
2196
 
2169
2197
  .alert-info {
2170
- background-color: var(--op-color-alerts-info-base);
2171
- color: var(--op-color-alerts-info-on-base);
2198
+ background-color: var(--op-color-alerts-info-plus-eight);
2199
+ box-shadow: var(--op-border-all) var(--op-color-alerts-info-base);
2200
+ color: var(--op-color-alerts-info-on-plus-eight);
2172
2201
  /* stylelint-disable no-descending-specificity */
2173
2202
  /* stylelint-enable no-descending-specificity */
2174
2203
  }
2175
2204
  .alert-info .alert__title {
2176
- color: var(--op-color-alerts-info-on-plus-one);
2205
+ color: var(--op-color-alerts-info-on-plus-eight-alt);
2177
2206
  }
2178
2207
  .alert-info.alert--muted {
2179
2208
  background-color: var(--op-color-alerts-info-plus-five);
2209
+ box-shadow: none;
2180
2210
  color: var(--op-color-alerts-info-on-plus-five);
2181
2211
  }
2182
2212
  .alert-info.alert--muted .alert__title {
2183
- color: var(--op-color-alerts-info-on-plus-six);
2213
+ color: var(--op-color-alerts-info-on-plus-five-alt);
2184
2214
  }
2185
- .alert-info.alert--outlined {
2186
- background-color: var(--op-color-alerts-info-plus-eight);
2187
- box-shadow: var(--op-border-all) var(--op-color-alerts-info-base);
2188
- color: var(--op-color-alerts-info-on-plus-five);
2215
+ .alert-info.alert--filled {
2216
+ background-color: var(--op-color-alerts-info-base);
2217
+ box-shadow: none;
2218
+ color: var(--op-color-alerts-info-on-base);
2189
2219
  }
2190
- .alert-info.alert--outlined .alert__title {
2191
- color: var(--op-color-alerts-info-on-plus-four);
2220
+ .alert-info.alert--filled .alert__title {
2221
+ color: var(--op-color-alerts-info-on-base-alt);
2192
2222
  }
2193
2223
 
2194
2224
  .alert-notice {
2195
- background-color: var(--op-color-alerts-notice-base);
2196
- color: var(--op-color-alerts-notice-on-base);
2225
+ background-color: var(--op-color-alerts-notice-plus-eight);
2226
+ box-shadow: var(--op-border-all) var(--op-color-alerts-notice-base);
2227
+ color: var(--op-color-alerts-notice-on-plus-eight);
2197
2228
  /* stylelint-disable no-descending-specificity */
2198
2229
  /* stylelint-enable no-descending-specificity */
2199
2230
  }
2200
2231
  .alert-notice .alert__title {
2201
- color: var(--op-color-alerts-notice-on-plus-one);
2232
+ color: var(--op-color-alerts-notice-on-plus-eight-alt);
2202
2233
  }
2203
2234
  .alert-notice.alert--muted {
2204
2235
  background-color: var(--op-color-alerts-notice-plus-five);
2236
+ box-shadow: none;
2205
2237
  color: var(--op-color-alerts-notice-on-plus-five);
2206
2238
  }
2207
2239
  .alert-notice.alert--muted .alert__title {
2208
- color: var(--op-color-alerts-notice-on-plus-six);
2240
+ color: var(--op-color-alerts-notice-on-plus-five-alt);
2209
2241
  }
2210
- .alert-notice.alert--outlined {
2211
- background-color: var(--op-color-alerts-notice-plus-eight);
2212
- box-shadow: var(--op-border-all) var(--op-color-alerts-notice-base);
2213
- color: var(--op-color-alerts-notice-on-plus-five);
2242
+ .alert-notice.alert--filled {
2243
+ background-color: var(--op-color-alerts-notice-base);
2244
+ box-shadow: none;
2245
+ color: var(--op-color-alerts-notice-on-base);
2246
+ }
2247
+ .alert-notice.alert--filled .alert__title {
2248
+ color: var(--op-color-alerts-notice-on-base-alt);
2249
+ }
2250
+
2251
+ .avatar {
2252
+ --_op-avatar-border-radius: var(--op-radius-circle);
2253
+ --_op-avatar-inner-border-color: var(--op-color-neutral-minus-max);
2254
+ --_op-avatar-outer-border-color: var(--op-color-neutral-base);
2255
+ --_op-avatar-inner-border-width: calc(var(--op-border-width) + var(--op-border-width-large));
2256
+ --_op-avatar-outer-border-width: var(--op-border-width-large);
2257
+ --_op-avatar-disabled-opacity: 0.4;
2258
+ --_op-avatar-hover-opacity: 0.2;
2259
+ --_op-avatar-size-small: 3.2rem;
2260
+ --_op-avatar-size-medium: 4rem;
2261
+ --_op-avatar-size-large: 5.6rem;
2262
+ --__op-avatar-size: var(--_op-avatar-size-large);
2263
+ position: relative;
2264
+ z-index: 1;
2265
+ display: block;
2266
+ overflow: hidden;
2267
+ width: var(--__op-avatar-size);
2268
+ height: var(--__op-avatar-size);
2269
+ border-radius: var(--_op-avatar-border-radius);
2270
+ }
2271
+ .avatar::before {
2272
+ position: absolute;
2273
+ z-index: 2;
2274
+ content: "";
2275
+ inset: 0;
2214
2276
  }
2215
- .alert-notice.alert--outlined .alert__title {
2216
- color: var(--op-color-alerts-notice-on-plus-four);
2277
+ .avatar::after {
2278
+ position: absolute;
2279
+ z-index: 3;
2280
+ border-radius: var(--_op-avatar-border-radius);
2281
+ box-shadow: inset 0 0 0 var(--_op-avatar-outer-border-width) var(--_op-avatar-outer-border-color), inset 0 0 0 var(--_op-avatar-inner-border-width) var(--_op-avatar-inner-border-color);
2282
+ content: "";
2283
+ inset: 0;
2284
+ }
2285
+ .avatar img {
2286
+ width: 100%;
2287
+ height: 100%;
2288
+ object-fit: cover;
2289
+ }
2290
+ .avatar--disabled.avatar {
2291
+ opacity: var(--_op-avatar-disabled-opacity);
2292
+ pointer-events: none;
2293
+ }
2294
+ .avatar:hover:not(div, .avatar--disabled) {
2295
+ --_op-avatar-inner-border-color: var(--op-color-primary-base);
2296
+ --_op-avatar-outer-border-color: var(--op-color-primary-plus-one);
2297
+ cursor: pointer;
2298
+ }
2299
+ .avatar:hover:not(div, .avatar--disabled)::before {
2300
+ background-color: var(--op-color-primary-base);
2301
+ opacity: var(--_op-avatar-hover-opacity);
2302
+ }
2303
+ .avatar:focus, .avatar:focus-visible, .avatar:focus-within {
2304
+ outline: none;
2305
+ }
2306
+ .avatar:focus-visible:not(.avatar--disabled) {
2307
+ --_op-avatar-outer-border-color: var(--op-color-primary-base);
2308
+ cursor: pointer;
2309
+ }
2310
+ .avatar--small.avatar {
2311
+ --__op-avatar-size: var(--_op-avatar-size-small);
2312
+ }
2313
+ .avatar--medium.avatar {
2314
+ --__op-avatar-size: var(--_op-avatar-size-medium);
2315
+ }
2316
+ .avatar--large.avatar {
2317
+ --__op-avatar-size: var(--_op-avatar-size-large);
2217
2318
  }
2218
2319
 
2219
2320
  .badge-notice, .badge-info, .badge-danger, .badge-warning, .badge-primary, .badge {
@@ -2226,19 +2327,23 @@ small {
2226
2327
  color: var(--op-color-neutral-on-base);
2227
2328
  cursor: inherit;
2228
2329
  font-size: var(--op-font-x-small);
2229
- font-weight: var(--op-font-weight-semi-bold);
2230
- gap: var(--op-space-3x-small);
2330
+ font-weight: var(--op-font-weight-bold);
2331
+ gap: var(--op-space-x-small);
2231
2332
  letter-spacing: var(--op-letter-spacing-label);
2232
- line-height: var(--op-line-height-densest);
2333
+ line-height: var(--op-line-height-dense);
2233
2334
  user-select: none;
2234
2335
  white-space: nowrap;
2235
2336
  }
2337
+ .badge-notice .material-symbols-outlined, .badge-info .material-symbols-outlined, .badge-danger .material-symbols-outlined, .badge-warning .material-symbols-outlined, .badge-primary .material-symbols-outlined, .badge .material-symbols-outlined {
2338
+ font-size: var(--op-font-small);
2339
+ }
2236
2340
  .badge--pill.badge-notice, .badge--pill.badge-info, .badge--pill.badge-danger, .badge--pill.badge-warning, .badge--pill.badge-primary, .badge--pill.badge {
2237
2341
  border-radius: var(--op-radius-pill);
2238
2342
  }
2239
2343
  .badge--notification-right.badge-notice, .badge--notification-right.badge-info, .badge--notification-right.badge-danger, .badge--notification-right.badge-warning, .badge--notification-right.badge-primary, .badge--notification-right.badge {
2240
2344
  position: absolute;
2241
2345
  top: 0;
2346
+ box-shadow: 0 0 0 var(--op-border-width-large) var(--op-color-neutral-plus-max);
2242
2347
  pointer-events: none;
2243
2348
  right: 0;
2244
2349
  transform: translateY(-50%) translateX(50%);
@@ -2246,6 +2351,7 @@ small {
2246
2351
  .badge--notification-left.badge-notice, .badge--notification-left.badge-info, .badge--notification-left.badge-danger, .badge--notification-left.badge-warning, .badge--notification-left.badge-primary, .badge--notification-left.badge {
2247
2352
  position: absolute;
2248
2353
  top: 0;
2354
+ box-shadow: 0 0 0 var(--op-border-width-large) var(--op-color-neutral-plus-max);
2249
2355
  pointer-events: none;
2250
2356
  left: 0;
2251
2357
  transform: translateY(-50%) translateX(-50%);
@@ -2276,214 +2382,297 @@ small {
2276
2382
  color: var(--op-color-alerts-notice-on-base);
2277
2383
  }
2278
2384
 
2279
- .btn--outline.btn-delete:focus, .btn--outline.btn-secondary:focus, .btn--outline.btn-primary:focus, .btn--outline.btn:focus, .btn--outline.btn-delete:focus-within, .btn--outline.btn-secondary:focus-within, .btn--outline.btn-primary:focus-within, .btn--outline.btn:focus-within, .btn--outline.btn-delete:focus-visible, .btn--outline.btn-secondary:focus-visible, .btn--outline.btn-primary:focus-visible, .btn--outline.btn:focus-visible, .btn--no-border.btn-delete:focus, .btn--no-border.btn-secondary:focus, .btn--no-border.btn-primary:focus, .btn--no-border.btn:focus, .btn--no-border.btn-delete:focus-within, .btn--no-border.btn-secondary:focus-within, .btn--no-border.btn-primary:focus-within, .btn--no-border.btn:focus-within, .btn--no-border.btn-delete:focus-visible, .btn--no-border.btn-secondary:focus-visible, .btn--no-border.btn-primary:focus-visible, .btn--no-border.btn:focus-visible, .btn-delete:focus, .btn-secondary:focus, .btn-primary:focus, .btn:focus, .btn-delete:focus-within, .btn-secondary:focus-within, .btn-primary:focus-within, .btn:focus-within, .btn-delete:focus-visible, .btn-secondary:focus-visible, .btn-primary:focus-visible, .btn:focus-visible {
2280
- box-shadow: var(--op-input-focus);
2281
- outline: none;
2282
- }
2283
-
2284
- .btn-delete, .btn-secondary, .btn-primary, .btn {
2385
+ .btn-warning, .btn-delete, .btn-primary, .btn {
2285
2386
  --_op-btn-height-small: var(--op-input-height-small);
2286
2387
  --_op-btn-height-medium: var(--op-input-height-medium);
2287
2388
  --_op-btn-height-large: var(--op-input-height-large);
2288
2389
  --_op-btn-font-small: var(--op-font-x-small);
2289
2390
  --_op-btn-font-medium: var(--op-font-small);
2290
- --_op-btn-font-large: var(--op-font-medium);
2291
- --__op-btn-height: var(--_op-btn-height-medium);
2292
- --__op-btn-font-size: var(--_op-btn-font-medium);
2391
+ --_op-btn-font-large: var(--op-font-small);
2392
+ --_op-btn-padding-small: 0 var(--op-space-x-small);
2393
+ --_op-btn-padding-medium: 0 var(--op-space-small);
2394
+ --_op-btn-padding-large: 0 var(--op-space-small);
2395
+ --__op-btn-height: var(--_op-btn-height-large);
2396
+ --__op-btn-font-size: var(--_op-btn-font-large);
2397
+ --__op-btn-padding: var(--_op-btn-padding-large);
2293
2398
  display: inline-flex;
2294
- height: var(--__op-btn-height);
2399
+ min-height: var(--__op-btn-height);
2295
2400
  align-items: center;
2296
2401
  justify-content: center;
2297
- padding: 0 var(--op-space-medium);
2298
- border-radius: var(--op-radius-large);
2402
+ padding: var(--__op-btn-padding);
2403
+ border-radius: var(--op-radius-medium);
2299
2404
  appearance: none;
2300
2405
  cursor: pointer;
2301
2406
  font-size: var(--__op-btn-font-size);
2302
- font-weight: var(--op-font-weight-medium);
2407
+ font-weight: var(--op-font-weight-normal);
2303
2408
  gap: var(--op-space-x-small);
2304
2409
  text-align: center;
2305
2410
  text-decoration: none;
2306
2411
  transition: var(--op-transition-input);
2307
2412
  white-space: nowrap;
2308
2413
  }
2309
- .btn--pill.btn-delete, .btn--pill.btn-secondary, .btn--pill.btn-primary, .btn--pill.btn {
2414
+ .btn--pill.btn-warning, .btn--pill.btn-delete, .btn--pill.btn-primary, .btn--pill.btn {
2310
2415
  border-radius: var(--op-radius-pill);
2311
2416
  }
2312
- .btn--icon.btn-delete, .btn--icon.btn-secondary, .btn--icon.btn-primary, .btn--icon.btn {
2417
+ .btn--icon.btn-warning, .btn--icon.btn-delete, .btn--icon.btn-primary, .btn--icon.btn {
2313
2418
  width: var(--__op-btn-height);
2314
2419
  min-width: var(--__op-btn-height);
2315
2420
  padding: 0;
2316
- border-radius: var(--op-radius-circle);
2317
2421
  }
2318
- .btn--small.btn-delete, .btn--small.btn-secondary, .btn--small.btn-primary, .btn--small.btn {
2422
+ .btn--icon-with-label.btn-warning, .btn--icon-with-label.btn-delete, .btn--icon-with-label.btn-primary, .btn--icon-with-label.btn {
2423
+ flex-direction: column;
2424
+ padding: var(--op-space-small);
2425
+ gap: var(--op-space-3x-small);
2426
+ }
2427
+ .btn--small.btn-warning, .btn--small.btn-delete, .btn--small.btn-primary, .btn--small.btn {
2319
2428
  --__op-btn-height: var(--_op-btn-height-small);
2320
2429
  --__op-btn-font-size: var(--_op-btn-font-small);
2430
+ --__op-btn-padding: var(--_op-btn-padding-small);
2321
2431
  }
2322
- .btn--medium.btn-delete, .btn--medium.btn-secondary, .btn--medium.btn-primary, .btn--medium.btn {
2432
+ .btn--medium.btn-warning, .btn--medium.btn-delete, .btn--medium.btn-primary, .btn--medium.btn {
2323
2433
  --__op-btn-height: var(--_op-btn-height-medium);
2324
2434
  --__op-btn-font-size: var(--_op-btn-font-medium);
2435
+ --__op-btn-padding: var(--_op-btn-padding-medium);
2325
2436
  }
2326
- .btn--large.btn-delete, .btn--large.btn-secondary, .btn--large.btn-primary, .btn--large.btn {
2437
+ .btn--large.btn-warning, .btn--large.btn-delete, .btn--large.btn-primary, .btn--large.btn {
2327
2438
  --__op-btn-height: var(--_op-btn-height-large);
2328
2439
  --__op-btn-font-size: var(--_op-btn-font-large);
2440
+ --__op-btn-padding: var(--_op-btn-padding-large);
2329
2441
  }
2330
- .btn--disabled.btn-delete, .btn--disabled.btn-secondary, .btn--disabled.btn-primary, .btn--disabled.btn, .btn-delete:disabled, .btn-secondary:disabled, .btn-primary:disabled, .btn:disabled {
2331
- cursor: not-allowed;
2332
- opacity: 0.65;
2442
+ .btn--disabled.btn-warning, .btn--disabled.btn-delete, .btn--disabled.btn-primary, .btn--disabled.btn, .btn-warning:disabled, .btn-delete:disabled, .btn-primary:disabled, .btn:disabled {
2443
+ opacity: 0.44;
2444
+ pointer-events: none;
2445
+ -webkit-user-select: none; /* stylelint-disable property-no-vendor-prefix */
2446
+ user-select: none;
2333
2447
  }
2334
- .btn--with-badge.btn-delete, .btn--with-badge.btn-secondary, .btn--with-badge.btn-primary, .btn--with-badge.btn {
2448
+ .btn--with-badge.btn-warning, .btn--with-badge.btn-delete, .btn--with-badge.btn-primary, .btn--with-badge.btn {
2335
2449
  position: relative;
2336
2450
  }
2451
+ .btn-warning:focus, .btn-delete:focus, .btn-primary:focus, .btn:focus, .btn-warning:focus-within, .btn-delete:focus-within, .btn-primary:focus-within, .btn:focus-within, .btn-warning:focus-visible, .btn-delete:focus-visible, .btn-primary:focus-visible, .btn:focus-visible {
2452
+ outline: none;
2453
+ }
2337
2454
  @media (max-width: 768px) {
2338
- .btn-delete, .btn-secondary, .btn-primary, .btn {
2455
+ .btn-warning, .btn-delete, .btn-primary, .btn {
2339
2456
  --__op-btn-height: var(--_op-btn-height-large);
2340
2457
  --__op-btn-font-size: var(--_op-btn-font-large);
2341
2458
  }
2342
- .btn--small.btn-delete, .btn--small.btn-secondary, .btn--small.btn-primary, .btn--small.btn, .btn--medium.btn-delete, .btn--medium.btn-secondary, .btn--medium.btn-primary, .btn--medium.btn, .btn--large.btn-delete, .btn--large.btn-secondary, .btn--large.btn-primary, .btn--large.btn {
2459
+ .btn--small.btn-warning, .btn--small.btn-delete, .btn--small.btn-primary, .btn--small.btn, .btn--medium.btn-warning, .btn--medium.btn-delete, .btn--medium.btn-primary, .btn--medium.btn, .btn--large.btn-warning, .btn--large.btn-delete, .btn--large.btn-primary, .btn--large.btn {
2343
2460
  --__op-btn-height: var(--_op-btn-height-large);
2344
2461
  --__op-btn-font-size: var(--_op-btn-font-large);
2462
+ --__op-btn-padding: var(--_op-btn-padding-large);
2345
2463
  }
2346
2464
  }
2347
2465
 
2348
2466
  .btn {
2349
- background-color: transparent;
2350
- box-shadow: var(--op-border-all) var(--op-border-color);
2351
- color: var(--op-color-neutral-minus-max);
2467
+ background-color: var(--op-color-neutral-plus-eight);
2468
+ box-shadow: inset var(--op-border-all) var(--op-color-neutral-plus-four);
2469
+ color: var(--op-color-neutral-on-plus-eight);
2352
2470
  }
2353
- .btn:not(:disabled, .btn--disabled):hover {
2354
- background-color: var(--op-color-neutral-plus-seven);
2355
- color: var(--op-color-neutral-on-plus-seven);
2471
+ .btn.btn--active {
2472
+ background-color: var(--op-color-primary-plus-five);
2473
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
2474
+ color: var(--op-color-primary-on-plus-five);
2356
2475
  }
2357
- .btn.btn--no-border {
2358
- box-shadow: var(--op-border-all) transparent;
2476
+ .btn:hover {
2477
+ background-color: var(--op-color-primary-plus-eight);
2478
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
2479
+ color: var(--op-color-primary-on-plus-eight);
2480
+ }
2481
+ .btn:focus-visible {
2482
+ background-color: var(--op-color-neutral-plus-eight);
2483
+ box-shadow: var(--op-input-focus-primary);
2484
+ color: var(--op-color-neutral-on-plus-eight);
2359
2485
  }
2360
- .btn.btn--no-border:not(:disabled, .btn--disabled):hover {
2486
+ .btn.btn--no-border {
2361
2487
  background-color: transparent;
2362
- color: var(--op-color-neutral-minus-three);
2488
+ box-shadow: none;
2489
+ color: var(--op-color-primary-on-plus-max);
2490
+ }
2491
+ .btn.btn--no-border.btn--active {
2492
+ background-color: var(--op-color-primary-plus-five);
2493
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
2494
+ color: var(--op-color-primary-on-plus-five);
2495
+ }
2496
+ .btn.btn--no-border:hover {
2497
+ background-color: var(--op-color-primary-plus-eight);
2498
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-five);
2499
+ color: var(--op-color-primary-on-plus-eight);
2500
+ }
2501
+ .btn.btn--no-border:focus-visible {
2502
+ background-color: var(--op-color-primary-plus-eight);
2503
+ box-shadow: var(--op-input-focus-primary);
2504
+ color: var(--op-color-primary-on-plus-eight);
2363
2505
  }
2364
2506
 
2365
2507
  .btn-primary {
2366
2508
  background-color: var(--op-color-primary-base);
2367
- box-shadow: var(--op-border-all) var(--op-color-primary-base);
2509
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-base);
2368
2510
  color: var(--op-color-primary-on-base);
2369
2511
  }
2370
- .btn-primary:not(:disabled, .btn--disabled):hover {
2512
+ .btn-primary.btn--active {
2513
+ background-color: var(--op-color-primary-minus-five);
2514
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-two);
2515
+ color: var(--op-color-primary-on-minus-five);
2516
+ }
2517
+ .btn-primary:hover {
2371
2518
  background-color: var(--op-color-primary-plus-one);
2372
- box-shadow: var(--op-border-all) var(--op-color-primary-plus-one);
2519
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-one);
2373
2520
  color: var(--op-color-primary-on-plus-one);
2374
2521
  }
2522
+ .btn-primary:focus-visible {
2523
+ background-color: var(--op-color-primary-base);
2524
+ box-shadow: var(--op-input-focus-primary);
2525
+ color: var(--op-color-primary-on-base);
2526
+ }
2375
2527
  .btn-primary.btn--no-border {
2376
2528
  background-color: transparent;
2377
2529
  box-shadow: none;
2378
2530
  color: var(--op-color-primary-base);
2379
2531
  }
2380
- .btn-primary.btn--no-border:not(:disabled, .btn--disabled):hover {
2381
- background-color: transparent;
2382
- box-shadow: none;
2383
- color: var(--op-color-primary-plus-one);
2532
+ .btn-primary.btn--no-border.btn--active {
2533
+ background-color: var(--op-color-primary-plus-five);
2534
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-three);
2535
+ color: var(--op-color-primary-on-plus-five);
2384
2536
  }
2385
- .btn-primary.btn--outline {
2386
- background-color: var(--op-color-primary-plus-seven);
2387
- box-shadow: var(--op-border-all) var(--op-color-primary-on-plus-seven);
2388
- color: var(--op-color-primary-on-plus-seven);
2537
+ .btn-primary.btn--no-border:hover {
2538
+ background-color: var(--op-color-primary-plus-eight);
2539
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-five);
2540
+ color: var(--op-color-primary-on-plus-eight);
2389
2541
  }
2390
- .btn-primary.btn--outline:not(:disabled, .btn--disabled):hover {
2391
- background-color: var(--op-color-primary-plus-four);
2392
- box-shadow: var(--op-border-all) var(--op-color-primary-on-plus-seven);
2393
- color: var(--op-color-primary-on-plus-four);
2542
+ .btn-primary.btn--no-border:focus-visible {
2543
+ background-color: var(--op-color-primary-plus-eight);
2544
+ box-shadow: var(--op-input-focus-primary);
2545
+ color: var(--op-color-primary-on-plus-eight);
2394
2546
  }
2395
2547
 
2396
- .btn-secondary {
2397
- background-color: var(--op-color-primary-plus-seven);
2398
- box-shadow: var(--op-border-all) var(--op-color-primary-on-plus-seven);
2399
- color: var(--op-color-primary-on-plus-seven);
2400
- }
2401
- .btn-secondary:not(:disabled, .btn--disabled):hover {
2402
- background-color: var(--op-color-primary-plus-four);
2403
- box-shadow: var(--op-border-all) var(--op-color-primary-on-plus-seven);
2404
- color: var(--op-color-primary-on-plus-four);
2548
+ .btn-delete {
2549
+ background-color: var(--op-color-alerts-danger-base);
2550
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-danger-base);
2551
+ color: var(--op-color-alerts-danger-on-base);
2405
2552
  }
2406
- .btn-secondary.btn--no-border {
2407
- background-color: transparent;
2408
- box-shadow: none;
2409
- color: var(--op-color-primary-base);
2553
+ .btn-delete.btn--active {
2554
+ background-color: var(--op-color-alerts-danger-plus-five);
2555
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-danger-plus-three);
2556
+ color: var(--op-color-alerts-danger-on-plus-five);
2410
2557
  }
2411
- .btn-secondary.btn--no-border:not(:disabled, .btn--disabled):hover {
2412
- background-color: transparent;
2413
- box-shadow: none;
2414
- color: var(--op-color-primary-plus-one);
2558
+ .btn-delete:hover {
2559
+ background-color: var(--op-color-alerts-danger-minus-two);
2560
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-danger-minus-two);
2561
+ color: var(--op-color-alerts-danger-on-minus-two);
2415
2562
  }
2416
-
2417
- .btn-delete {
2563
+ .btn-delete:focus-visible {
2418
2564
  background-color: var(--op-color-alerts-danger-base);
2419
- box-shadow: var(--op-border-all) var(--op-color-alerts-danger-base);
2565
+ box-shadow: var(--op-input-focus-danger);
2420
2566
  color: var(--op-color-alerts-danger-on-base);
2421
2567
  }
2422
- .btn-delete:not(:disabled, .btn--disabled):hover {
2423
- background-color: var(--op-color-alerts-danger-plus-one);
2424
- box-shadow: var(--op-border-all) var(--op-color-alerts-danger-plus-one);
2425
- color: var(--op-color-alerts-danger-on-plus-one);
2568
+
2569
+ .btn-warning {
2570
+ background-color: var(--op-color-alerts-warning-base);
2571
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-warning-base);
2572
+ color: var(--op-color-alerts-warning-on-base);
2426
2573
  }
2427
- .btn-delete.btn--no-border {
2428
- background-color: transparent;
2429
- box-shadow: none;
2430
- color: var(--op-color-alerts-danger-base);
2574
+ .btn-warning.btn--active {
2575
+ background-color: var(--op-color-alerts-warning-plus-five);
2576
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-warning-plus-three);
2577
+ color: var(--op-color-alerts-warning-on-plus-five);
2578
+ }
2579
+ .btn-warning:hover {
2580
+ background-color: var(--op-color-alerts-warning-minus-two);
2581
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-warning-minus-two);
2582
+ color: var(--op-color-alerts-warning-on-minus-two);
2583
+ }
2584
+ .btn-warning:focus-visible {
2585
+ background-color: var(--op-color-alerts-warning-base);
2586
+ box-shadow: var(--op-input-focus-warning);
2587
+ color: var(--op-color-alerts-warning-on-base);
2431
2588
  }
2432
- .btn-delete.btn--no-border:not(:disabled, .btn--disabled):hover {
2589
+ .btn-warning.btn--no-border {
2433
2590
  background-color: transparent;
2434
2591
  box-shadow: none;
2435
- color: var(--op-color-alerts-danger-plus-one);
2592
+ color: var(--op-color-alerts-warning-on-plus-max);
2436
2593
  }
2437
- .btn-delete.btn--outline {
2438
- background-color: var(--op-color-alerts-danger-plus-seven);
2439
- box-shadow: var(--op-border-all) var(--op-color-alerts-danger-on-plus-seven);
2440
- color: var(--op-color-alerts-danger-on-plus-seven);
2594
+ .btn-warning.btn--no-border.btn--active {
2595
+ background-color: var(--op-color-alerts-warning-plus-five);
2596
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-warning-plus-three);
2597
+ color: var(--op-color-alerts-warning-on-plus-five);
2441
2598
  }
2442
- .btn-delete.btn--outline:not(:disabled, .btn--disabled):hover {
2443
- background-color: var(--op-color-alerts-danger-plus-four);
2444
- box-shadow: var(--op-border-all) var(--op-color-alerts-danger-on-plus-seven);
2445
- color: var(--op-color-alerts-danger-on-plus-four);
2599
+ .btn-warning.btn--no-border:hover {
2600
+ background-color: var(--op-color-alerts-warning-plus-eight);
2601
+ box-shadow: inset var(--op-border-all) var(--op-color-alerts-warning-plus-five);
2602
+ color: var(--op-color-alerts-warning-on-plus-eight);
2603
+ }
2604
+ .btn-warning.btn--no-border:focus-visible {
2605
+ background-color: var(--op-color-alerts-warning-plus-eight);
2606
+ box-shadow: var(--op-input-focus-warning);
2607
+ color: var(--op-color-alerts-warning-on-plus-eight);
2446
2608
  }
2447
2609
 
2448
2610
  .btn-group {
2611
+ --op-btn-group-hover-z-index: 1;
2612
+ --op-btn-group-active-z-index: 2;
2613
+ --op-btn-group-focus-z-index: 3;
2449
2614
  display: inline-flex;
2450
2615
  align-items: center;
2451
2616
  }
2452
2617
  .btn-group .btn + .btn,
2453
2618
  .btn-group .btn + .btn-primary,
2454
- .btn-group .btn + .btn-secondary,
2455
2619
  .btn-group .btn + .btn-delete,
2620
+ .btn-group .btn + .btn-warning,
2456
2621
  .btn-group .btn-primary + .btn,
2457
2622
  .btn-group .btn-primary + .btn-primary,
2458
- .btn-group .btn-primary + .btn-secondary,
2459
2623
  .btn-group .btn-primary + .btn-delete,
2460
- .btn-group .btn-secondary + .btn,
2461
- .btn-group .btn-secondary + .btn-primary,
2462
- .btn-group .btn-secondary + .btn-secondary,
2463
- .btn-group .btn-secondary + .btn-delete,
2624
+ .btn-group .btn-primary + .btn-warning,
2464
2625
  .btn-group .btn-delete + .btn,
2465
2626
  .btn-group .btn-delete + .btn-primary,
2466
- .btn-group .btn-delete + .btn-secondary,
2467
- .btn-group .btn-delete + .btn-delete {
2468
- margin-left: 1px;
2627
+ .btn-group .btn-delete + .btn-delete,
2628
+ .btn-group .btn-delete + .btn-warning,
2629
+ .btn-group .btn-warning + .btn,
2630
+ .btn-group .btn-warning + .btn-primary,
2631
+ .btn-group .btn-warning + .btn-delete,
2632
+ .btn-group .btn-warning + .btn-warning {
2633
+ margin-left: -1px;
2634
+ }
2635
+ .btn-group .btn:hover,
2636
+ .btn-group .btn-primary:hover,
2637
+ .btn-group .btn-delete:hover,
2638
+ .btn-group .btn-warning:hover {
2639
+ z-index: var(--op-btn-group-hover-z-index);
2640
+ }
2641
+ .btn-group .btn.btn--active,
2642
+ .btn-group .btn-primary.btn--active,
2643
+ .btn-group .btn-delete.btn--active,
2644
+ .btn-group .btn-warning.btn--active {
2645
+ z-index: var(--op-btn-group-active-z-index);
2646
+ }
2647
+ .btn-group .btn:focus, .btn-group .btn:focus-within, .btn-group .btn:focus-visible,
2648
+ .btn-group .btn-primary:focus,
2649
+ .btn-group .btn-primary:focus-within,
2650
+ .btn-group .btn-primary:focus-visible,
2651
+ .btn-group .btn-delete:focus,
2652
+ .btn-group .btn-delete:focus-within,
2653
+ .btn-group .btn-delete:focus-visible,
2654
+ .btn-group .btn-warning:focus,
2655
+ .btn-group .btn-warning:focus-within,
2656
+ .btn-group .btn-warning:focus-visible {
2657
+ z-index: var(--op-btn-group-focus-z-index);
2469
2658
  }
2470
2659
  .btn-group .btn:not(:first-child, :last-child),
2471
2660
  .btn-group .btn-primary:not(:first-child, :last-child),
2472
- .btn-group .btn-secondary:not(:first-child, :last-child),
2473
- .btn-group .btn-delete:not(:first-child, :last-child) {
2661
+ .btn-group .btn-delete:not(:first-child, :last-child),
2662
+ .btn-group .btn-warning:not(:first-child, :last-child) {
2474
2663
  border-radius: 0;
2475
2664
  }
2476
2665
  .btn-group .btn:first-child:not(:last-child),
2477
2666
  .btn-group .btn-primary:first-child:not(:last-child),
2478
- .btn-group .btn-secondary:first-child:not(:last-child),
2479
- .btn-group .btn-delete:first-child:not(:last-child) {
2667
+ .btn-group .btn-delete:first-child:not(:last-child),
2668
+ .btn-group .btn-warning:first-child:not(:last-child) {
2480
2669
  border-bottom-right-radius: 0;
2481
2670
  border-top-right-radius: 0;
2482
2671
  }
2483
2672
  .btn-group .btn:last-child:not(:first-child),
2484
2673
  .btn-group .btn-primary:last-child:not(:first-child),
2485
- .btn-group .btn-secondary:last-child:not(:first-child),
2486
- .btn-group .btn-delete:last-child:not(:first-child) {
2674
+ .btn-group .btn-delete:last-child:not(:first-child),
2675
+ .btn-group .btn-warning:last-child:not(:first-child) {
2487
2676
  border-bottom-left-radius: 0;
2488
2677
  border-top-left-radius: 0;
2489
2678
  }
@@ -2561,125 +2750,257 @@ small {
2561
2750
  padding: var(--op-space-medium);
2562
2751
  }
2563
2752
 
2564
- .flash {
2753
+ .confirm-dialog-wrapper {
2565
2754
  position: fixed;
2566
- z-index: var(--op-z-index-alert-group);
2567
- top: var(--op-space-large);
2568
- right: var(--op-space-large);
2569
- display: inline-grid;
2570
- width: auto;
2755
+ z-index: var(--op-z-index-dialog);
2756
+ top: 0;
2757
+ right: 0;
2758
+ bottom: 0;
2759
+ left: 0;
2760
+ display: flex;
2761
+ overflow: hidden;
2571
2762
  align-items: center;
2572
2763
  justify-content: center;
2573
- padding: var(--op-space-x-small) var(--op-space-medium);
2574
- border-color: var(--op-color-on-background);
2575
- border-radius: var(--op-radius-small);
2576
- border-left-width: var(--op-border-width-x-large);
2577
- border-left-style: solid;
2578
- animation: var(--op-animation-flash);
2579
- background: var(--op-color-background);
2580
- box-shadow: var(--op-shadow-x-small);
2581
- color: var(--op-color-on-background);
2582
- font-size: var(--op-font-small);
2583
- gap: var(--op-space-small);
2584
- grid-auto-flow: column;
2764
+ outline: 0;
2765
+ visibility: hidden;
2585
2766
  }
2586
- .flash--notice.flash {
2587
- border-color: var(--op-color-alerts-notice-base);
2588
- color: var(--op-color-alerts-notice-base);
2767
+ .confirm-dialog-wrapper .confirm-dialog-wrapper__backdrop {
2768
+ position: fixed;
2769
+ z-index: var(--op-z-index-dialog-backdrop);
2770
+ top: 0;
2771
+ right: 0;
2772
+ bottom: 0;
2773
+ left: 0;
2774
+ background: var(--op-color-black);
2775
+ opacity: 0;
2776
+ transition: var(--op-transition-modal);
2777
+ visibility: hidden;
2589
2778
  }
2590
- .flash--info.flash {
2591
- border-color: var(--op-color-alerts-info-base);
2592
- color: var(--op-color-alerts-info-base);
2779
+ .confirm-dialog-wrapper--active.confirm-dialog-wrapper {
2780
+ visibility: visible;
2593
2781
  }
2594
- .flash--alert.flash {
2595
- border-color: var(--op-color-alerts-danger-base);
2596
- color: var(--op-color-alerts-danger-base);
2782
+ .confirm-dialog-wrapper--active.confirm-dialog-wrapper .confirm-dialog {
2783
+ opacity: 1;
2784
+ transform: scale(1);
2597
2785
  }
2598
- .flash--warning.flash {
2599
- border-color: var(--op-color-alerts-warning-base);
2600
- color: var(--op-color-alerts-warning-base);
2786
+ .confirm-dialog-wrapper--active.confirm-dialog-wrapper .confirm-dialog-wrapper__backdrop {
2787
+ opacity: 0.5;
2788
+ visibility: visible;
2601
2789
  }
2602
- .flash .flash__message-type {
2790
+
2791
+ .confirm-dialog {
2792
+ --_op-confirm-dialog-width: 40rem;
2793
+ z-index: var(--op-z-index-dialog-content);
2794
+ width: var(--_op-confirm-dialog-width);
2795
+ border-radius: var(--op-radius-medium);
2796
+ background-color: var(--op-color-background);
2797
+ box-shadow: var(--op-border-all) var(--op-border-color);
2603
2798
  color: var(--op-color-on-background);
2604
- font-weight: bold;
2799
+ contain: paint;
2800
+ font-size: var(--op-font-medium);
2801
+ line-height: var(--op-line-height-base);
2802
+ opacity: 0;
2803
+ transform: scale(0.7);
2804
+ transition: var(--op-transition-modal);
2605
2805
  }
2606
- .flash .flash__message {
2607
- color: var(--op-color-on-background);
2608
- font-size: var(--op-font-x-small);
2806
+ .confirm-dialog .confirm-dialog__header,
2807
+ .confirm-dialog .confirm-dialog__body,
2808
+ .confirm-dialog .confirm-dialog__footer {
2809
+ padding: var(--op-space-medium);
2810
+ }
2811
+ .confirm-dialog .confirm-dialog__header {
2812
+ font-size: var(--op-font-large);
2813
+ font-weight: var(--op-font-weight-semi-bold);
2814
+ }
2815
+ .confirm-dialog .confirm-dialog__body {
2816
+ box-shadow: var(--op-border-all) var(--op-border-color);
2817
+ }
2818
+ .confirm-dialog .confirm-dialog__footer {
2819
+ display: flex;
2820
+ align-items: center;
2821
+ justify-content: space-between;
2609
2822
  }
2610
2823
 
2611
- textarea.form-control, .form-control:not([type=radio], [type=checkbox]) {
2612
- --__op-input-height: var(--op-input-height-large);
2824
+ .divider-vertical, .divider {
2825
+ --_op-divider-vertical-min-height: var(--op-space-large);
2826
+ --_op-divider-height-small: var(--op-border-width);
2827
+ --_op-divider-height-medium: var(--op-border-width-large);
2828
+ --_op-divider-height-large: var(--op-border-width-x-large);
2829
+ --_op-divider-padding-small: var(--op-space-2x-small);
2830
+ --_op-divider-padding-medium: var(--op-space-x-small);
2831
+ --_op-divider-padding-large: var(--op-space-medium);
2832
+ --__op-divider-height: var(--_op-divider-height-small);
2833
+ --__op-divider-padding: 0;
2834
+ background-color: var(--op-border-color);
2835
+ }
2836
+ .divider--small.divider-vertical, .divider--small.divider {
2837
+ --__op-divider-height: var(--_op-divider-height-small);
2838
+ }
2839
+ .divider--medium.divider-vertical, .divider--medium.divider {
2840
+ --__op-divider-height: var(--_op-divider-height-medium);
2841
+ }
2842
+ .divider--large.divider-vertical, .divider--large.divider {
2843
+ --__op-divider-height: var(--_op-divider-height-large);
2844
+ }
2845
+ .divider--spacing-small.divider-vertical, .divider--spacing-small.divider {
2846
+ --__op-divider-padding: var(--_op-divider-padding-small);
2847
+ }
2848
+ .divider--spacing-medium.divider-vertical, .divider--spacing-medium.divider {
2849
+ --__op-divider-padding: var(--_op-divider-padding-medium);
2850
+ }
2851
+ .divider--spacing-large.divider-vertical, .divider--spacing-large.divider {
2852
+ --__op-divider-padding: var(--_op-divider-padding-large);
2853
+ }
2854
+
2855
+ .divider {
2856
+ width: 100%;
2857
+ height: var(--__op-divider-height);
2858
+ margin: var(--__op-divider-padding) 0;
2859
+ }
2860
+
2861
+ .divider-vertical {
2862
+ width: var(--__op-divider-height);
2863
+ height: 100%;
2864
+ min-height: var(--_op-divider-vertical-min-height);
2865
+ margin: 0 var(--__op-divider-padding);
2866
+ }
2867
+
2868
+ .form-control {
2869
+ --_op-form-control-height-small: var(--op-input-height-small);
2870
+ --_op-form-control-height-medium: var(--op-input-height-medium);
2871
+ --_op-form-control-height-large: var(--op-input-height-large);
2872
+ --_op-form-control-font-small: var(--op-font-x-small);
2873
+ --_op-form-control-font-medium: var(--op-font-small);
2874
+ --_op-form-control-font-large: var(--op-font-small);
2875
+ --__op-form-control-height: var(--_op-form-control-height-large);
2876
+ --__op-form-control-font-size: var(--_op-form-control-font-large);
2877
+ min-width: var(--__op-form-control-height);
2878
+ height: var(--__op-form-control-height);
2879
+ }
2880
+ .form-control--small.form-control {
2881
+ --__op-form-control-height: var(--_op-form-control-height-small);
2882
+ --__op-form-control-font-size: var(--_op-form-control-font-small);
2883
+ }
2884
+ .form-control--medium.form-control {
2885
+ --__op-form-control-height: var(--_op-form-control-height-medium);
2886
+ --__op-form-control-font-size: var(--_op-form-control-font-medium);
2887
+ }
2888
+ .form-control--large.form-control {
2889
+ --__op-form-control-height: var(--_op-form-control-height-large);
2890
+ --__op-form-control-font-size: var(--_op-form-control-font-large);
2891
+ }
2892
+
2893
+ .form-control:not([type=radio], [type=checkbox]) {
2894
+ --_op-form-control-opacity-disabled: 0.44;
2895
+ --__op-form-control-border-color: var(--op-color-neutral-plus-four);
2613
2896
  display: block;
2614
2897
  width: 100%;
2615
- min-width: var(--__op-input-height);
2616
- height: var(--__op-input-height);
2617
- padding: var(--op-space-small) var(--op-space-medium);
2898
+ min-width: var(--__op-form-control-height);
2899
+ height: var(--__op-form-control-height);
2900
+ padding: var(--op-space-2x-small) var(--op-space-x-small) var(--op-space-2x-small) var(--op-space-small);
2618
2901
  border: none;
2619
- border-radius: var(--op-radius-large);
2620
- background-color: var(--op-color-neutral-plus-max);
2621
- box-shadow: var(--op-border-all) var(--op-border-color);
2622
- color: var(--op-color-neutral-on-plus-max);
2902
+ border-radius: var(--op-radius-medium);
2903
+ background-color: var(--op-color-neutral-plus-eight);
2904
+ box-shadow: var(--op-border-all) var(--__op-form-control-border-color);
2905
+ color: var(--op-color-neutral-on-plus-eight);
2623
2906
  cursor: text;
2624
- font-size: var(--op-font-small);
2625
- font-weight: var(--op-font-weight-light);
2907
+ font-size: var(--__op-form-control-font-size);
2626
2908
  line-height: var(--op-line-height-base);
2627
2909
  }
2628
- textarea.form-control--read-only.form-control, .form-control--read-only.form-control:not([type=radio], [type=checkbox]) {
2629
- height: fit-content;
2630
- background-color: var(--op-color-neutral-plus-seven);
2631
- background-image: none;
2910
+ .form-control:hover:not(:disabled, [readonly]):not([type=radio], [type=checkbox]) {
2911
+ box-shadow: var(--op-border-all) var(--op-color-primary-plus-three);
2912
+ }
2913
+ .form-control:focus:not([type=radio], [type=checkbox]), .form-control:focus-within:not([type=radio], [type=checkbox]), .form-control:focus-visible:not([type=radio], [type=checkbox]) {
2914
+ outline: none;
2915
+ }
2916
+ .form-control:focus-visible:not([readonly]):not([type=radio], [type=checkbox]) {
2917
+ background-color: var(--op-color-primary-plus-seven);
2918
+ box-shadow: var(--op-input-focus-primary);
2919
+ color: var(--op-color-primary-on-plus-seven);
2920
+ }
2921
+ .form-control--no-border.form-control:not([type=radio], [type=checkbox]) {
2922
+ background-color: transparent;
2632
2923
  box-shadow: none;
2633
- color: var(--op-color-neutral-on-plus-seven);
2634
- cursor: unset;
2924
+ color: var(--op-color-primary-on-plus-max);
2925
+ }
2926
+ .form-control--no-border.form-control:focus-visible:not([readonly]):not([type=radio], [type=checkbox]) {
2927
+ background-color: var(--op-color-primary-plus-seven);
2928
+ box-shadow: var(--op-input-focus-primary);
2929
+ color: var(--op-color-primary-on-plus-seven);
2930
+ }
2931
+ .form-control--no-border.form-control:hover:not(:disabled, [readonly]):not([type=radio], [type=checkbox]) {
2932
+ background-color: var(--op-color-primary-plus-eight);
2933
+ box-shadow: inset var(--op-border-all) var(--op-color-primary-plus-two);
2934
+ color: var(--op-color-primary-on-plus-eight);
2935
+ }
2936
+
2937
+ .form-control[type=radio], .form-control[type=checkbox] {
2938
+ --_op-form-control-height-small: var(--op-space-medium);
2939
+ --_op-form-control-height-medium: var(--op-space-large);
2940
+ --_op-form-control-height-large: var(--op-space-x-large);
2941
+ width: var(--__op-form-control-height);
2942
+ height: var(--__op-form-control-height);
2943
+ align-self: center;
2944
+ margin: 0;
2945
+ accent-color: var(--op-color-primary-base);
2946
+ cursor: pointer;
2635
2947
  }
2636
- textarea.form-control--read-only[type=color].form-control, .form-control--read-only[type=color].form-control:not([type=radio], [type=checkbox]) {
2637
- height: var(--__op-input-height);
2948
+ .form-control[type=radio] + label, .form-control[type=checkbox] + label {
2949
+ align-self: center;
2638
2950
  }
2639
2951
 
2640
- select.form-control:not([multiple], [type=radio], [type=checkbox]), .form-control[type=color] {
2952
+ select.form-control:not([multiple], [type=radio], [type=checkbox]) {
2641
2953
  padding-right: var(--op-space-3x-large);
2642
2954
  appearance: none;
2643
- background: var(--op-form-dropdown-arrow) center right no-repeat;
2644
- background-position-x: calc(100% - (var(--op-space-3x-large) / 2 - var(--op-form-dropdown-arrow-width) / 2));
2955
+ background: var(--op-encoded-images-dropdown-arrow) center right no-repeat;
2956
+ background-position-x: calc(100% - (var(--op-space-3x-large) / 2 - var(--op-encoded-images-dropdown-arrow-width) / 2));
2645
2957
  cursor: pointer;
2646
2958
  }
2647
2959
 
2648
2960
  .form-label {
2649
2961
  color: var(--op-color-on-background);
2650
- font-size: var(--op-font-small);
2962
+ font-size: var(--op-font-x-small);
2651
2963
  font-weight: var(--op-font-weight-normal);
2652
2964
  letter-spacing: var(--op-letter-spacing-label);
2653
2965
  line-height: var(--op-line-height-base);
2654
2966
  }
2655
2967
 
2656
- .form-control[type=radio], .form-control[type=checkbox] {
2657
- width: var(--op-space-large);
2658
- height: var(--op-space-large);
2659
- align-self: center;
2660
- margin: 0;
2661
- accent-color: var(--op-color-primary-base);
2662
- cursor: pointer;
2968
+ .form-control[type=color] {
2969
+ padding: var(--op-space-2x-small);
2970
+ }
2971
+ .form-control[type=color]::-webkit-color-swatch-wrapper {
2972
+ padding: 0;
2973
+ }
2974
+ .form-control[type=color]::-webkit-color-swatch {
2975
+ border: none;
2976
+ border-radius: var(--op-radius-medium);
2663
2977
  }
2664
2978
  .form-control:disabled {
2665
2979
  cursor: not-allowed;
2980
+ opacity: var(--_op-form-control-opacity-disabled);
2666
2981
  }
2667
- .form-control:focus, .form-control:focus-within, .form-control:focus-visible, .form-control:active {
2668
- box-shadow: 0 0 0 var(--op-border-width-large) var(--op-color-primary-plus-four), var(--op-input-focus);
2669
- outline: none;
2982
+ .form-control[readonly] {
2983
+ padding: 0;
2984
+ background: transparent;
2985
+ box-shadow: none;
2986
+ color: var(--op-color-on-background);
2987
+ pointer-events: none;
2988
+ user-select: none;
2989
+ /* stylelint-disable selector-no-vendor-prefix */
2990
+ /* stylelint-enable selector-no-vendor-prefix */
2670
2991
  }
2671
- .form-control:focus:hover:not(:disabled), .form-control:focus-within:hover:not(:disabled), .form-control:focus-visible:hover:not(:disabled), .form-control:active:hover:not(:disabled) {
2672
- box-shadow: 0 0 0 var(--op-border-width-large) var(--op-color-primary-plus-four), var(--op-input-focus);
2992
+ .form-control[readonly]::-webkit-input-placeholder {
2993
+ color: var(--op-color-on-background);
2673
2994
  }
2674
2995
 
2675
2996
  select.form-control[multiple] {
2676
- min-height: calc(2 * var(--__op-input-height));
2997
+ min-height: calc(2 * var(--__op-form-control-height));
2677
2998
  }
2678
2999
 
2679
- textarea.form-control {
2680
- min-width: var(--__op-input-height);
3000
+ textarea.form-control:not([type=radio], [type=checkbox]) {
2681
3001
  max-width: 100%;
2682
- min-height: var(--__op-input-height);
3002
+ height: calc(2 * var(--__op-form-control-height));
3003
+ min-height: var(--__op-form-control-height);
2683
3004
  }
2684
3005
 
2685
3006
  .form-group--error {
@@ -2687,7 +3008,7 @@ textarea.form-control {
2687
3008
  /* stylelint-enable no-descending-specificity */
2688
3009
  }
2689
3010
  .form-group--error .form-control {
2690
- box-shadow: var(--op-border-all) var(--op-color-alerts-danger-minus-three);
3011
+ box-shadow: var(--op-border-all) var(--op-color-alerts-danger-base);
2691
3012
  }
2692
3013
  .form-group--error .form-control[type=radio], .form-group--error .form-control[type=checkbox] {
2693
3014
  box-shadow: none;
@@ -2696,13 +3017,40 @@ textarea.form-control {
2696
3017
  color: var(--op-color-alerts-danger-minus-three);
2697
3018
  font-weight: var(--op-font-weight-bold);
2698
3019
  }
3020
+ .form-group--error .form-control:hover:not(:disabled, [readonly]) {
3021
+ background-color: var(--op-color-alerts-danger-plus-seven);
3022
+ box-shadow: var(--op-border-all) var(--op-color-alerts-danger-minus-two);
3023
+ color: var(--op-color-alerts-danger-on-plus-seven);
3024
+ }
3025
+ .form-group--error .form-control[readonly] {
3026
+ box-shadow: none;
3027
+ }
3028
+ .form-group--error .form-control:focus-visible:not([readonly]) {
3029
+ background-color: var(--op-color-alerts-danger-plus-seven);
3030
+ box-shadow: var(--op-input-focus-danger);
3031
+ color: var(--op-color-alerts-danger-on-plus-seven);
3032
+ }
3033
+ .form-group--error .form-control.form-control--no-border {
3034
+ border-radius: 0;
3035
+ box-shadow: var(--op-border-bottom) var(--op-color-alerts-danger-base);
3036
+ }
3037
+ .form-group--error .form-control.form-control--no-border[readonly] {
3038
+ box-shadow: none;
3039
+ }
3040
+ .form-group--error .form-control.form-control--no-border:focus-visible:not([readonly]) {
3041
+ background-color: var(--op-color-alerts-danger-plus-seven);
3042
+ box-shadow: var(--op-border-bottom) var(--op-color-alerts-danger-base);
3043
+ color: var(--op-color-alerts-danger-on-plus-seven);
3044
+ }
3045
+ .form-group--error .form-control.form-control--no-border:hover:not(:disabled, [readonly]) {
3046
+ background-color: var(--op-color-alerts-danger-plus-eight);
3047
+ box-shadow: var(--op-border-bottom) var(--op-color-alerts-danger-base);
3048
+ color: var(--op-color-alerts-danger-on-plus-eight);
3049
+ }
2699
3050
 
2700
3051
  .form-error {
2701
3052
  width: fit-content;
2702
- padding: var(--op-space-2x-small) var(--op-space-x-small);
2703
- border-radius: var(--op-radius-medium);
2704
- background: var(--op-color-alerts-danger-plus-seven);
2705
- color: var(--op-color-alerts-danger-on-plus-seven);
3053
+ color: var(--op-color-alerts-danger-base);
2706
3054
  font-size: var(--op-font-x-small);
2707
3055
  }
2708
3056
 
@@ -2785,7 +3133,8 @@ textarea.form-control {
2785
3133
  --op-mso-weight: var(--op-font-weight-semi-bold);
2786
3134
  }
2787
3135
 
2788
- .icon--weight-bold, .alert-warning .alert__icon, .alert-danger .alert__icon, .alert-info .alert__icon, .alert-notice .alert__icon {
3136
+ .icon--weight-bold, .sidebar-primary .sidebar__content > * .material-symbols-outlined, .sidebar .sidebar__content > * .material-symbols-outlined, .alert-warning .alert__icon, .alert-danger .alert__icon,
3137
+ .alert-alert .alert__icon, .alert-info .alert__icon, .alert-notice .alert__icon {
2789
3138
  --op-mso-weight: var(--op-font-weight-bold);
2790
3139
  }
2791
3140
 
@@ -2806,12 +3155,13 @@ textarea.form-control {
2806
3155
  --op-mso-optical-sizing: 20;
2807
3156
  }
2808
3157
 
2809
- .icon--large, .alert-warning .alert__icon, .alert-danger .alert__icon, .alert-info .alert__icon, .alert-notice .alert__icon {
3158
+ .icon--large, .sidebar-primary .sidebar__content > * .material-symbols-outlined, .sidebar .sidebar__content > * .material-symbols-outlined, .alert-warning .alert__icon, .alert-danger .alert__icon,
3159
+ .alert-alert .alert__icon, .alert-info .alert__icon, .alert-notice .alert__icon {
2810
3160
  font-size: var(--op-font-large);
2811
3161
  --op-mso-optical-sizing: 40;
2812
3162
  }
2813
3163
 
2814
- .icon--x-large, .sidebar-subtle-primary .sidebar__item .sidebar__item-icon, .sidebar-primary .sidebar__item .sidebar__item-icon, .sidebar .sidebar__item .sidebar__item-icon {
3164
+ .icon--x-large {
2815
3165
  font-size: var(--op-font-2x-large);
2816
3166
  --op-mso-optical-sizing: 48;
2817
3167
  }
@@ -2825,11 +3175,12 @@ textarea.form-control {
2825
3175
  font-size: var(--op-font-small);
2826
3176
  --op-mso-optical-sizing: 20;
2827
3177
  }
2828
- .custom-icons.icon--large, .alert-warning .custom-icons.alert__icon, .alert-danger .custom-icons.alert__icon, .alert-info .custom-icons.alert__icon, .alert-notice .custom-icons.alert__icon {
3178
+ .custom-icons.icon--large, .sidebar-primary .sidebar__content > * .custom-icons.material-symbols-outlined, .sidebar .sidebar__content > * .custom-icons.material-symbols-outlined, .alert-warning .custom-icons.alert__icon, .alert-danger .custom-icons.alert__icon,
3179
+ .alert-alert .custom-icons.alert__icon, .alert-info .custom-icons.alert__icon, .alert-notice .custom-icons.alert__icon {
2829
3180
  width: var(--op-font-large);
2830
3181
  height: var(--op-font-large);
2831
3182
  }
2832
- .custom-icons.icon--x-large, .sidebar-subtle-primary .sidebar__item .custom-icons.sidebar__item-icon, .sidebar-primary .sidebar__item .custom-icons.sidebar__item-icon, .sidebar .sidebar__item .custom-icons.sidebar__item-icon {
3183
+ .custom-icons.icon--x-large {
2833
3184
  width: var(--op-font-3x-large);
2834
3185
  height: var(--op-font-3x-large);
2835
3186
  }
@@ -2843,250 +3194,311 @@ textarea.form-control {
2843
3194
  line-height: 0;
2844
3195
  }
2845
3196
 
2846
- .sidebar-subtle-primary, .sidebar-primary, .sidebar {
2847
- --_op-sidebar-background-color: var(--op-color-neutral-plus-seven);
2848
- --_op-sidebar-text-color: var(--op-color-neutral-on-plus-seven);
2849
- --_op-sidebar-icon-background-active-color: var(--op-color-neutral-plus-three);
2850
- --_op-sidebar-icon-text-active-color: var(--op-color-neutral-on-plus-three);
2851
- --_op-sidebar-icon-background-hover-color: var(--op-color-neutral-plus-four);
2852
- --_op-sidebar-icon-text-hover-color: var(--op-color-neutral-on-plus-four);
2853
- --_op-sidebar-rail-width: 8.8rem;
2854
- --_op-sidebar-drawer-width: 25rem;
2855
- --_op-sidebar-spacing: var(--op-space-medium);
2856
- --_op-sidebar-link-spacing: var(--op-space-large);
2857
- --_op-sidebar-transition: var(--op-transition-sidebar);
2858
- --__op-sidebar-width: var(--_op-sidebar-drawer-width);
3197
+ .modal-wrapper {
3198
+ --_op-modal-backdrop-active-opacity: 0.5;
3199
+ position: fixed;
3200
+ z-index: var(--op-z-index-dialog);
3201
+ top: 0;
3202
+ right: 0;
3203
+ bottom: 0;
3204
+ left: 0;
2859
3205
  display: flex;
2860
- width: var(--__op-sidebar-width);
2861
- flex-direction: column;
2862
- padding: var(--_op-sidebar-spacing) 0;
2863
- background-color: var(--_op-sidebar-background-color);
2864
- color: var(--_op-sidebar-text-color);
2865
- gap: var(--_op-sidebar-spacing);
2866
- overflow-y: auto;
2867
- transition: var(--_op-sidebar-transition);
3206
+ overflow: hidden;
3207
+ align-items: center;
3208
+ justify-content: center;
3209
+ outline: 0;
3210
+ visibility: hidden;
2868
3211
  }
2869
- .sidebar-subtle-primary .sidebar__brand, .sidebar-primary .sidebar__brand, .sidebar .sidebar__brand {
2870
- display: block;
2871
- padding: 0 var(--_op-sidebar-spacing);
3212
+ .modal-wrapper .modal-wrapper__backdrop {
3213
+ position: fixed;
3214
+ z-index: var(--op-z-index-dialog-backdrop);
3215
+ top: 0;
3216
+ right: 0;
3217
+ bottom: 0;
3218
+ left: 0;
3219
+ background: var(--op-color-black);
3220
+ opacity: 0;
3221
+ transition: var(--op-transition-modal);
3222
+ visibility: hidden;
2872
3223
  }
2873
- .sidebar-subtle-primary .sidebar__content, .sidebar-primary .sidebar__content, .sidebar .sidebar__content {
2874
- display: flex;
2875
- flex-direction: column;
2876
- flex-grow: 1;
3224
+ .modal-wrapper--active.modal-wrapper {
3225
+ visibility: visible;
2877
3226
  }
2878
- .sidebar-subtle-primary .sidebar__content.sidebar__content--start, .sidebar-primary .sidebar__content.sidebar__content--start, .sidebar .sidebar__content.sidebar__content--start {
2879
- justify-content: start;
3227
+ .modal-wrapper--active.modal-wrapper .modal {
3228
+ opacity: 1;
3229
+ transform: scale(1);
2880
3230
  }
2881
- .sidebar-subtle-primary .sidebar__content.sidebar__content--center, .sidebar-primary .sidebar__content.sidebar__content--center, .sidebar .sidebar__content.sidebar__content--center {
2882
- justify-content: center;
3231
+ .modal-wrapper--active.modal-wrapper .modal-wrapper__backdrop {
3232
+ opacity: var(--_op-modal-backdrop-active-opacity);
3233
+ visibility: visible;
2883
3234
  }
2884
- .sidebar-subtle-primary .sidebar__content.sidebar__content--end, .sidebar-primary .sidebar__content.sidebar__content--end, .sidebar .sidebar__content.sidebar__content--end {
2885
- justify-content: end;
3235
+
3236
+ .modal {
3237
+ --_op-modal-width: 56.4rem;
3238
+ --_op-modal-max-height: 50rem;
3239
+ z-index: var(--op-z-index-dialog-content);
3240
+ width: var(--_op-modal-width);
3241
+ border-radius: var(--op-radius-medium);
3242
+ background-color: var(--op-color-background);
3243
+ box-shadow: var(--op-border-all) var(--op-border-color);
3244
+ color: var(--op-color-on-background);
3245
+ contain: paint;
3246
+ font-size: var(--op-font-medium);
3247
+ line-height: var(--op-line-height-base);
3248
+ opacity: 0;
3249
+ transform: scale(0.7);
3250
+ transition: var(--op-transition-modal);
3251
+ }
3252
+ .modal .modal__header,
3253
+ .modal .modal__body,
3254
+ .modal .modal__footer {
3255
+ padding: var(--op-space-medium);
2886
3256
  }
2887
- .sidebar-subtle-primary .sidebar__item, .sidebar-primary .sidebar__item, .sidebar .sidebar__item {
3257
+ .modal .modal__header {
2888
3258
  display: flex;
2889
3259
  align-items: center;
2890
- color: var(--_op-sidebar-text-color);
2891
- cursor: pointer;
2892
- text-align: center;
2893
- text-decoration: none;
3260
+ justify-content: space-between;
3261
+ font-size: var(--op-font-large);
3262
+ font-weight: var(--op-font-weight-semi-bold);
2894
3263
  }
2895
- .sidebar-subtle-primary .sidebar__item:visited, .sidebar-primary .sidebar__item:visited, .sidebar .sidebar__item:visited {
2896
- color: var(--_op-sidebar-text-color);
3264
+ .modal .modal__body {
3265
+ max-height: var(--_op-modal-max-height);
3266
+ box-shadow: var(--op-border-all) var(--op-border-color);
3267
+ overflow-y: auto;
2897
3268
  }
2898
- .sidebar-subtle-primary .sidebar__item:hover .sidebar__item-icon, .sidebar-primary .sidebar__item:hover .sidebar__item-icon, .sidebar .sidebar__item:hover .sidebar__item-icon, .sidebar-subtle-primary .sidebar__item.active .sidebar__item-icon, .sidebar-primary .sidebar__item.active .sidebar__item-icon, .sidebar .sidebar__item.active .sidebar__item-icon {
2899
- --op-mso-weight: var(--op-font-weight-bold);
3269
+ .modal .modal__footer {
3270
+ display: flex;
3271
+ align-items: center;
3272
+ justify-content: flex-end;
3273
+ gap: var(--op-space-small);
2900
3274
  }
2901
- .sidebar-subtle-primary .sidebar__item:hover .sidebar__item-icon, .sidebar-primary .sidebar__item:hover .sidebar__item-icon, .sidebar .sidebar__item:hover .sidebar__item-icon {
2902
- color: var(--_op-sidebar-text-color);
3275
+
3276
+ @keyframes show-backdrop {
3277
+ from {
3278
+ opacity: 0;
3279
+ }
3280
+ to {
3281
+ opacity: var(--_op-modal-backdrop-active-opacity);
3282
+ }
2903
3283
  }
2904
- .sidebar-subtle-primary .sidebar__item .sidebar__item-icon, .sidebar-primary .sidebar__item .sidebar__item-icon, .sidebar .sidebar__item .sidebar__item-icon {
2905
- /* stylelint-disable scss/at-extend-no-missing-placeholder */
2906
- /* stylelint-enable scss/at-extend-no-missing-placeholder */
2907
- --op-mso-weight: var(--op-font-weight-medium);
3284
+ @keyframes hide-backdrop {
3285
+ from {
3286
+ opacity: var(--_op-modal-backdrop-active-opacity);
3287
+ }
3288
+ to {
3289
+ opacity: 0;
3290
+ }
3291
+ }
3292
+ dialog.modal {
3293
+ position: fixed;
3294
+ top: 0;
3295
+ right: 0;
3296
+ bottom: 0;
3297
+ left: 0;
3298
+ display: block;
3299
+ padding: 0;
3300
+ border: none;
3301
+ }
3302
+ dialog.modal::backdrop {
3303
+ --op-color-black: hsl(0deg 0% 0%);
3304
+ --_op-modal-backdrop-active-opacity: 0.5;
3305
+ animation: show-backdrop 300ms ease-in;
3306
+ background: var(--op-color-black);
3307
+ opacity: var(--_op-modal-backdrop-active-opacity);
3308
+ }
3309
+ dialog.modal[open] {
3310
+ opacity: 1;
3311
+ transform: scale(1);
3312
+ }
3313
+ dialog.modal.modal--closing {
3314
+ opacity: 0;
3315
+ transform: scale(0.7);
3316
+ }
3317
+ dialog.modal.modal--closing::backdrop {
3318
+ animation: hide-backdrop 300ms ease-in;
3319
+ opacity: 0;
3320
+ }
3321
+
3322
+ .pagination {
2908
3323
  display: flex;
2909
3324
  align-items: center;
2910
- justify-content: center;
2911
- border-radius: var(--op-radius-pill);
3325
+ gap: 0;
2912
3326
  }
2913
- .sidebar-subtle-primary .sidebar__item .sidebar__item-label, .sidebar-primary .sidebar__item .sidebar__item-label, .sidebar .sidebar__item .sidebar__item-label {
2914
- overflow: hidden;
2915
- max-width: 90%;
2916
- font-weight: var(--op-font-weight-medium);
2917
- letter-spacing: var(--op-letter-spacing-navigation);
2918
- line-height: var(--op-line-height-dense);
2919
- text-overflow: ellipsis;
2920
- white-space: nowrap;
3327
+ .pagination .form-group {
3328
+ align-items: center;
2921
3329
  }
2922
- .sidebar--drawer.sidebar-subtle-primary:not(.sidebar--responsive), .sidebar--drawer.sidebar-primary:not(.sidebar--responsive), .sidebar--drawer.sidebar:not(.sidebar--responsive) {
2923
- --__op-sidebar-width: var(--_op-sidebar-drawer-width);
3330
+ .pagination .form-group .form-label {
3331
+ grid-column: 1;
2924
3332
  }
2925
- .sidebar--drawer.sidebar-subtle-primary:not(.sidebar--responsive) .sidebar__content, .sidebar--drawer.sidebar-primary:not(.sidebar--responsive) .sidebar__content, .sidebar--drawer.sidebar:not(.sidebar--responsive) .sidebar__content {
2926
- padding: 0 var(--_op-sidebar-spacing);
3333
+ .pagination .form-group .form-control {
3334
+ grid-column: 2;
2927
3335
  }
2928
- .sidebar--drawer.sidebar-subtle-primary:not(.sidebar--responsive) .sidebar__section-title, .sidebar--drawer.sidebar-primary:not(.sidebar--responsive) .sidebar__section-title, .sidebar--drawer.sidebar:not(.sidebar--responsive) .sidebar__section-title {
2929
- overflow: hidden;
2930
- height: var(--op-input-height-large);
2931
- padding: var(--op-space-small) var(--op-space-medium);
3336
+ .pagination .pagination__divider {
3337
+ height: 100%;
3338
+ padding: 0 var(--op-space-x-small);
3339
+ }
3340
+
3341
+ .sidebar-primary, .sidebar {
3342
+ --_op-sidebar-background-color: var(--op-color-neutral-plus-eight);
3343
+ --_op-sidebar-text-color: var(--op-color-neutral-on-plus-eight);
3344
+ --_op-sidebar-border-color: var(--op-color-neutral-plus-four);
3345
+ --_op-sidebar-rail-width: 8.8rem;
3346
+ --_op-sidebar-compact-width: 16.9rem;
3347
+ --_op-sidebar-drawer-width: 21.6rem;
3348
+ --_op-sidebar-rail-brand-width: 7.728rem;
3349
+ --_op-sidebar-compact-brand-width: 9.8rem;
3350
+ --_op-sidebar-drawer-brand-width: 9.8rem;
3351
+ --_op-sidebar-spacing: calc(var(--op-space-2x-large) + var(--op-space-2x-small));
3352
+ --_op-sidebar-brand-spacing: var(--op-space-medium);
3353
+ --_op-sidebar-content-spacing: var(--op-space-x-small);
3354
+ --_op-sidebar-content-item-spacing: var(--op-space-2x-small);
3355
+ --_op-sidebar-transition: var(--op-transition-sidebar);
3356
+ --__op-sidebar-width: var(--_op-sidebar-drawer-width);
3357
+ --__op-sidebar-brand-width: var(--_op-sidebar-drawer-brand-width);
3358
+ display: flex;
3359
+ width: var(--__op-sidebar-width);
3360
+ min-width: var(--__op-sidebar-width);
3361
+ flex-direction: column;
3362
+ background-color: var(--_op-sidebar-background-color);
3363
+ box-shadow: var(--op-border-right) var(--_op-sidebar-border-color);
2932
3364
  color: var(--_op-sidebar-text-color);
2933
- font-size: var(--op-font-small);
2934
- font-weight: var(--op-font-weight-bold);
2935
- text-overflow: ellipsis;
2936
- white-space: nowrap;
3365
+ overflow-y: auto;
3366
+ transition: var(--_op-sidebar-transition);
2937
3367
  }
2938
- .sidebar--drawer.sidebar-subtle-primary:not(.sidebar--responsive) .sidebar__section-divider, .sidebar--drawer.sidebar-primary:not(.sidebar--responsive) .sidebar__section-divider, .sidebar--drawer.sidebar:not(.sidebar--responsive) .sidebar__section-divider {
2939
- border-bottom: var(--op-border-width) solid var(--_op-sidebar-text-color);
2940
- margin: 0 var(--_op-sidebar-spacing);
3368
+ .sidebar-primary .sidebar__brand, .sidebar .sidebar__brand {
3369
+ height: var(--__op-sidebar-brand-width);
3370
+ padding: var(--_op-sidebar-brand-spacing);
3371
+ margin: 0 auto;
2941
3372
  }
2942
- .sidebar--drawer.sidebar-subtle-primary:not(.sidebar--responsive) .sidebar__item, .sidebar--drawer.sidebar-primary:not(.sidebar--responsive) .sidebar__item, .sidebar--drawer.sidebar:not(.sidebar--responsive) .sidebar__item {
2943
- height: var(--op-input-height-large);
2944
- flex-direction: row;
2945
- padding: var(--op-space-x-small) var(--op-space-medium);
2946
- border-radius: var(--op-radius-pill);
2947
- gap: var(--_op-sidebar-link-spacing);
3373
+ .sidebar-primary .sidebar__brand img, .sidebar .sidebar__brand img {
3374
+ height: 100%;
2948
3375
  }
2949
- .sidebar--drawer.sidebar-subtle-primary:not(.sidebar--responsive) .sidebar__item:hover, .sidebar--drawer.sidebar-primary:not(.sidebar--responsive) .sidebar__item:hover, .sidebar--drawer.sidebar:not(.sidebar--responsive) .sidebar__item:hover, .sidebar--drawer.sidebar-subtle-primary:not(.sidebar--responsive) .sidebar__item.active, .sidebar--drawer.sidebar-primary:not(.sidebar--responsive) .sidebar__item.active, .sidebar--drawer.sidebar:not(.sidebar--responsive) .sidebar__item.active {
2950
- transition: var(--_op-sidebar-transition);
3376
+ .sidebar-primary .sidebar__content, .sidebar .sidebar__content {
3377
+ display: flex;
3378
+ flex-direction: column;
3379
+ flex-grow: 1;
3380
+ padding: 0 var(--_op-sidebar-content-spacing);
3381
+ gap: var(--_op-sidebar-content-item-spacing);
2951
3382
  }
2952
- .sidebar--drawer.sidebar-subtle-primary:not(.sidebar--responsive) .sidebar__item:hover, .sidebar--drawer.sidebar-primary:not(.sidebar--responsive) .sidebar__item:hover, .sidebar--drawer.sidebar:not(.sidebar--responsive) .sidebar__item:hover {
2953
- background-color: var(--_op-sidebar-icon-background-hover-color);
2954
- color: var(--_op-sidebar-icon-text-hover-color);
3383
+ .sidebar-primary .sidebar__content > *, .sidebar .sidebar__content > * {
3384
+ justify-content: flex-start;
3385
+ }
3386
+ .sidebar-primary .sidebar__content > * .material-symbols-outlined, .sidebar .sidebar__content > * .material-symbols-outlined {
3387
+ /* stylelint-disable scss/at-extend-no-missing-placeholder */
3388
+ /* stylelint-enable scss/at-extend-no-missing-placeholder */
3389
+ }
3390
+ .sidebar-primary .sidebar__content.sidebar__content--start, .sidebar .sidebar__content.sidebar__content--start {
3391
+ justify-content: start;
3392
+ }
3393
+ .sidebar-primary .sidebar__content.sidebar__content--center, .sidebar .sidebar__content.sidebar__content--center {
3394
+ justify-content: center;
2955
3395
  }
2956
- .sidebar--drawer.sidebar-subtle-primary:not(.sidebar--responsive) .sidebar__item:hover .sidebar__item-icon, .sidebar--drawer.sidebar-primary:not(.sidebar--responsive) .sidebar__item:hover .sidebar__item-icon, .sidebar--drawer.sidebar:not(.sidebar--responsive) .sidebar__item:hover .sidebar__item-icon {
2957
- color: var(--_op-sidebar-icon-text-hover-color);
3396
+ .sidebar-primary .sidebar__content.sidebar__content--end, .sidebar .sidebar__content.sidebar__content--end {
3397
+ justify-content: end;
2958
3398
  }
2959
- .sidebar--drawer.sidebar-subtle-primary:not(.sidebar--responsive) .sidebar__item.active, .sidebar--drawer.sidebar-primary:not(.sidebar--responsive) .sidebar__item.active, .sidebar--drawer.sidebar:not(.sidebar--responsive) .sidebar__item.active {
2960
- background-color: var(--_op-sidebar-icon-background-active-color);
2961
- color: var(--_op-sidebar-icon-text-active-color);
3399
+ .sidebar--padded.sidebar-primary, .sidebar--padded.sidebar {
3400
+ padding: var(--_op-sidebar-spacing) 0;
3401
+ }
3402
+ .sidebar--drawer.sidebar-primary:not(.sidebar--responsive), .sidebar--drawer.sidebar:not(.sidebar--responsive) {
3403
+ --__op-sidebar-width: var(--_op-sidebar-drawer-width);
3404
+ --__op-sidebar-brand-width: var(--_op-sidebar-drawer-brand-width);
2962
3405
  }
2963
3406
  @media (width > 1024px) {
2964
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary, .sidebar--drawer.sidebar--responsive.sidebar-primary, .sidebar--drawer.sidebar--responsive.sidebar {
3407
+ .sidebar--drawer.sidebar--responsive.sidebar-primary, .sidebar--drawer.sidebar--responsive.sidebar {
2965
3408
  --__op-sidebar-width: var(--_op-sidebar-drawer-width);
2966
- }
2967
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__content, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__content, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__content {
2968
- padding: 0 var(--_op-sidebar-spacing);
2969
- }
2970
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__section-title, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__section-title, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__section-title {
2971
- overflow: hidden;
2972
- height: var(--op-input-height-large);
2973
- padding: var(--op-space-small) var(--op-space-medium);
2974
- color: var(--_op-sidebar-text-color);
2975
- font-size: var(--op-font-small);
2976
- font-weight: var(--op-font-weight-bold);
2977
- text-overflow: ellipsis;
2978
- white-space: nowrap;
2979
- }
2980
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__section-divider, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__section-divider, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__section-divider {
2981
- border-bottom: var(--op-border-width) solid var(--_op-sidebar-text-color);
2982
- margin: 0 var(--_op-sidebar-spacing);
2983
- }
2984
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__item, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__item, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__item {
2985
- height: var(--op-input-height-large);
2986
- flex-direction: row;
2987
- padding: var(--op-space-x-small) var(--op-space-medium);
2988
- border-radius: var(--op-radius-pill);
2989
- gap: var(--_op-sidebar-link-spacing);
2990
- }
2991
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__item:hover, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__item:hover, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__item:hover, .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__item.active, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__item.active, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__item.active {
2992
- transition: var(--_op-sidebar-transition);
2993
- }
2994
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__item:hover, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__item:hover, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__item:hover {
2995
- background-color: var(--_op-sidebar-icon-background-hover-color);
2996
- color: var(--_op-sidebar-icon-text-hover-color);
2997
- }
2998
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__item:hover .sidebar__item-icon, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__item:hover .sidebar__item-icon, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__item:hover .sidebar__item-icon {
2999
- color: var(--_op-sidebar-icon-text-hover-color);
3000
- }
3001
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__item.active, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__item.active, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__item.active {
3002
- background-color: var(--_op-sidebar-icon-background-active-color);
3003
- color: var(--_op-sidebar-icon-text-active-color);
3409
+ --__op-sidebar-brand-width: var(--_op-sidebar-drawer-brand-width);
3004
3410
  }
3005
3411
  }
3006
3412
  @media (width <= 1024px) {
3007
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary, .sidebar--drawer.sidebar--responsive.sidebar-primary, .sidebar--drawer.sidebar--responsive.sidebar {
3413
+ .sidebar--drawer.sidebar--responsive.sidebar-primary, .sidebar--drawer.sidebar--responsive.sidebar {
3008
3414
  --__op-sidebar-width: var(--_op-sidebar-rail-width);
3415
+ --__op-sidebar-brand-width: var(--_op-sidebar-rail-brand-width);
3009
3416
  }
3010
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__content, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__content, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__content {
3011
- gap: var(--_op-sidebar-link-spacing);
3417
+ .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__content, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__content {
3418
+ align-items: center;
3012
3419
  }
3013
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__section-title, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__section-title, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__section-title,
3014
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__section-divider,
3015
- .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__section-divider,
3016
- .sidebar--drawer.sidebar--responsive.sidebar .sidebar__section-divider {
3017
- display: none;
3420
+ .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__content > *, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__content > * {
3421
+ width: var(--__op-btn-height);
3422
+ min-width: var(--__op-btn-height);
3423
+ justify-content: center;
3424
+ padding: 0;
3425
+ font-size: 0;
3426
+ gap: 0;
3018
3427
  }
3019
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__item, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__item, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__item {
3020
- flex-direction: column;
3021
- gap: var(--op-space-2x-small);
3428
+ }
3429
+ .sidebar--compact.sidebar-primary:not(.sidebar--responsive), .sidebar--compact.sidebar:not(.sidebar--responsive) {
3430
+ --__op-sidebar-width: var(--_op-sidebar-compact-width);
3431
+ --__op-sidebar-brand-width: var(--_op-sidebar-compact-brand-width);
3432
+ }
3433
+ .sidebar--compact.sidebar-primary:not(.sidebar--responsive) .sidebar__content > *, .sidebar--compact.sidebar:not(.sidebar--responsive) .sidebar__content > * {
3434
+ flex-direction: column;
3435
+ padding: var(--op-space-small);
3436
+ gap: var(--op-space-3x-small);
3437
+ }
3438
+ @media (width > 1024px) {
3439
+ .sidebar--compact.sidebar--responsive.sidebar-primary, .sidebar--compact.sidebar--responsive.sidebar {
3440
+ --__op-sidebar-width: var(--_op-sidebar-compact-width);
3441
+ --__op-sidebar-brand-width: var(--_op-sidebar-compact-brand-width);
3022
3442
  }
3023
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__item .sidebar__item-icon, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__item .sidebar__item-icon, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__item .sidebar__item-icon {
3024
- padding: var(--op-space-2x-small) var(--op-space-medium);
3025
- transition: var(--_op-sidebar-transition);
3443
+ .sidebar--compact.sidebar--responsive.sidebar-primary .sidebar__content > *, .sidebar--compact.sidebar--responsive.sidebar .sidebar__content > * {
3444
+ flex-direction: column;
3445
+ padding: var(--op-space-small);
3446
+ gap: var(--op-space-3x-small);
3026
3447
  }
3027
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__item:hover .sidebar__item-icon, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__item:hover .sidebar__item-icon, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__item:hover .sidebar__item-icon {
3028
- background-color: var(--_op-sidebar-icon-background-hover-color);
3448
+ }
3449
+ @media (width <= 1024px) {
3450
+ .sidebar--compact.sidebar--responsive.sidebar-primary, .sidebar--compact.sidebar--responsive.sidebar {
3451
+ --__op-sidebar-width: var(--_op-sidebar-rail-width);
3452
+ --__op-sidebar-brand-width: var(--_op-sidebar-rail-brand-width);
3029
3453
  }
3030
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__item.active .sidebar__item-icon, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__item.active .sidebar__item-icon, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__item.active .sidebar__item-icon {
3031
- background-color: var(--_op-sidebar-icon-background-active-color);
3454
+ .sidebar--compact.sidebar--responsive.sidebar-primary .sidebar__content, .sidebar--compact.sidebar--responsive.sidebar .sidebar__content {
3455
+ align-items: center;
3032
3456
  }
3033
- .sidebar--drawer.sidebar--responsive.sidebar-subtle-primary .sidebar__item .sidebar__item-label, .sidebar--drawer.sidebar--responsive.sidebar-primary .sidebar__item .sidebar__item-label, .sidebar--drawer.sidebar--responsive.sidebar .sidebar__item .sidebar__item-label {
3034
- font-size: var(--op-font-x-small);
3457
+ .sidebar--compact.sidebar--responsive.sidebar-primary .sidebar__content > *, .sidebar--compact.sidebar--responsive.sidebar .sidebar__content > * {
3458
+ width: var(--__op-btn-height);
3459
+ min-width: var(--__op-btn-height);
3460
+ justify-content: center;
3461
+ padding: 0;
3462
+ font-size: 0;
3463
+ gap: 0;
3035
3464
  }
3036
3465
  }
3037
- .sidebar--rail.sidebar-subtle-primary, .sidebar--rail.sidebar-primary, .sidebar--rail.sidebar {
3466
+ .sidebar--rail.sidebar-primary, .sidebar--rail.sidebar {
3038
3467
  --__op-sidebar-width: var(--_op-sidebar-rail-width);
3468
+ --__op-sidebar-brand-width: var(--_op-sidebar-rail-brand-width);
3039
3469
  }
3040
- .sidebar--rail.sidebar-subtle-primary .sidebar__content, .sidebar--rail.sidebar-primary .sidebar__content, .sidebar--rail.sidebar .sidebar__content {
3041
- gap: var(--_op-sidebar-link-spacing);
3042
- }
3043
- .sidebar--rail.sidebar-subtle-primary .sidebar__section-title, .sidebar--rail.sidebar-primary .sidebar__section-title, .sidebar--rail.sidebar .sidebar__section-title,
3044
- .sidebar--rail.sidebar-subtle-primary .sidebar__section-divider,
3045
- .sidebar--rail.sidebar-primary .sidebar__section-divider,
3046
- .sidebar--rail.sidebar .sidebar__section-divider {
3047
- display: none;
3048
- }
3049
- .sidebar--rail.sidebar-subtle-primary .sidebar__item, .sidebar--rail.sidebar-primary .sidebar__item, .sidebar--rail.sidebar .sidebar__item {
3050
- flex-direction: column;
3051
- gap: var(--op-space-2x-small);
3052
- }
3053
- .sidebar--rail.sidebar-subtle-primary .sidebar__item .sidebar__item-icon, .sidebar--rail.sidebar-primary .sidebar__item .sidebar__item-icon, .sidebar--rail.sidebar .sidebar__item .sidebar__item-icon {
3054
- padding: var(--op-space-2x-small) var(--op-space-medium);
3055
- transition: var(--_op-sidebar-transition);
3470
+ .sidebar--rail.sidebar-primary .sidebar__content, .sidebar--rail.sidebar .sidebar__content {
3471
+ align-items: center;
3056
3472
  }
3057
- .sidebar--rail.sidebar-subtle-primary .sidebar__item:hover .sidebar__item-icon, .sidebar--rail.sidebar-primary .sidebar__item:hover .sidebar__item-icon, .sidebar--rail.sidebar .sidebar__item:hover .sidebar__item-icon {
3058
- background-color: var(--_op-sidebar-icon-background-hover-color);
3473
+ .sidebar--rail.sidebar-primary .sidebar__content > *, .sidebar--rail.sidebar .sidebar__content > * {
3474
+ width: var(--__op-btn-height);
3475
+ min-width: var(--__op-btn-height);
3476
+ justify-content: center;
3477
+ padding: 0;
3478
+ font-size: 0;
3479
+ gap: 0;
3059
3480
  }
3060
- .sidebar--rail.sidebar-subtle-primary .sidebar__item.active .sidebar__item-icon, .sidebar--rail.sidebar-primary .sidebar__item.active .sidebar__item-icon, .sidebar--rail.sidebar .sidebar__item.active .sidebar__item-icon {
3061
- background-color: var(--_op-sidebar-icon-background-active-color);
3481
+ .sidebar--compact.sidebar-primary, .sidebar--compact.sidebar {
3482
+ --__op-sidebar-width: var(--_op-sidebar-compact-width);
3483
+ --__op-sidebar-brand-width: var(--_op-sidebar-compact-brand-width);
3062
3484
  }
3063
- .sidebar--rail.sidebar-subtle-primary .sidebar__item .sidebar__item-label, .sidebar--rail.sidebar-primary .sidebar__item .sidebar__item-label, .sidebar--rail.sidebar .sidebar__item .sidebar__item-label {
3064
- font-size: var(--op-font-x-small);
3485
+ .sidebar--compact.sidebar-primary .sidebar__content > *, .sidebar--compact.sidebar .sidebar__content > * {
3486
+ flex-direction: column;
3487
+ padding: var(--op-space-small);
3488
+ gap: var(--op-space-3x-small);
3065
3489
  }
3066
3490
 
3067
3491
  .sidebar-primary {
3068
- --_op-sidebar-background-color: var(--op-color-primary-plus-seven);
3069
- --_op-sidebar-text-color: var(--op-color-primary-on-plus-seven);
3070
- --_op-sidebar-icon-background-active-color: var(--op-color-primary-plus-three);
3071
- --_op-sidebar-icon-text-active-color: var(--op-color-primary-on-plus-three);
3072
- --_op-sidebar-icon-background-hover-color: var(--op-color-primary-plus-four);
3073
- --_op-sidebar-icon-text-hover-color: var(--op-color-primary-on-plus-four);
3074
- }
3075
-
3076
- .sidebar-subtle-primary {
3077
- --_op-sidebar-background-color: var(--op-color-primary-plus-max);
3078
- --_op-sidebar-text-color: var(--op-color-primary-on-plus-max);
3079
- --_op-sidebar-icon-background-active-color: var(--op-color-primary-plus-three);
3080
- --_op-sidebar-icon-text-active-color: var(--op-color-primary-on-plus-three);
3081
- --_op-sidebar-icon-background-hover-color: var(--op-color-primary-plus-four);
3082
- --_op-sidebar-icon-text-hover-color: var(--op-color-primary-on-plus-four);
3492
+ --_op-sidebar-background-color: var(--op-color-primary-plus-six);
3493
+ --_op-sidebar-text-color: var(--op-color-primary-on-plus-six);
3494
+ --_op-sidebar-border-color: var(--op-color-primary-plus-four);
3083
3495
  }
3084
3496
 
3085
3497
  .table-container, .table-danger, .table-primary, .table {
3086
- --_op-table-cell-padding-default: var(--op-space-small) var(--op-space-x-small);
3087
- --_op-table-cell-padding-comfortable: var(--op-space-medium) var(--op-space-small);
3088
- --_op-table-cell-padding-compact: var(--op-space-x-small) var(--op-space-2x-small);
3089
- --__op-table-cell-padding: var(--_op-table-cell-padding-default);
3498
+ --_op-table-cell-height-default: calc(var(--op-space-scale-unit) * 4.4);
3499
+ --_op-table-cell-height-comfortable: calc(var(--op-space-scale-unit) * 6.4);
3500
+ --_op-table-cell-height-compact: calc(var(--op-space-scale-unit) * 3.4);
3501
+ --__op-table-cell-height: var(--_op-table-cell-height-default);
3090
3502
  width: 100%;
3091
3503
  border-radius: var(--op-radius-medium);
3092
3504
  border-collapse: collapse;
@@ -3095,28 +3507,33 @@ textarea.form-control {
3095
3507
  table-layout: auto;
3096
3508
  }
3097
3509
  .table-container thead, .table-danger thead, .table-primary thead, .table thead {
3098
- background-color: var(--op-color-neutral-plus-four);
3099
- color: var(--op-color-neutral-on-plus-four);
3510
+ background-color: var(--op-color-neutral-plus-eight);
3511
+ box-shadow: inset var(--op-border-top) var(--op-border-color);
3512
+ color: var(--op-color-neutral-on-plus-eight);
3513
+ }
3514
+ .table-container thead:has(th input[type=checkbox]:checked), .table-danger thead:has(th input[type=checkbox]:checked), .table-primary thead:has(th input[type=checkbox]:checked), .table thead:has(th input[type=checkbox]:checked) {
3515
+ background-color: var(--op-color-primary-plus-seven);
3516
+ color: var(--op-color-primary-on-plus-seven);
3100
3517
  }
3101
3518
  .table-container th, .table-danger th, .table-primary th, .table th {
3102
- font-weight: var(--op-font-weight-normal);
3519
+ font-weight: var(--op-font-weight-semi-bold);
3103
3520
  text-align: left;
3104
- text-transform: uppercase;
3105
3521
  }
3106
3522
  .table-container tbody, .table-danger tbody, .table-primary tbody, .table tbody,
3107
3523
  .table-container tfoot,
3108
3524
  .table-danger tfoot,
3109
3525
  .table-primary tfoot,
3110
3526
  .table tfoot {
3111
- background-color: var(--op-color-background);
3112
- color: var(--op-color-on-background);
3527
+ background-color: var(--op-color-neutral-plus-max);
3528
+ color: var(--op-color-neutral-on-plus-max);
3113
3529
  }
3114
3530
  .table-container th, .table-danger th, .table-primary th, .table th,
3115
3531
  .table-container td,
3116
3532
  .table-danger td,
3117
3533
  .table-primary td,
3118
3534
  .table td {
3119
- padding: var(--__op-table-cell-padding);
3535
+ height: var(--__op-table-cell-height);
3536
+ padding: var(--op-space-2x-small) var(--op-space-small);
3120
3537
  font-size: var(--op-font-small);
3121
3538
  }
3122
3539
  .table-container tr:not(:last-child), .table-danger tr:not(:last-child), .table-primary tr:not(:last-child), .table tr:not(:last-child) {
@@ -3132,13 +3549,13 @@ textarea.form-control {
3132
3549
  table-layout: fixed;
3133
3550
  }
3134
3551
  .table--default-density.table-container, .table--default-density.table-danger, .table--default-density.table-primary, .table--default-density.table {
3135
- --__op-table-cell-padding: var(--_op-table-cell-padding-default);
3552
+ --__op-table-cell-height: var(--_op-table-cell-height-default);
3136
3553
  }
3137
3554
  .table--comfortable-density.table-container, .table--comfortable-density.table-danger, .table--comfortable-density.table-primary, .table--comfortable-density.table {
3138
- --__op-table-cell-padding: var(--_op-table-cell-padding-comfortable);
3555
+ --__op-table-cell-height: var(--_op-table-cell-height-comfortable);
3139
3556
  }
3140
3557
  .table--compact-density.table-container, .table--compact-density.table-danger, .table--compact-density.table-primary, .table--compact-density.table {
3141
- --__op-table-cell-padding: var(--_op-table-cell-padding-compact);
3558
+ --__op-table-cell-height: var(--_op-table-cell-height-compact);
3142
3559
  }
3143
3560
  .table--even-striped.table-container tbody tr:nth-child(even), .table--even-striped.table-danger tbody tr:nth-child(even), .table--even-striped.table-primary tbody tr:nth-child(even), .table--even-striped.table tbody tr:nth-child(even) {
3144
3561
  background-color: var(--op-color-neutral-plus-seven);
@@ -3171,4 +3588,102 @@ textarea.form-control {
3171
3588
  overflow-y: auto;
3172
3589
  }
3173
3590
 
3591
+ [data-tooltip-text] {
3592
+ --_op-tooltip-max-width: calc(5 * var(--op-space-3x-large));
3593
+ --_op-tooltip-padding: var(--op-space-x-small) var(--op-space-medium);
3594
+ --_op-tooltip-background-color: var(--op-color-neutral-minus-max);
3595
+ --_op-tooltip-text-color: var(--op-color-neutral-on-minus-max);
3596
+ --_op-tooltip-arrow-size: calc(var(--op-space-small) / 2);
3597
+ --_op-tooltip-tooltip-offset: var(--op-space-x-small);
3598
+ --_op-tooltip-tooltip-radius: var(--op-radius-medium);
3599
+ --_op-tooltip-tooltip-font-size: var(--op-font-small);
3600
+ position: relative;
3601
+ }
3602
+ [data-tooltip-text]::before, [data-tooltip-text]::after {
3603
+ opacity: 0;
3604
+ transition: var(--op-transition-tooltip);
3605
+ visibility: hidden;
3606
+ }
3607
+ [data-tooltip-text]::before {
3608
+ position: absolute;
3609
+ z-index: var(--op-z-index-tooltip);
3610
+ display: block;
3611
+ width: max-content;
3612
+ max-width: var(--_op-tooltip-max-width);
3613
+ padding: var(--_op-tooltip-padding);
3614
+ border-radius: var(--_op-tooltip-tooltip-radius);
3615
+ background-color: var(--_op-tooltip-background-color);
3616
+ color: var(--_op-tooltip-text-color);
3617
+ content: attr(data-tooltip-text);
3618
+ font-family: var(--op-font-family);
3619
+ font-size: var(--_op-tooltip-tooltip-font-size);
3620
+ overflow-wrap: break-word;
3621
+ pointer-events: none;
3622
+ text-align: center;
3623
+ white-space: normal;
3624
+ }
3625
+ [data-tooltip-text]::after {
3626
+ position: absolute;
3627
+ z-index: var(--op-z-index-tooltip);
3628
+ border: var(--_op-tooltip-arrow-size) solid var(--_op-tooltip-background-color);
3629
+ content: "";
3630
+ pointer-events: none;
3631
+ }
3632
+ [data-tooltip-text]:hover::before, [data-tooltip-text]:hover::after {
3633
+ opacity: 1;
3634
+ visibility: visible;
3635
+ }
3636
+ [data-tooltip-position=top][data-tooltip-text]::before, [data-tooltip-position=top][data-tooltip-text]::after, [data-tooltip-text]:not([data-tooltip-position])::before, [data-tooltip-text]:not([data-tooltip-position])::after {
3637
+ left: 50%;
3638
+ transform: translateX(-50%);
3639
+ }
3640
+ [data-tooltip-position=top][data-tooltip-text]::before, [data-tooltip-text]:not([data-tooltip-position])::before {
3641
+ bottom: 100%;
3642
+ margin-bottom: calc(var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
3643
+ }
3644
+ [data-tooltip-position=top][data-tooltip-text]::after, [data-tooltip-text]:not([data-tooltip-position])::after {
3645
+ bottom: 100%;
3646
+ border-color: var(--_op-tooltip-background-color) transparent transparent transparent;
3647
+ margin-bottom: calc(-1 * var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
3648
+ }
3649
+ [data-tooltip-position=left][data-tooltip-text]::before, [data-tooltip-position=left][data-tooltip-text]::after {
3650
+ top: 50%;
3651
+ transform: translateY(-50%);
3652
+ }
3653
+ [data-tooltip-position=left][data-tooltip-text]::before {
3654
+ right: 100%;
3655
+ margin-right: calc(var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
3656
+ }
3657
+ [data-tooltip-position=left][data-tooltip-text]::after {
3658
+ right: 100%;
3659
+ border-color: transparent transparent transparent var(--_op-tooltip-background-color);
3660
+ margin-right: calc(-1 * var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
3661
+ }
3662
+ [data-tooltip-position=bottom][data-tooltip-text]::before, [data-tooltip-position=bottom][data-tooltip-text]::after {
3663
+ left: 50%;
3664
+ transform: translateX(-50%);
3665
+ }
3666
+ [data-tooltip-position=bottom][data-tooltip-text]::before {
3667
+ top: 100%;
3668
+ margin-top: calc(var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
3669
+ }
3670
+ [data-tooltip-position=bottom][data-tooltip-text]::after {
3671
+ top: 100%;
3672
+ border-color: transparent transparent var(--_op-tooltip-background-color) transparent;
3673
+ margin-top: calc(-1 * var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
3674
+ }
3675
+ [data-tooltip-position=right][data-tooltip-text]::before, [data-tooltip-position=right][data-tooltip-text]::after {
3676
+ top: 50%;
3677
+ transform: translateY(-50%);
3678
+ }
3679
+ [data-tooltip-position=right][data-tooltip-text]::before {
3680
+ left: 100%;
3681
+ margin-left: calc(var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
3682
+ }
3683
+ [data-tooltip-position=right][data-tooltip-text]::after {
3684
+ left: 100%;
3685
+ border-color: transparent var(--_op-tooltip-background-color) transparent transparent;
3686
+ margin-left: calc(-1 * var(--_op-tooltip-arrow-size) + var(--_op-tooltip-tooltip-offset));
3687
+ }
3688
+
3174
3689
  /*# sourceMappingURL=optics.css.map */