@revikornmann/muka-ui 0.6.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/Alert/Alert.css +7 -0
- package/dist/cjs/components/DataPieChart/DataPieChart.css +29 -0
- package/dist/cjs/components/DataPieChart/DataPieChart.js +20 -3
- package/dist/cjs/components/DataPieChart/DataPieChart.js.map +1 -1
- package/dist/cjs/components/Dialog/Dialog.js +64 -7
- package/dist/cjs/components/Dialog/Dialog.js.map +1 -1
- package/dist/cjs/components/NavigationTransition/NavigationTransition.js +25 -8
- package/dist/cjs/components/NavigationTransition/NavigationTransition.js.map +1 -1
- package/dist/cjs/components/PhotoUploader/PhotoUploader.css +125 -0
- package/dist/cjs/components/PhotoUploader/PhotoUploader.js +257 -0
- package/dist/cjs/components/PhotoUploader/PhotoUploader.js.map +1 -0
- package/dist/cjs/components/PhotoUploader/index.js +6 -0
- package/dist/cjs/components/PhotoUploader/index.js.map +1 -0
- package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.css +32 -2
- package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.js +13 -2
- package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.js.map +1 -1
- package/dist/cjs/components/SpecList/SpecList.css +34 -21
- package/dist/cjs/components/SpecList/SpecList.js +9 -3
- package/dist/cjs/components/SpecList/SpecList.js.map +1 -1
- package/dist/cjs/components/Thumbnail/Thumbnail.css +171 -0
- package/dist/cjs/components/Thumbnail/Thumbnail.js +55 -0
- package/dist/cjs/components/Thumbnail/Thumbnail.js.map +1 -0
- package/dist/cjs/components/Thumbnail/index.js +6 -0
- package/dist/cjs/components/Thumbnail/index.js.map +1 -0
- package/dist/cjs/components/index.js +5 -1
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/esm/components/Alert/Alert.css +7 -0
- package/dist/esm/components/DataPieChart/DataPieChart.css +29 -0
- package/dist/esm/components/DataPieChart/DataPieChart.js +20 -3
- package/dist/esm/components/DataPieChart/DataPieChart.js.map +1 -1
- package/dist/esm/components/Dialog/Dialog.js +31 -7
- package/dist/esm/components/Dialog/Dialog.js.map +1 -1
- package/dist/esm/components/NavigationTransition/NavigationTransition.js +25 -8
- package/dist/esm/components/NavigationTransition/NavigationTransition.js.map +1 -1
- package/dist/esm/components/PhotoUploader/PhotoUploader.css +125 -0
- package/dist/esm/components/PhotoUploader/PhotoUploader.js +254 -0
- package/dist/esm/components/PhotoUploader/PhotoUploader.js.map +1 -0
- package/dist/esm/components/PhotoUploader/index.js +2 -0
- package/dist/esm/components/PhotoUploader/index.js.map +1 -0
- package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.css +32 -2
- package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.js +13 -2
- package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.js.map +1 -1
- package/dist/esm/components/SpecList/SpecList.css +34 -21
- package/dist/esm/components/SpecList/SpecList.js +9 -3
- package/dist/esm/components/SpecList/SpecList.js.map +1 -1
- package/dist/esm/components/Thumbnail/Thumbnail.css +171 -0
- package/dist/esm/components/Thumbnail/Thumbnail.js +52 -0
- package/dist/esm/components/Thumbnail/Thumbnail.js.map +1 -0
- package/dist/esm/components/Thumbnail/index.js +2 -0
- package/dist/esm/components/Thumbnail/index.js.map +1 -0
- package/dist/esm/components/index.js +2 -0
- package/dist/esm/components/index.js.map +1 -1
- package/dist/styles/components/Alert.css +7 -0
- package/dist/styles/components/DataPieChart.css +29 -0
- package/dist/styles/components/PhotoUploader.css +125 -0
- package/dist/styles/components/ProgressAccordeon.css +32 -2
- package/dist/styles/components/SpecList.css +34 -21
- package/dist/styles/components/Thumbnail.css +171 -0
- package/dist/styles/index.css +867 -449
- package/dist/styles/muka-dark.css +867 -449
- package/dist/styles/muka-light.css +867 -449
- package/dist/styles/tokens-bouwplan-dark.css +37 -0
- package/dist/styles/tokens-bouwplan-light.css +37 -0
- package/dist/styles/tokens-fscl-dark.css +37 -0
- package/dist/styles/tokens-fscl-light.css +37 -0
- package/dist/styles/tokens-grip-dark.css +37 -0
- package/dist/styles/tokens-grip-light.css +37 -0
- package/dist/styles/tokens-muka-dark.css +37 -0
- package/dist/styles/tokens-muka-light.css +37 -0
- package/dist/styles/tokens-wireframe-dark.css +37 -0
- package/dist/styles/tokens-wireframe-light.css +37 -0
- package/dist/styles/wireframe-dark.css +867 -449
- package/dist/styles/wireframe-light.css +867 -449
- package/dist/types/components/DataPieChart/DataPieChart.d.ts +7 -0
- package/dist/types/components/DataPieChart/DataPieChart.d.ts.map +1 -1
- package/dist/types/components/Dialog/Dialog.d.ts.map +1 -1
- package/dist/types/components/FileUpload/FileUpload.d.ts +1 -1
- package/dist/types/components/FileUpload/FileUpload.d.ts.map +1 -1
- package/dist/types/components/FileUpload/FileUploadItem.d.ts +1 -1
- package/dist/types/components/FileUpload/FileUploadItem.d.ts.map +1 -1
- package/dist/types/components/NavigationTransition/NavigationTransition.d.ts +3 -1
- package/dist/types/components/NavigationTransition/NavigationTransition.d.ts.map +1 -1
- package/dist/types/components/PhotoUploader/PhotoUploader.d.ts +71 -0
- package/dist/types/components/PhotoUploader/PhotoUploader.d.ts.map +1 -0
- package/dist/types/components/PhotoUploader/index.d.ts +2 -0
- package/dist/types/components/PhotoUploader/index.d.ts.map +1 -0
- package/dist/types/components/ProgressAccordeon/ProgressAccordeon.d.ts.map +1 -1
- package/dist/types/components/SpecList/SpecList.d.ts +13 -5
- package/dist/types/components/SpecList/SpecList.d.ts.map +1 -1
- package/dist/types/components/Thumbnail/Thumbnail.d.ts +77 -0
- package/dist/types/components/Thumbnail/Thumbnail.d.ts.map +1 -0
- package/dist/types/components/Thumbnail/index.d.ts +2 -0
- package/dist/types/components/Thumbnail/index.d.ts.map +1 -0
- package/dist/types/components/index.d.ts +2 -0
- package/dist/types/components/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/scripts/build-tokens.js +12 -1
- package/tokens/t1-primitives/motion.json +21 -0
- package/tokens/t2-alias/base.json +17 -0
- package/tokens/t3-semantics/ui.json +12 -0
package/dist/styles/index.css
CHANGED
|
@@ -301,6 +301,17 @@ body {
|
|
|
301
301
|
--container-gap-default: 2rem;
|
|
302
302
|
--container-gap-compact: 1.5rem;
|
|
303
303
|
--container-gap-spacious: 2.5rem;
|
|
304
|
+
--duration-none: 0ms;
|
|
305
|
+
--duration-instant: 100ms;
|
|
306
|
+
--duration-fast: 150ms;
|
|
307
|
+
--duration-normal: 200ms;
|
|
308
|
+
--duration-slow: 300ms;
|
|
309
|
+
--duration-slower: 500ms;
|
|
310
|
+
--easing-standard: cubic-bezier(0.4, 0, 0.2, 1);
|
|
311
|
+
--easing-enter: cubic-bezier(0, 0, 0.2, 1);
|
|
312
|
+
--easing-exit: cubic-bezier(0.4, 0, 1, 1);
|
|
313
|
+
--easing-spring: cubic-bezier(0.16, 1, 0.3, 1);
|
|
314
|
+
--easing-linear: linear;
|
|
304
315
|
--color-white: #ffffff;
|
|
305
316
|
--color-black: #000000;
|
|
306
317
|
--color-gray-1: #fcfcfc;
|
|
@@ -1322,6 +1333,17 @@ body {
|
|
|
1322
1333
|
--alias-radius-xl: 1.5rem;
|
|
1323
1334
|
--alias-radius-2xl: 3rem;
|
|
1324
1335
|
--alias-radius-full: 999rem;
|
|
1336
|
+
--alias-motion-duration-none: 0ms;
|
|
1337
|
+
--alias-motion-duration-instant: 100ms;
|
|
1338
|
+
--alias-motion-duration-fast: 150ms;
|
|
1339
|
+
--alias-motion-duration-normal: 200ms;
|
|
1340
|
+
--alias-motion-duration-slow: 300ms;
|
|
1341
|
+
--alias-motion-duration-slower: 500ms;
|
|
1342
|
+
--alias-motion-easing-standard: cubic-bezier(0.4, 0, 0.2, 1);
|
|
1343
|
+
--alias-motion-easing-enter: cubic-bezier(0, 0, 0.2, 1);
|
|
1344
|
+
--alias-motion-easing-exit: cubic-bezier(0.4, 0, 1, 1);
|
|
1345
|
+
--alias-motion-easing-spring: cubic-bezier(0.16, 1, 0.3, 1);
|
|
1346
|
+
--alias-motion-easing-linear: linear;
|
|
1325
1347
|
--section-padding-vertical-default: 2rem;
|
|
1326
1348
|
--section-padding-vertical-compact: 1.5rem;
|
|
1327
1349
|
--section-padding-vertical-spacious: 2.5rem;
|
|
@@ -1529,6 +1551,12 @@ body {
|
|
|
1529
1551
|
--shadow-level6: 0 48px 96px 0 rgba(0, 0, 0, 0.220), inset 0 0 1px 0 rgba(0, 0, 0, 0.220);
|
|
1530
1552
|
--shadow-bevel: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.090);
|
|
1531
1553
|
--shadow-sunken: inset 0px 0px 1px 0px rgba(0, 0, 0, 0.090), inset 0px 2px 4px 0px rgba(0, 0, 0, 0.090);
|
|
1554
|
+
--motion-duration-micro: 150ms;
|
|
1555
|
+
--motion-duration-component: 200ms;
|
|
1556
|
+
--motion-duration-view: 300ms;
|
|
1557
|
+
--motion-easing-default: cubic-bezier(0.4, 0, 0.2, 1);
|
|
1558
|
+
--motion-easing-enter: cubic-bezier(0.16, 1, 0.3, 1);
|
|
1559
|
+
--motion-easing-exit: cubic-bezier(0.4, 0, 1, 1);
|
|
1532
1560
|
--button-color-primary-background-default: #3e63dd;
|
|
1533
1561
|
--button-color-primary-background-hover: #3358d4;
|
|
1534
1562
|
--button-color-primary-background-pressed: #3a5ccc;
|
|
@@ -2224,6 +2252,15 @@ body {
|
|
|
2224
2252
|
--container-gap-spacious: 3rem;
|
|
2225
2253
|
}
|
|
2226
2254
|
|
|
2255
|
+
/* Accessibility: disable motion for users who prefer reduced motion */
|
|
2256
|
+
@media (prefers-reduced-motion: reduce) {
|
|
2257
|
+
:root {
|
|
2258
|
+
--motion-duration-micro: 0ms;
|
|
2259
|
+
--motion-duration-component: 0ms;
|
|
2260
|
+
--motion-duration-view: 0ms;
|
|
2261
|
+
}
|
|
2262
|
+
}
|
|
2263
|
+
|
|
2227
2264
|
|
|
2228
2265
|
/* ========== Component Styles ========== */
|
|
2229
2266
|
/* View */
|
|
@@ -3308,6 +3345,180 @@ body {
|
|
|
3308
3345
|
}
|
|
3309
3346
|
|
|
3310
3347
|
|
|
3348
|
+
/* Thumbnail */
|
|
3349
|
+
/* Thumbnail Component Styles - Using Muka Design Tokens */
|
|
3350
|
+
|
|
3351
|
+
.muka-thumbnail {
|
|
3352
|
+
position: relative;
|
|
3353
|
+
flex-shrink: 0;
|
|
3354
|
+
}
|
|
3355
|
+
|
|
3356
|
+
/* The frame carries the border, background and shape clip. Keeping it separate
|
|
3357
|
+
from the root lets the remove (×) button sit outside the clip (needed for the
|
|
3358
|
+
circular/ellipse shape, whose corners would otherwise clip the button). */
|
|
3359
|
+
.muka-thumbnail__frame {
|
|
3360
|
+
position: absolute;
|
|
3361
|
+
inset: 0;
|
|
3362
|
+
overflow: hidden;
|
|
3363
|
+
border: var(--border-width-regular, 1px) solid var(--color-black-alpha-3);
|
|
3364
|
+
border-radius: var(--border-radius-lg);
|
|
3365
|
+
background-color: var(--color-surface-level1);
|
|
3366
|
+
}
|
|
3367
|
+
|
|
3368
|
+
/* ─── Shapes ──────────────────────────────────────────── */
|
|
3369
|
+
.muka-thumbnail--4-3 {
|
|
3370
|
+
width: 160px;
|
|
3371
|
+
height: 120px;
|
|
3372
|
+
}
|
|
3373
|
+
|
|
3374
|
+
.muka-thumbnail--1-1 {
|
|
3375
|
+
width: 120px;
|
|
3376
|
+
height: 120px;
|
|
3377
|
+
}
|
|
3378
|
+
|
|
3379
|
+
.muka-thumbnail--ellipse {
|
|
3380
|
+
width: 120px;
|
|
3381
|
+
height: 120px;
|
|
3382
|
+
}
|
|
3383
|
+
|
|
3384
|
+
.muka-thumbnail--ellipse .muka-thumbnail__frame {
|
|
3385
|
+
border-radius: var(--border-radius-full);
|
|
3386
|
+
}
|
|
3387
|
+
|
|
3388
|
+
/* Image fills the frame, cropped to cover. Sits at scale(1) by default so the
|
|
3389
|
+
interactive hover zoom has a clean origin. */
|
|
3390
|
+
.muka-thumbnail__image {
|
|
3391
|
+
position: absolute;
|
|
3392
|
+
inset: 0;
|
|
3393
|
+
width: 100%;
|
|
3394
|
+
height: 100%;
|
|
3395
|
+
object-fit: cover;
|
|
3396
|
+
display: block;
|
|
3397
|
+
transform-origin: center;
|
|
3398
|
+
/* Micro-interaction: hover zoom eases out over the "micro" duration. */
|
|
3399
|
+
transition: transform var(--motion-duration-micro) var(--motion-easing-enter);
|
|
3400
|
+
}
|
|
3401
|
+
|
|
3402
|
+
/* ─── Interactive (click-to-enlarge) ──────────────────── */
|
|
3403
|
+
.muka-thumbnail__trigger {
|
|
3404
|
+
position: absolute;
|
|
3405
|
+
inset: 0;
|
|
3406
|
+
padding: 0;
|
|
3407
|
+
border: 0;
|
|
3408
|
+
background: none;
|
|
3409
|
+
cursor: pointer;
|
|
3410
|
+
overflow: hidden;
|
|
3411
|
+
}
|
|
3412
|
+
|
|
3413
|
+
.muka-thumbnail__trigger:focus-visible {
|
|
3414
|
+
outline: 2px solid var(--color-border-focus);
|
|
3415
|
+
outline-offset: -2px;
|
|
3416
|
+
}
|
|
3417
|
+
|
|
3418
|
+
/* On hover the image scales up ~8px (160px → 168px) with an ease-out feel. */
|
|
3419
|
+
.muka-thumbnail--interactive:hover .muka-thumbnail__image {
|
|
3420
|
+
transform: scale(1.05);
|
|
3421
|
+
}
|
|
3422
|
+
|
|
3423
|
+
/* ─── Loading overlay + progress donut ────────────────── */
|
|
3424
|
+
.muka-thumbnail__overlay {
|
|
3425
|
+
position: absolute;
|
|
3426
|
+
inset: 0;
|
|
3427
|
+
display: flex;
|
|
3428
|
+
align-items: center;
|
|
3429
|
+
justify-content: center;
|
|
3430
|
+
background-color: var(--dialog-color-backdrop);
|
|
3431
|
+
}
|
|
3432
|
+
|
|
3433
|
+
.muka-thumbnail__progress {
|
|
3434
|
+
width: 40px;
|
|
3435
|
+
height: 40px;
|
|
3436
|
+
}
|
|
3437
|
+
|
|
3438
|
+
/* ─── Error / corrupt state ───────────────────────────── */
|
|
3439
|
+
.muka-thumbnail--error .muka-thumbnail__frame {
|
|
3440
|
+
background-color: var(--alias-color-state-error-muted);
|
|
3441
|
+
border-color: var(--alias-color-state-error-default);
|
|
3442
|
+
}
|
|
3443
|
+
|
|
3444
|
+
.muka-thumbnail__error {
|
|
3445
|
+
position: absolute;
|
|
3446
|
+
inset: 0;
|
|
3447
|
+
display: flex;
|
|
3448
|
+
flex-direction: column;
|
|
3449
|
+
align-items: center;
|
|
3450
|
+
justify-content: center;
|
|
3451
|
+
gap: var(--spacing-2);
|
|
3452
|
+
padding: var(--spacing-3);
|
|
3453
|
+
text-align: center;
|
|
3454
|
+
}
|
|
3455
|
+
|
|
3456
|
+
.muka-thumbnail__error-icon {
|
|
3457
|
+
color: var(--alert-color-error-accent);
|
|
3458
|
+
}
|
|
3459
|
+
|
|
3460
|
+
.muka-thumbnail__caption {
|
|
3461
|
+
max-width: 100%;
|
|
3462
|
+
overflow: hidden;
|
|
3463
|
+
text-overflow: ellipsis;
|
|
3464
|
+
white-space: nowrap;
|
|
3465
|
+
color: var(--alert-color-error-accent);
|
|
3466
|
+
font-family: var(--text-body-sm-regular-fontFamily);
|
|
3467
|
+
font-size: var(--text-body-sm-regular-fontSize);
|
|
3468
|
+
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
3469
|
+
line-height: var(--text-body-sm-regular-lineHeight);
|
|
3470
|
+
}
|
|
3471
|
+
|
|
3472
|
+
/* ─── Remove (×) button ───────────────────────────────── */
|
|
3473
|
+
.muka-thumbnail__remove {
|
|
3474
|
+
position: absolute;
|
|
3475
|
+
top: var(--spacing-2);
|
|
3476
|
+
right: var(--spacing-2);
|
|
3477
|
+
display: flex;
|
|
3478
|
+
align-items: center;
|
|
3479
|
+
justify-content: center;
|
|
3480
|
+
width: var(--size-2xl);
|
|
3481
|
+
height: var(--size-2xl);
|
|
3482
|
+
padding: 0;
|
|
3483
|
+
color: var(--button-color-tertiary-foreground-default);
|
|
3484
|
+
background-color: var(--button-color-tertiary-background-default);
|
|
3485
|
+
border: var(--border-width-regular, 1px) solid var(--button-color-tertiary-border-default);
|
|
3486
|
+
border-radius: var(--border-radius-lg);
|
|
3487
|
+
cursor: pointer;
|
|
3488
|
+
transition: background-color var(--motion-duration-micro) var(--motion-easing-enter),
|
|
3489
|
+
border-color var(--motion-duration-micro) var(--motion-easing-enter);
|
|
3490
|
+
}
|
|
3491
|
+
|
|
3492
|
+
.muka-thumbnail__remove:hover {
|
|
3493
|
+
color: var(--button-color-tertiary-foreground-hover);
|
|
3494
|
+
background-color: var(--button-color-tertiary-background-hover);
|
|
3495
|
+
border-color: var(--button-color-tertiary-border-hover);
|
|
3496
|
+
}
|
|
3497
|
+
|
|
3498
|
+
.muka-thumbnail__remove:active {
|
|
3499
|
+
color: var(--button-color-tertiary-foreground-pressed);
|
|
3500
|
+
background-color: var(--button-color-tertiary-background-pressed);
|
|
3501
|
+
border-color: var(--button-color-tertiary-border-pressed);
|
|
3502
|
+
}
|
|
3503
|
+
|
|
3504
|
+
.muka-thumbnail__remove:focus-visible {
|
|
3505
|
+
outline: 2px solid var(--color-border-focus);
|
|
3506
|
+
outline-offset: 2px;
|
|
3507
|
+
}
|
|
3508
|
+
|
|
3509
|
+
/* ─── Reduced motion ──────────────────────────────────── */
|
|
3510
|
+
@media (prefers-reduced-motion: reduce) {
|
|
3511
|
+
.muka-thumbnail__image,
|
|
3512
|
+
.muka-thumbnail__remove {
|
|
3513
|
+
transition: none;
|
|
3514
|
+
}
|
|
3515
|
+
|
|
3516
|
+
.muka-thumbnail--interactive:hover .muka-thumbnail__image {
|
|
3517
|
+
transform: none;
|
|
3518
|
+
}
|
|
3519
|
+
}
|
|
3520
|
+
|
|
3521
|
+
|
|
3311
3522
|
/* Textarea */
|
|
3312
3523
|
/* Textarea Component Styles - Using Muka Design Tokens */
|
|
3313
3524
|
|
|
@@ -4183,55 +4394,48 @@ body {
|
|
|
4183
4394
|
.muka-spec-list {
|
|
4184
4395
|
margin: 0;
|
|
4185
4396
|
padding: 0;
|
|
4186
|
-
background-color: var(--color-surface-level1);
|
|
4187
|
-
border-radius: var(--radius-md);
|
|
4188
|
-
overflow: hidden;
|
|
4189
4397
|
}
|
|
4190
4398
|
|
|
4191
4399
|
/* ─── Row ─────────────────────────────────────────────── */
|
|
4192
4400
|
|
|
4193
4401
|
.muka-spec-row {
|
|
4194
4402
|
display: flex;
|
|
4195
|
-
align-items:
|
|
4403
|
+
align-items: flex-start;
|
|
4196
4404
|
gap: var(--spacing-3);
|
|
4197
|
-
padding: var(--spacing-3)
|
|
4198
|
-
border-top: var(--border-width-regular) solid var(--color-border-default);
|
|
4199
|
-
}
|
|
4200
|
-
|
|
4201
|
-
.muka-spec-row:first-child {
|
|
4202
|
-
border-top: none;
|
|
4405
|
+
padding-bottom: var(--spacing-3);
|
|
4203
4406
|
}
|
|
4204
4407
|
|
|
4205
4408
|
/* ─── Label ───────────────────────────────────────────── */
|
|
4206
4409
|
|
|
4207
4410
|
.muka-spec-row__label {
|
|
4208
4411
|
flex: 0 0 auto;
|
|
4209
|
-
min-width: 40%;
|
|
4210
4412
|
margin: 0;
|
|
4211
4413
|
color: var(--color-text-subtle-default);
|
|
4212
4414
|
font-family: var(--text-body-md-regular-fontFamily);
|
|
4213
4415
|
font-weight: var(--text-body-md-regular-fontWeight);
|
|
4214
4416
|
font-size: var(--text-body-md-regular-fontSize);
|
|
4215
4417
|
line-height: var(--text-body-md-regular-lineHeight);
|
|
4418
|
+
overflow: hidden;
|
|
4419
|
+
text-overflow: ellipsis;
|
|
4420
|
+
white-space: nowrap;
|
|
4216
4421
|
}
|
|
4217
4422
|
|
|
4218
4423
|
/* ─── Value ───────────────────────────────────────────── */
|
|
4219
4424
|
|
|
4220
4425
|
.muka-spec-row__value {
|
|
4221
|
-
flex: 1 1
|
|
4426
|
+
flex: 1 1 0;
|
|
4427
|
+
min-width: 0;
|
|
4222
4428
|
margin: 0;
|
|
4223
4429
|
display: flex;
|
|
4224
4430
|
flex-direction: column;
|
|
4225
|
-
align-items: flex-end;
|
|
4226
|
-
text-align: right;
|
|
4227
4431
|
color: var(--color-text-default-default);
|
|
4228
4432
|
}
|
|
4229
4433
|
|
|
4230
4434
|
.muka-spec-row__value-text {
|
|
4231
|
-
font-family: var(--text-body-md-
|
|
4232
|
-
font-weight: var(--text-body-md-
|
|
4233
|
-
font-size: var(--text-body-md-
|
|
4234
|
-
line-height: var(--text-body-md-
|
|
4435
|
+
font-family: var(--text-body-md-regular-fontFamily);
|
|
4436
|
+
font-weight: var(--text-body-md-regular-fontWeight);
|
|
4437
|
+
font-size: var(--text-body-md-regular-fontSize);
|
|
4438
|
+
line-height: var(--text-body-md-regular-lineHeight);
|
|
4235
4439
|
}
|
|
4236
4440
|
|
|
4237
4441
|
.muka-spec-row__hint {
|
|
@@ -4242,10 +4446,30 @@ body {
|
|
|
4242
4446
|
line-height: var(--text-body-sm-regular-lineHeight);
|
|
4243
4447
|
}
|
|
4244
4448
|
|
|
4245
|
-
/* ───
|
|
4449
|
+
/* ─── Label width (horizontal stacking) ───────────────── */
|
|
4450
|
+
|
|
4451
|
+
.muka-spec-list--label-small .muka-spec-row__label {
|
|
4452
|
+
width: 80px;
|
|
4453
|
+
}
|
|
4454
|
+
|
|
4455
|
+
.muka-spec-list--label-medium .muka-spec-row__label {
|
|
4456
|
+
width: 120px;
|
|
4457
|
+
}
|
|
4458
|
+
|
|
4459
|
+
.muka-spec-list--label-large .muka-spec-row__label {
|
|
4460
|
+
width: 160px;
|
|
4461
|
+
}
|
|
4462
|
+
|
|
4463
|
+
/* ─── Vertical stacking ───────────────────────────────── */
|
|
4464
|
+
|
|
4465
|
+
.muka-spec-list--vertical .muka-spec-row {
|
|
4466
|
+
flex-direction: column;
|
|
4467
|
+
gap: var(--spacing-1);
|
|
4468
|
+
}
|
|
4246
4469
|
|
|
4247
|
-
.muka-spec-list--
|
|
4248
|
-
|
|
4470
|
+
.muka-spec-list--vertical .muka-spec-row__label {
|
|
4471
|
+
width: 100%;
|
|
4472
|
+
white-space: normal;
|
|
4249
4473
|
}
|
|
4250
4474
|
|
|
4251
4475
|
|
|
@@ -4596,232 +4820,38 @@ body {
|
|
|
4596
4820
|
}
|
|
4597
4821
|
|
|
4598
4822
|
|
|
4599
|
-
/*
|
|
4600
|
-
/*
|
|
4823
|
+
/* SegmentGroup */
|
|
4824
|
+
/* SegmentGroup Component Styles - Using Muka Design Tokens */
|
|
4601
4825
|
|
|
4602
|
-
|
|
4826
|
+
/* Container */
|
|
4827
|
+
.muka-segmentgroup {
|
|
4603
4828
|
display: inline-flex;
|
|
4604
|
-
flex-direction: column;
|
|
4605
|
-
gap: var(--spacing-2);
|
|
4606
|
-
}
|
|
4607
|
-
|
|
4608
|
-
.muka-select--full-width {
|
|
4609
|
-
width: 100%;
|
|
4610
|
-
}
|
|
4611
|
-
|
|
4612
|
-
/* Label */
|
|
4613
|
-
.muka-select__label {
|
|
4614
|
-
color: var(--color-text-default-default);
|
|
4615
|
-
cursor: pointer;
|
|
4616
|
-
}
|
|
4617
|
-
|
|
4618
|
-
.muka-select__label--sm {
|
|
4619
|
-
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
4620
|
-
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
4621
|
-
font-size: var(--text-label-sm-semibold-fontSize);
|
|
4622
|
-
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
4623
|
-
}
|
|
4624
|
-
|
|
4625
|
-
.muka-select__label--md {
|
|
4626
|
-
font-family: var(--text-label-md-semibold-fontFamily);
|
|
4627
|
-
font-weight: var(--text-label-md-semibold-fontWeight);
|
|
4628
|
-
font-size: var(--text-label-md-semibold-fontSize);
|
|
4629
|
-
line-height: var(--text-label-md-semibold-lineHeight);
|
|
4630
|
-
}
|
|
4631
|
-
|
|
4632
|
-
.muka-select__label--lg {
|
|
4633
|
-
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
4634
|
-
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
4635
|
-
font-size: var(--text-label-lg-semibold-fontSize);
|
|
4636
|
-
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
4637
|
-
}
|
|
4638
|
-
|
|
4639
|
-
.muka-select__required {
|
|
4640
|
-
color: var(--color-state-error-foreground);
|
|
4641
|
-
}
|
|
4642
|
-
|
|
4643
|
-
.muka-select__label--sm + .muka-select__field--disabled,
|
|
4644
|
-
.muka-select__label--md + .muka-select__field--disabled,
|
|
4645
|
-
.muka-select__label--lg + .muka-select__field--disabled {
|
|
4646
|
-
cursor: not-allowed;
|
|
4647
|
-
}
|
|
4648
|
-
|
|
4649
|
-
/* Field container — same as Input: 1px border, radius, padding, inset shadow */
|
|
4650
|
-
.muka-select__field {
|
|
4651
|
-
display: flex;
|
|
4652
4829
|
align-items: center;
|
|
4653
|
-
gap:
|
|
4830
|
+
gap: 0;
|
|
4831
|
+
padding: var(--segmentgroup-container-padding);
|
|
4832
|
+
background-color: var(--segmentgroup-container-background);
|
|
4833
|
+
border-radius: var(--segmentgroup-container-radius);
|
|
4654
4834
|
position: relative;
|
|
4655
|
-
|
|
4656
|
-
border: var(--border-width-regular) solid var(--input-field-color-default-border);
|
|
4657
|
-
border-radius: var(--input-field-radius-md);
|
|
4658
|
-
padding: var(--input-field-padding-y) var(--input-field-padding-x);
|
|
4659
|
-
transition: border-color 0.2s ease, background-color 0.2s ease;
|
|
4660
|
-
cursor: pointer;
|
|
4661
|
-
box-sizing: border-box;
|
|
4835
|
+
transition: all 0.2s ease;
|
|
4662
4836
|
}
|
|
4663
4837
|
|
|
4664
|
-
/* Inset shadow
|
|
4665
|
-
.muka-
|
|
4838
|
+
/* Inset shadow on container */
|
|
4839
|
+
.muka-segmentgroup::after {
|
|
4666
4840
|
content: '';
|
|
4667
4841
|
position: absolute;
|
|
4668
4842
|
inset: 0;
|
|
4669
4843
|
border-radius: inherit;
|
|
4670
|
-
box-shadow:
|
|
4844
|
+
box-shadow: var(--segmentgroup-container-shadow);
|
|
4671
4845
|
pointer-events: none;
|
|
4672
4846
|
}
|
|
4673
4847
|
|
|
4674
|
-
/*
|
|
4675
|
-
.muka-
|
|
4676
|
-
|
|
4677
|
-
border-radius: var(--input-field-radius-sm);
|
|
4678
|
-
}
|
|
4679
|
-
|
|
4680
|
-
.muka-select__field--md {
|
|
4681
|
-
min-height: var(--input-field-height-default);
|
|
4682
|
-
border-radius: var(--input-field-radius-md);
|
|
4848
|
+
/* Full width variant */
|
|
4849
|
+
.muka-segmentgroup--full-width {
|
|
4850
|
+
width: 100%;
|
|
4683
4851
|
}
|
|
4684
4852
|
|
|
4685
|
-
.muka-
|
|
4686
|
-
|
|
4687
|
-
border-radius: var(--input-field-radius-lg);
|
|
4688
|
-
}
|
|
4689
|
-
|
|
4690
|
-
/* Hover — no visual change (same as Input) */
|
|
4691
|
-
|
|
4692
|
-
/* Focus (active) — same as Input: 2px border, padding compensation */
|
|
4693
|
-
.muka-select__field--focused:not(.muka-select__field--disabled) {
|
|
4694
|
-
border-width: var(--border-width-bold);
|
|
4695
|
-
border-color: var(--input-field-color-focus-border);
|
|
4696
|
-
background-color: var(--input-field-color-focus-background);
|
|
4697
|
-
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
4698
|
-
}
|
|
4699
|
-
|
|
4700
|
-
/* Error — same as Input: 2px border, padding compensation */
|
|
4701
|
-
.muka-select__field--error:not(.muka-select__field--disabled) {
|
|
4702
|
-
border-width: var(--border-width-bold);
|
|
4703
|
-
border-color: var(--input-field-color-error-border);
|
|
4704
|
-
background-color: var(--input-field-color-error-background);
|
|
4705
|
-
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
4706
|
-
}
|
|
4707
|
-
|
|
4708
|
-
/* Disabled — same as Input */
|
|
4709
|
-
.muka-select__field--disabled {
|
|
4710
|
-
background-color: var(--input-field-color-disabled-background);
|
|
4711
|
-
border-color: var(--input-field-color-disabled-border);
|
|
4712
|
-
cursor: not-allowed;
|
|
4713
|
-
}
|
|
4714
|
-
|
|
4715
|
-
.muka-select__field--disabled::after {
|
|
4716
|
-
display: none;
|
|
4717
|
-
}
|
|
4718
|
-
|
|
4719
|
-
/* Native select — padding on field so native has 0 + right space for chevron */
|
|
4720
|
-
.muka-select__native {
|
|
4721
|
-
appearance: none;
|
|
4722
|
-
-webkit-appearance: none;
|
|
4723
|
-
flex: 1;
|
|
4724
|
-
border: none;
|
|
4725
|
-
outline: none;
|
|
4726
|
-
background: transparent;
|
|
4727
|
-
color: var(--input-field-color-default-foreground);
|
|
4728
|
-
font-family: var(--text-input-md-fontFamily);
|
|
4729
|
-
font-weight: var(--text-input-md-fontWeight);
|
|
4730
|
-
font-size: var(--text-input-md-fontSize);
|
|
4731
|
-
line-height: var(--text-input-md-lineHeight);
|
|
4732
|
-
padding: 0;
|
|
4733
|
-
padding-right: calc(var(--input-field-padding-x) + 1.5rem);
|
|
4734
|
-
cursor: pointer;
|
|
4735
|
-
min-width: 0;
|
|
4736
|
-
width: 100%;
|
|
4737
|
-
}
|
|
4738
|
-
|
|
4739
|
-
.muka-select__field--sm .muka-select__native {
|
|
4740
|
-
font-family: var(--text-input-sm-fontFamily);
|
|
4741
|
-
font-weight: var(--text-input-sm-fontWeight);
|
|
4742
|
-
font-size: var(--text-input-sm-fontSize);
|
|
4743
|
-
line-height: var(--text-input-sm-lineHeight);
|
|
4744
|
-
}
|
|
4745
|
-
|
|
4746
|
-
.muka-select__field--lg .muka-select__native {
|
|
4747
|
-
font-family: var(--text-input-lg-fontFamily);
|
|
4748
|
-
font-weight: var(--text-input-lg-fontWeight);
|
|
4749
|
-
font-size: var(--text-input-lg-fontSize);
|
|
4750
|
-
line-height: var(--text-input-lg-lineHeight);
|
|
4751
|
-
}
|
|
4752
|
-
|
|
4753
|
-
.muka-select__field--disabled .muka-select__native {
|
|
4754
|
-
color: var(--input-field-color-disabled-foreground);
|
|
4755
|
-
cursor: not-allowed;
|
|
4756
|
-
}
|
|
4757
|
-
|
|
4758
|
-
/* Chevron — aligned with field padding */
|
|
4759
|
-
.muka-select__chevron {
|
|
4760
|
-
display: inline-flex;
|
|
4761
|
-
align-items: center;
|
|
4762
|
-
position: absolute;
|
|
4763
|
-
right: var(--input-field-padding-x);
|
|
4764
|
-
pointer-events: none;
|
|
4765
|
-
color: var(--color-text-subtle-default);
|
|
4766
|
-
}
|
|
4767
|
-
|
|
4768
|
-
.muka-select__field--disabled .muka-select__chevron {
|
|
4769
|
-
color: var(--input-field-color-disabled-foreground);
|
|
4770
|
-
}
|
|
4771
|
-
|
|
4772
|
-
/* Helper text — same as Input */
|
|
4773
|
-
.muka-select__helper {
|
|
4774
|
-
font-family: var(--text-label-sm-regular-fontFamily);
|
|
4775
|
-
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
4776
|
-
font-size: var(--text-label-sm-regular-fontSize);
|
|
4777
|
-
line-height: var(--text-label-sm-regular-lineHeight);
|
|
4778
|
-
color: var(--color-text-subtle-default);
|
|
4779
|
-
margin: 0;
|
|
4780
|
-
}
|
|
4781
|
-
|
|
4782
|
-
/* Error message — same as Input */
|
|
4783
|
-
.muka-select__error {
|
|
4784
|
-
font-family: var(--text-label-sm-regular-fontFamily);
|
|
4785
|
-
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
4786
|
-
font-size: var(--text-label-sm-regular-fontSize);
|
|
4787
|
-
line-height: var(--text-label-sm-regular-lineHeight);
|
|
4788
|
-
color: var(--color-state-error-foreground);
|
|
4789
|
-
margin: 0;
|
|
4790
|
-
}
|
|
4791
|
-
|
|
4792
|
-
|
|
4793
|
-
/* SegmentGroup */
|
|
4794
|
-
/* SegmentGroup Component Styles - Using Muka Design Tokens */
|
|
4795
|
-
|
|
4796
|
-
/* Container */
|
|
4797
|
-
.muka-segmentgroup {
|
|
4798
|
-
display: inline-flex;
|
|
4799
|
-
align-items: center;
|
|
4800
|
-
gap: 0;
|
|
4801
|
-
padding: var(--segmentgroup-container-padding);
|
|
4802
|
-
background-color: var(--segmentgroup-container-background);
|
|
4803
|
-
border-radius: var(--segmentgroup-container-radius);
|
|
4804
|
-
position: relative;
|
|
4805
|
-
transition: all 0.2s ease;
|
|
4806
|
-
}
|
|
4807
|
-
|
|
4808
|
-
/* Inset shadow on container */
|
|
4809
|
-
.muka-segmentgroup::after {
|
|
4810
|
-
content: '';
|
|
4811
|
-
position: absolute;
|
|
4812
|
-
inset: 0;
|
|
4813
|
-
border-radius: inherit;
|
|
4814
|
-
box-shadow: var(--segmentgroup-container-shadow);
|
|
4815
|
-
pointer-events: none;
|
|
4816
|
-
}
|
|
4817
|
-
|
|
4818
|
-
/* Full width variant */
|
|
4819
|
-
.muka-segmentgroup--full-width {
|
|
4820
|
-
width: 100%;
|
|
4821
|
-
}
|
|
4822
|
-
|
|
4823
|
-
.muka-segmentgroup--full-width .muka-segmentgroup__segment {
|
|
4824
|
-
flex: 1;
|
|
4853
|
+
.muka-segmentgroup--full-width .muka-segmentgroup__segment {
|
|
4854
|
+
flex: 1;
|
|
4825
4855
|
}
|
|
4826
4856
|
|
|
4827
4857
|
/* Pill */
|
|
@@ -5529,80 +5559,271 @@ body {
|
|
|
5529
5559
|
}
|
|
5530
5560
|
|
|
5531
5561
|
|
|
5532
|
-
/*
|
|
5533
|
-
/*
|
|
5562
|
+
/* Radio */
|
|
5563
|
+
/* Radio Component Styles - Using Muka Design Tokens */
|
|
5534
5564
|
|
|
5535
|
-
/*
|
|
5536
|
-
.muka-
|
|
5537
|
-
|
|
5538
|
-
|
|
5565
|
+
/* Wrapper - clickable label container */
|
|
5566
|
+
.muka-radio {
|
|
5567
|
+
display: inline-flex;
|
|
5568
|
+
align-items: center;
|
|
5569
|
+
gap: var(--spacing-4);
|
|
5570
|
+
cursor: pointer;
|
|
5571
|
+
user-select: none;
|
|
5539
5572
|
}
|
|
5540
5573
|
|
|
5541
|
-
|
|
5542
|
-
|
|
5574
|
+
.muka-radio--disabled {
|
|
5575
|
+
cursor: not-allowed;
|
|
5576
|
+
opacity: 0.6;
|
|
5577
|
+
}
|
|
5578
|
+
|
|
5579
|
+
/* Control container */
|
|
5580
|
+
.muka-radio__control {
|
|
5543
5581
|
position: relative;
|
|
5544
|
-
|
|
5545
|
-
|
|
5546
|
-
|
|
5582
|
+
display: inline-flex;
|
|
5583
|
+
align-items: center;
|
|
5584
|
+
justify-content: center;
|
|
5585
|
+
flex-shrink: 0;
|
|
5547
5586
|
}
|
|
5548
5587
|
|
|
5549
|
-
/*
|
|
5550
|
-
.muka-
|
|
5588
|
+
/* Hidden native input */
|
|
5589
|
+
.muka-radio__input {
|
|
5551
5590
|
position: absolute;
|
|
5552
|
-
|
|
5553
|
-
|
|
5554
|
-
|
|
5555
|
-
|
|
5556
|
-
|
|
5591
|
+
width: 1px;
|
|
5592
|
+
height: 1px;
|
|
5593
|
+
padding: 0;
|
|
5594
|
+
margin: -1px;
|
|
5595
|
+
overflow: hidden;
|
|
5596
|
+
clip: rect(0, 0, 0, 0);
|
|
5597
|
+
white-space: nowrap;
|
|
5598
|
+
border: 0;
|
|
5557
5599
|
}
|
|
5558
5600
|
|
|
5559
|
-
/*
|
|
5560
|
-
.muka-
|
|
5601
|
+
/* Visual indicator (circle) */
|
|
5602
|
+
.muka-radio__indicator {
|
|
5561
5603
|
display: flex;
|
|
5562
|
-
flex-direction: column;
|
|
5563
5604
|
align-items: center;
|
|
5564
|
-
|
|
5565
|
-
|
|
5605
|
+
justify-content: center;
|
|
5606
|
+
width: var(--radio-size-default);
|
|
5607
|
+
height: var(--radio-size-default);
|
|
5608
|
+
border-radius: var(--border-radius-full);
|
|
5609
|
+
background-color: var(--radio-color-default-background);
|
|
5610
|
+
border: var(--border-width-regular) solid var(--radio-color-default-border);
|
|
5611
|
+
transition: all 0.15s ease;
|
|
5612
|
+
box-shadow: inset 0 1px 2px 0 rgba(26, 26, 26, 0.15);
|
|
5566
5613
|
}
|
|
5567
5614
|
|
|
5568
|
-
/*
|
|
5569
|
-
.muka-
|
|
5570
|
-
width:
|
|
5571
|
-
height:
|
|
5615
|
+
/* Size variants */
|
|
5616
|
+
.muka-radio--sm .muka-radio__indicator {
|
|
5617
|
+
width: var(--radio-size-sm);
|
|
5618
|
+
height: var(--radio-size-sm);
|
|
5619
|
+
}
|
|
5620
|
+
|
|
5621
|
+
.muka-radio--lg .muka-radio__indicator {
|
|
5622
|
+
width: var(--radio-size-lg);
|
|
5623
|
+
height: var(--radio-size-lg);
|
|
5624
|
+
}
|
|
5625
|
+
|
|
5626
|
+
/* Inner dot (shown when checked) */
|
|
5627
|
+
.muka-radio__dot {
|
|
5628
|
+
width: var(--radio-dot-size-default);
|
|
5629
|
+
height: var(--radio-dot-size-default);
|
|
5572
5630
|
border-radius: var(--border-radius-full);
|
|
5573
|
-
|
|
5574
|
-
|
|
5575
|
-
|
|
5576
|
-
flex-shrink: 0;
|
|
5577
|
-
position: relative;
|
|
5631
|
+
background-color: var(--radio-color-default-dot);
|
|
5632
|
+
transform: scale(0);
|
|
5633
|
+
transition: transform 0.15s ease;
|
|
5578
5634
|
}
|
|
5579
5635
|
|
|
5580
|
-
|
|
5581
|
-
|
|
5582
|
-
|
|
5583
|
-
color: var(--color-text-default-inverse);
|
|
5584
|
-
cursor: pointer;
|
|
5636
|
+
.muka-radio--sm .muka-radio__dot {
|
|
5637
|
+
width: var(--radio-dot-size-sm);
|
|
5638
|
+
height: var(--radio-dot-size-sm);
|
|
5585
5639
|
}
|
|
5586
5640
|
|
|
5587
|
-
.muka-
|
|
5588
|
-
|
|
5641
|
+
.muka-radio--lg .muka-radio__dot {
|
|
5642
|
+
width: var(--radio-dot-size-lg);
|
|
5643
|
+
height: var(--radio-dot-size-lg);
|
|
5589
5644
|
}
|
|
5590
5645
|
|
|
5591
|
-
|
|
5646
|
+
/* Hover state - removed per design */
|
|
5647
|
+
|
|
5648
|
+
/* Focus state */
|
|
5649
|
+
.muka-radio__input:focus-visible + .muka-radio__indicator {
|
|
5592
5650
|
outline: 2px solid var(--color-border-focus);
|
|
5593
5651
|
outline-offset: 2px;
|
|
5594
5652
|
}
|
|
5595
5653
|
|
|
5596
|
-
/*
|
|
5597
|
-
.muka-
|
|
5598
|
-
background-color: var(--
|
|
5599
|
-
|
|
5600
|
-
|
|
5601
|
-
|
|
5602
|
-
|
|
5603
|
-
|
|
5604
|
-
|
|
5605
|
-
color: var(--color-
|
|
5654
|
+
/* Checked state */
|
|
5655
|
+
.muka-radio__input:checked + .muka-radio__indicator {
|
|
5656
|
+
background-color: var(--radio-color-checked-background);
|
|
5657
|
+
border-width: var(--border-width-bold);
|
|
5658
|
+
border-color: var(--radio-color-checked-border);
|
|
5659
|
+
box-shadow: none;
|
|
5660
|
+
}
|
|
5661
|
+
|
|
5662
|
+
.muka-radio__input:checked + .muka-radio__indicator .muka-radio__dot {
|
|
5663
|
+
background-color: var(--radio-color-checked-dot);
|
|
5664
|
+
transform: scale(1);
|
|
5665
|
+
}
|
|
5666
|
+
|
|
5667
|
+
/* Disabled state */
|
|
5668
|
+
.muka-radio--disabled .muka-radio__indicator {
|
|
5669
|
+
background-color: var(--radio-color-disabled-background);
|
|
5670
|
+
border-color: var(--radio-color-disabled-border);
|
|
5671
|
+
box-shadow: none;
|
|
5672
|
+
}
|
|
5673
|
+
|
|
5674
|
+
.muka-radio__input:disabled:checked + .muka-radio__indicator .muka-radio__dot {
|
|
5675
|
+
background-color: var(--radio-color-disabled-dot);
|
|
5676
|
+
}
|
|
5677
|
+
|
|
5678
|
+
/* Label text */
|
|
5679
|
+
.muka-radio__label {
|
|
5680
|
+
font-family: var(--text-label-lg-regular-fontFamily);
|
|
5681
|
+
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
5682
|
+
font-size: var(--text-label-lg-regular-fontSize);
|
|
5683
|
+
line-height: var(--text-label-lg-regular-lineHeight);
|
|
5684
|
+
color: var(--color-text-default-default);
|
|
5685
|
+
}
|
|
5686
|
+
|
|
5687
|
+
.muka-radio--sm .muka-radio__label {
|
|
5688
|
+
font-family: var(--text-label-md-regular-fontFamily);
|
|
5689
|
+
font-weight: var(--text-label-md-regular-fontWeight);
|
|
5690
|
+
font-size: var(--text-label-md-regular-fontSize);
|
|
5691
|
+
line-height: var(--text-label-md-regular-lineHeight);
|
|
5692
|
+
}
|
|
5693
|
+
|
|
5694
|
+
.muka-radio--lg .muka-radio__label {
|
|
5695
|
+
font-family: var(--text-label-xl-regular-fontFamily);
|
|
5696
|
+
font-weight: var(--text-label-xl-regular-fontWeight);
|
|
5697
|
+
font-size: var(--text-label-xl-regular-fontSize);
|
|
5698
|
+
line-height: var(--text-label-xl-regular-lineHeight);
|
|
5699
|
+
}
|
|
5700
|
+
|
|
5701
|
+
.muka-radio--disabled .muka-radio__label {
|
|
5702
|
+
color: var(--color-text-subtle-default);
|
|
5703
|
+
}
|
|
5704
|
+
|
|
5705
|
+
|
|
5706
|
+
/* PullToRefresh */
|
|
5707
|
+
/* PullToRefresh Component Styles */
|
|
5708
|
+
|
|
5709
|
+
.muka-pull-to-refresh {
|
|
5710
|
+
position: relative;
|
|
5711
|
+
display: flex;
|
|
5712
|
+
flex-direction: column;
|
|
5713
|
+
width: 100%;
|
|
5714
|
+
height: 100%;
|
|
5715
|
+
overflow: hidden;
|
|
5716
|
+
}
|
|
5717
|
+
|
|
5718
|
+
.muka-pull-to-refresh__indicator {
|
|
5719
|
+
position: absolute;
|
|
5720
|
+
top: 0;
|
|
5721
|
+
left: 0;
|
|
5722
|
+
right: 0;
|
|
5723
|
+
display: flex;
|
|
5724
|
+
align-items: flex-end;
|
|
5725
|
+
justify-content: center;
|
|
5726
|
+
padding-bottom: var(--spacing-2);
|
|
5727
|
+
color: var(--color-text-subtle-default);
|
|
5728
|
+
overflow: hidden;
|
|
5729
|
+
pointer-events: none;
|
|
5730
|
+
z-index: 1;
|
|
5731
|
+
}
|
|
5732
|
+
|
|
5733
|
+
.muka-pull-to-refresh__chevron {
|
|
5734
|
+
display: inline-flex;
|
|
5735
|
+
align-items: center;
|
|
5736
|
+
justify-content: center;
|
|
5737
|
+
transition: transform 0.16s ease;
|
|
5738
|
+
}
|
|
5739
|
+
|
|
5740
|
+
.muka-pull-to-refresh__scroller {
|
|
5741
|
+
flex: 1 1 auto;
|
|
5742
|
+
min-height: 0;
|
|
5743
|
+
width: 100%;
|
|
5744
|
+
overflow-x: clip;
|
|
5745
|
+
overflow-y: auto;
|
|
5746
|
+
-webkit-overflow-scrolling: touch;
|
|
5747
|
+
overscroll-behavior-y: contain;
|
|
5748
|
+
touch-action: pan-y;
|
|
5749
|
+
will-change: transform;
|
|
5750
|
+
}
|
|
5751
|
+
|
|
5752
|
+
|
|
5753
|
+
/* ProgressTracker */
|
|
5754
|
+
/* ProgressTracker Component Styles — Using Muka Design Tokens */
|
|
5755
|
+
|
|
5756
|
+
/* ─── Root ──────────────────────────────────────────────── */
|
|
5757
|
+
.muka-progress-tracker {
|
|
5758
|
+
width: 100%;
|
|
5759
|
+
padding-bottom: var(--spacing-7);
|
|
5760
|
+
}
|
|
5761
|
+
|
|
5762
|
+
/* ─── Track (layered container) ─────────────────────────── */
|
|
5763
|
+
.muka-progress-tracker__track {
|
|
5764
|
+
position: relative;
|
|
5765
|
+
/* Vertical padding = (indicator size - connector height) / 2 = (32 - 4) / 2 = 14px */
|
|
5766
|
+
padding-top: 14px;
|
|
5767
|
+
padding-bottom: 14px;
|
|
5768
|
+
}
|
|
5769
|
+
|
|
5770
|
+
/* ─── Steps layer (on top) ──────────────────────────────── */
|
|
5771
|
+
.muka-progress-tracker__steps {
|
|
5772
|
+
position: absolute;
|
|
5773
|
+
inset: 0;
|
|
5774
|
+
display: flex;
|
|
5775
|
+
align-items: flex-start;
|
|
5776
|
+
justify-content: space-between;
|
|
5777
|
+
z-index: 2;
|
|
5778
|
+
}
|
|
5779
|
+
|
|
5780
|
+
/* ─── Individual step ───────────────────────────────────── */
|
|
5781
|
+
.muka-progress-tracker__step {
|
|
5782
|
+
display: flex;
|
|
5783
|
+
flex-direction: column;
|
|
5784
|
+
align-items: center;
|
|
5785
|
+
gap: 7px;
|
|
5786
|
+
position: relative;
|
|
5787
|
+
}
|
|
5788
|
+
|
|
5789
|
+
/* ─── Step indicator (circle) ───────────────────────────── */
|
|
5790
|
+
.muka-progress-tracker__indicator {
|
|
5791
|
+
width: 32px;
|
|
5792
|
+
height: 32px;
|
|
5793
|
+
border-radius: var(--border-radius-full);
|
|
5794
|
+
display: flex;
|
|
5795
|
+
align-items: center;
|
|
5796
|
+
justify-content: center;
|
|
5797
|
+
flex-shrink: 0;
|
|
5798
|
+
position: relative;
|
|
5799
|
+
}
|
|
5800
|
+
|
|
5801
|
+
/* Past: dark accent contrast circle with white checkmark */
|
|
5802
|
+
.muka-progress-tracker__indicator--past {
|
|
5803
|
+
background-color: var(--alias-color-accent-contrast);
|
|
5804
|
+
color: var(--color-text-default-inverse);
|
|
5805
|
+
cursor: pointer;
|
|
5806
|
+
}
|
|
5807
|
+
|
|
5808
|
+
.muka-progress-tracker__indicator--past:hover {
|
|
5809
|
+
background-color: var(--alias-color-accent-pressed);
|
|
5810
|
+
}
|
|
5811
|
+
|
|
5812
|
+
.muka-progress-tracker__indicator--past:focus-visible {
|
|
5813
|
+
outline: 2px solid var(--color-border-focus);
|
|
5814
|
+
outline-offset: 2px;
|
|
5815
|
+
}
|
|
5816
|
+
|
|
5817
|
+
/* Current: accent default circle with white number */
|
|
5818
|
+
.muka-progress-tracker__indicator--current {
|
|
5819
|
+
background-color: var(--alias-color-accent-default);
|
|
5820
|
+
color: var(--color-text-default-inverse);
|
|
5821
|
+
}
|
|
5822
|
+
|
|
5823
|
+
/* Upcoming: sunken/gray circle with dark number */
|
|
5824
|
+
.muka-progress-tracker__indicator--upcoming {
|
|
5825
|
+
background-color: var(--color-surface-sunken);
|
|
5826
|
+
color: var(--color-text-default-default);
|
|
5606
5827
|
}
|
|
5607
5828
|
|
|
5608
5829
|
/* ─── Step number text ──────────────────────────────────── */
|
|
@@ -5720,11 +5941,13 @@ body {
|
|
|
5720
5941
|
gap: var(--spacing-8);
|
|
5721
5942
|
}
|
|
5722
5943
|
|
|
5723
|
-
/* Past
|
|
5944
|
+
/* Past steps group header + slot. The header↔content gap lives inside the
|
|
5945
|
+
collapsing slot (as padding-top) so it collapses with the content, so the
|
|
5946
|
+
body gap itself is 0. */
|
|
5724
5947
|
.muka-progress-accordeon__body {
|
|
5725
5948
|
display: flex;
|
|
5726
5949
|
flex-direction: column;
|
|
5727
|
-
gap:
|
|
5950
|
+
gap: 0;
|
|
5728
5951
|
width: 100%;
|
|
5729
5952
|
}
|
|
5730
5953
|
|
|
@@ -5857,6 +6080,34 @@ body {
|
|
|
5857
6080
|
width: 100%;
|
|
5858
6081
|
}
|
|
5859
6082
|
|
|
6083
|
+
/* ─── Collapse/expand animation (past steps) ─────────────────
|
|
6084
|
+
The grid-template-rows 1fr → 0fr technique animates the content to/from its
|
|
6085
|
+
intrinsic (auto) height with no magic max-height. Under prefers-reduced-motion
|
|
6086
|
+
--motion-duration-view resolves to 0ms, so the toggle stays instant. */
|
|
6087
|
+
.muka-progress-accordeon__slot-wrapper {
|
|
6088
|
+
display: grid;
|
|
6089
|
+
grid-template-rows: 1fr;
|
|
6090
|
+
transition: grid-template-rows var(--motion-duration-view) var(--motion-easing-enter);
|
|
6091
|
+
}
|
|
6092
|
+
|
|
6093
|
+
.muka-progress-accordeon__slot-wrapper--collapsed {
|
|
6094
|
+
grid-template-rows: 0fr;
|
|
6095
|
+
}
|
|
6096
|
+
|
|
6097
|
+
/* The direct grid child clips and must have NO padding/border of its own —
|
|
6098
|
+
min-height:0 lets it shrink, and with no padding the 0fr track reaches a true
|
|
6099
|
+
0 height (padding on the item would leave a residual gap when collapsed). */
|
|
6100
|
+
.muka-progress-accordeon__slot-clip {
|
|
6101
|
+
overflow: hidden;
|
|
6102
|
+
min-height: 0;
|
|
6103
|
+
}
|
|
6104
|
+
|
|
6105
|
+
/* The header↔content spacing lives on the inner slot (inside the clip region)
|
|
6106
|
+
so it collapses together with the content. */
|
|
6107
|
+
.muka-progress-accordeon__slot-wrapper .muka-progress-accordeon__slot {
|
|
6108
|
+
padding-top: var(--spacing-4);
|
|
6109
|
+
}
|
|
6110
|
+
|
|
5860
6111
|
/* ─── Action buttons (current state) ─────────────────────── */
|
|
5861
6112
|
.muka-progress-accordeon__actions {
|
|
5862
6113
|
display: flex;
|
|
@@ -6373,52 +6624,180 @@ body {
|
|
|
6373
6624
|
}
|
|
6374
6625
|
|
|
6375
6626
|
|
|
6376
|
-
/*
|
|
6377
|
-
/*
|
|
6627
|
+
/* PhotoUploader */
|
|
6628
|
+
/* PhotoUploader Component Styles - Using Muka Design Tokens */
|
|
6378
6629
|
|
|
6379
|
-
.muka-
|
|
6630
|
+
.muka-photo-uploader {
|
|
6380
6631
|
display: flex;
|
|
6381
|
-
|
|
6382
|
-
|
|
6632
|
+
flex-direction: column;
|
|
6633
|
+
align-items: flex-start;
|
|
6634
|
+
gap: var(--spacing-4);
|
|
6635
|
+
width: 100%;
|
|
6636
|
+
}
|
|
6637
|
+
|
|
6638
|
+
/* Visually-hidden native file input */
|
|
6639
|
+
.muka-photo-uploader__input {
|
|
6640
|
+
position: absolute;
|
|
6641
|
+
width: 1px;
|
|
6642
|
+
height: 1px;
|
|
6643
|
+
padding: 0;
|
|
6644
|
+
margin: -1px;
|
|
6645
|
+
overflow: hidden;
|
|
6646
|
+
clip: rect(0, 0, 0, 0);
|
|
6647
|
+
white-space: nowrap;
|
|
6648
|
+
border: 0;
|
|
6649
|
+
}
|
|
6650
|
+
|
|
6651
|
+
/* ─── Error feedback alert ────────────────────────────── */
|
|
6652
|
+
.muka-photo-uploader__alert {
|
|
6653
|
+
width: 100%;
|
|
6654
|
+
}
|
|
6655
|
+
|
|
6656
|
+
/* ─── Thumbnail grid ──────────────────────────────────── */
|
|
6657
|
+
.muka-photo-uploader__grid {
|
|
6658
|
+
display: flex;
|
|
6659
|
+
flex-wrap: wrap;
|
|
6660
|
+
gap: var(--spacing-3);
|
|
6661
|
+
width: 100%;
|
|
6662
|
+
margin: 0;
|
|
6663
|
+
padding: 0;
|
|
6383
6664
|
list-style: none;
|
|
6665
|
+
}
|
|
6666
|
+
|
|
6667
|
+
.muka-photo-uploader__grid-item {
|
|
6384
6668
|
margin: 0;
|
|
6385
6669
|
padding: 0;
|
|
6386
6670
|
}
|
|
6387
6671
|
|
|
6388
|
-
/*
|
|
6389
|
-
.muka-
|
|
6390
|
-
display:
|
|
6672
|
+
/* ─── Drop zone card ──────────────────────────────────── */
|
|
6673
|
+
.muka-photo-uploader__dropzone {
|
|
6674
|
+
display: flex;
|
|
6675
|
+
flex-direction: column;
|
|
6391
6676
|
align-items: center;
|
|
6392
6677
|
justify-content: center;
|
|
6393
|
-
|
|
6394
|
-
|
|
6395
|
-
|
|
6396
|
-
color: var(--color-
|
|
6678
|
+
gap: var(--spacing-4);
|
|
6679
|
+
width: 100%;
|
|
6680
|
+
padding: var(--card-padding-lg);
|
|
6681
|
+
background-color: var(--card-color-default-background);
|
|
6682
|
+
border: var(--border-width-regular, 1px) solid var(--card-color-default-border);
|
|
6683
|
+
border-radius: var(--border-radius-lg);
|
|
6397
6684
|
cursor: pointer;
|
|
6398
|
-
|
|
6399
|
-
transition: background-color
|
|
6400
|
-
|
|
6685
|
+
text-align: center;
|
|
6686
|
+
transition: background-color var(--motion-duration-micro) var(--motion-easing-enter),
|
|
6687
|
+
border-color var(--motion-duration-micro) var(--motion-easing-enter);
|
|
6401
6688
|
}
|
|
6402
6689
|
|
|
6403
|
-
.muka-
|
|
6690
|
+
.muka-photo-uploader__dropzone:hover,
|
|
6691
|
+
.muka-photo-uploader__dropzone--active {
|
|
6692
|
+
border-color: var(--color-border-focus);
|
|
6404
6693
|
background-color: var(--color-surface-level1);
|
|
6405
6694
|
}
|
|
6406
6695
|
|
|
6407
|
-
|
|
6408
|
-
|
|
6409
|
-
|
|
6410
|
-
color: var(--button-color-primary-default-foreground);
|
|
6411
|
-
border-color: var(--button-color-primary-default-background);
|
|
6412
|
-
font-weight: 600;
|
|
6696
|
+
.muka-photo-uploader__dropzone:focus-visible {
|
|
6697
|
+
outline: 2px solid var(--color-border-focus);
|
|
6698
|
+
outline-offset: 2px;
|
|
6413
6699
|
}
|
|
6414
6700
|
|
|
6415
|
-
|
|
6416
|
-
|
|
6701
|
+
.muka-photo-uploader__dropzone-icon {
|
|
6702
|
+
display: flex;
|
|
6703
|
+
align-items: center;
|
|
6704
|
+
justify-content: center;
|
|
6705
|
+
color: var(--color-icon-subtle-default);
|
|
6706
|
+
}
|
|
6707
|
+
|
|
6708
|
+
.muka-photo-uploader__dropzone-text {
|
|
6709
|
+
font-family: var(--text-body-md-regular-fontFamily);
|
|
6710
|
+
font-size: var(--text-body-md-regular-fontSize);
|
|
6711
|
+
font-weight: var(--text-body-md-regular-fontWeight);
|
|
6712
|
+
line-height: var(--text-body-md-regular-lineHeight);
|
|
6417
6713
|
color: var(--color-text-subtle-default);
|
|
6418
6714
|
}
|
|
6419
6715
|
|
|
6420
|
-
|
|
6421
|
-
|
|
6716
|
+
/* ─── Disabled ────────────────────────────────────────── */
|
|
6717
|
+
.muka-photo-uploader--disabled .muka-photo-uploader__dropzone {
|
|
6718
|
+
cursor: not-allowed;
|
|
6719
|
+
opacity: 0.6;
|
|
6720
|
+
}
|
|
6721
|
+
|
|
6722
|
+
.muka-photo-uploader--disabled .muka-photo-uploader__dropzone:hover {
|
|
6723
|
+
border-color: var(--card-color-default-border);
|
|
6724
|
+
background-color: var(--card-color-default-background);
|
|
6725
|
+
}
|
|
6726
|
+
|
|
6727
|
+
/* ─── Enlarged photo dialog ───────────────────────────── */
|
|
6728
|
+
.muka-photo-uploader__preview {
|
|
6729
|
+
display: flex;
|
|
6730
|
+
align-items: center;
|
|
6731
|
+
justify-content: center;
|
|
6732
|
+
width: 100%;
|
|
6733
|
+
height: 100%;
|
|
6734
|
+
}
|
|
6735
|
+
|
|
6736
|
+
/* Fits the dialog while preserving the photo's original aspect ratio. */
|
|
6737
|
+
.muka-photo-uploader__preview-image {
|
|
6738
|
+
display: block;
|
|
6739
|
+
max-width: 100%;
|
|
6740
|
+
max-height: 100%;
|
|
6741
|
+
width: auto;
|
|
6742
|
+
height: auto;
|
|
6743
|
+
object-fit: contain;
|
|
6744
|
+
border-radius: var(--border-radius-lg);
|
|
6745
|
+
}
|
|
6746
|
+
|
|
6747
|
+
/* ─── Reduced motion ──────────────────────────────────── */
|
|
6748
|
+
@media (prefers-reduced-motion: reduce) {
|
|
6749
|
+
.muka-photo-uploader__dropzone {
|
|
6750
|
+
transition: none;
|
|
6751
|
+
}
|
|
6752
|
+
}
|
|
6753
|
+
|
|
6754
|
+
|
|
6755
|
+
/* Pagination */
|
|
6756
|
+
/* Pagination Component Styles */
|
|
6757
|
+
|
|
6758
|
+
.muka-pagination__list {
|
|
6759
|
+
display: flex;
|
|
6760
|
+
align-items: center;
|
|
6761
|
+
gap: var(--spacing-1);
|
|
6762
|
+
list-style: none;
|
|
6763
|
+
margin: 0;
|
|
6764
|
+
padding: 0;
|
|
6765
|
+
}
|
|
6766
|
+
|
|
6767
|
+
/* Base button */
|
|
6768
|
+
.muka-pagination__button {
|
|
6769
|
+
display: inline-flex;
|
|
6770
|
+
align-items: center;
|
|
6771
|
+
justify-content: center;
|
|
6772
|
+
border: var(--border-width-regular) solid transparent;
|
|
6773
|
+
border-radius: var(--radius-md);
|
|
6774
|
+
background: transparent;
|
|
6775
|
+
color: var(--color-text-default-default);
|
|
6776
|
+
cursor: pointer;
|
|
6777
|
+
font: inherit;
|
|
6778
|
+
transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
|
|
6779
|
+
padding: 0;
|
|
6780
|
+
}
|
|
6781
|
+
|
|
6782
|
+
.muka-pagination__button:hover:not(:disabled):not(.muka-pagination__button--active) {
|
|
6783
|
+
background-color: var(--color-surface-level1);
|
|
6784
|
+
}
|
|
6785
|
+
|
|
6786
|
+
/* Active page */
|
|
6787
|
+
.muka-pagination__button--active {
|
|
6788
|
+
background-color: var(--button-color-primary-default-background);
|
|
6789
|
+
color: var(--button-color-primary-default-foreground);
|
|
6790
|
+
border-color: var(--button-color-primary-default-background);
|
|
6791
|
+
font-weight: 600;
|
|
6792
|
+
}
|
|
6793
|
+
|
|
6794
|
+
/* Nav buttons (prev/next/first/last) */
|
|
6795
|
+
.muka-pagination__button--nav {
|
|
6796
|
+
color: var(--color-text-subtle-default);
|
|
6797
|
+
}
|
|
6798
|
+
|
|
6799
|
+
.muka-pagination__button:disabled {
|
|
6800
|
+
opacity: 0.4;
|
|
6422
6801
|
cursor: not-allowed;
|
|
6423
6802
|
}
|
|
6424
6803
|
|
|
@@ -9337,6 +9716,35 @@ li.muka-listitem {
|
|
|
9337
9716
|
transition: stroke-dasharray 0.3s ease;
|
|
9338
9717
|
}
|
|
9339
9718
|
|
|
9719
|
+
/* ─── Indeterminate (spinner) ─────────────────────────── */
|
|
9720
|
+
/* A masked ring filled with an angular (conic) gradient that rotates. The mask
|
|
9721
|
+
band matches the donut geometry (r=40, strokeWidth=16 → 64%–96% of radius) so
|
|
9722
|
+
it swaps seamlessly with the value-based progress donut. */
|
|
9723
|
+
.muka-data-pie-chart__spinner-track,
|
|
9724
|
+
.muka-data-pie-chart__spinner {
|
|
9725
|
+
position: absolute;
|
|
9726
|
+
inset: 0;
|
|
9727
|
+
border-radius: 50%;
|
|
9728
|
+
-webkit-mask: radial-gradient(farthest-side, transparent 63%, #000 65%, #000 95%, transparent 97%);
|
|
9729
|
+
mask: radial-gradient(farthest-side, transparent 63%, #000 65%, #000 95%, transparent 97%);
|
|
9730
|
+
}
|
|
9731
|
+
|
|
9732
|
+
.muka-data-pie-chart__spinner {
|
|
9733
|
+
animation: muka-data-pie-chart-spin 0.9s linear infinite;
|
|
9734
|
+
}
|
|
9735
|
+
|
|
9736
|
+
@keyframes muka-data-pie-chart-spin {
|
|
9737
|
+
to {
|
|
9738
|
+
transform: rotate(360deg);
|
|
9739
|
+
}
|
|
9740
|
+
}
|
|
9741
|
+
|
|
9742
|
+
@media (prefers-reduced-motion: reduce) {
|
|
9743
|
+
.muka-data-pie-chart__spinner {
|
|
9744
|
+
animation-duration: 2.5s;
|
|
9745
|
+
}
|
|
9746
|
+
}
|
|
9747
|
+
|
|
9340
9748
|
.muka-data-pie-chart__value {
|
|
9341
9749
|
position: absolute;
|
|
9342
9750
|
inset: 0;
|
|
@@ -11910,6 +12318,13 @@ li.muka-listitem {
|
|
|
11910
12318
|
height: 100%;
|
|
11911
12319
|
}
|
|
11912
12320
|
|
|
12321
|
+
/* The leading icon and the dismiss (×) icon inherit the variant accent set on
|
|
12322
|
+
their container, overriding the Icon component's default color. */
|
|
12323
|
+
.muka-alert__icon .muka-icon,
|
|
12324
|
+
.muka-alert__dismiss .muka-icon {
|
|
12325
|
+
color: inherit;
|
|
12326
|
+
}
|
|
12327
|
+
|
|
11913
12328
|
/* Content */
|
|
11914
12329
|
.muka-alert__content {
|
|
11915
12330
|
flex: 1;
|
|
@@ -12416,193 +12831,196 @@ li.muka-listitem {
|
|
|
12416
12831
|
}
|
|
12417
12832
|
|
|
12418
12833
|
|
|
12419
|
-
/*
|
|
12420
|
-
/*
|
|
12834
|
+
/* Select */
|
|
12835
|
+
/* Select Component Styles - Aligned with Input for consistency */
|
|
12421
12836
|
|
|
12422
|
-
|
|
12423
|
-
.muka-radio {
|
|
12837
|
+
.muka-select {
|
|
12424
12838
|
display: inline-flex;
|
|
12425
|
-
|
|
12426
|
-
gap: var(--spacing-
|
|
12427
|
-
cursor: pointer;
|
|
12428
|
-
user-select: none;
|
|
12839
|
+
flex-direction: column;
|
|
12840
|
+
gap: var(--spacing-2);
|
|
12429
12841
|
}
|
|
12430
12842
|
|
|
12431
|
-
.muka-
|
|
12432
|
-
|
|
12433
|
-
opacity: 0.6;
|
|
12843
|
+
.muka-select--full-width {
|
|
12844
|
+
width: 100%;
|
|
12434
12845
|
}
|
|
12435
12846
|
|
|
12436
|
-
/*
|
|
12437
|
-
.muka-
|
|
12438
|
-
|
|
12439
|
-
|
|
12440
|
-
align-items: center;
|
|
12441
|
-
justify-content: center;
|
|
12442
|
-
flex-shrink: 0;
|
|
12847
|
+
/* Label */
|
|
12848
|
+
.muka-select__label {
|
|
12849
|
+
color: var(--color-text-default-default);
|
|
12850
|
+
cursor: pointer;
|
|
12443
12851
|
}
|
|
12444
12852
|
|
|
12445
|
-
|
|
12446
|
-
|
|
12447
|
-
|
|
12448
|
-
|
|
12449
|
-
height:
|
|
12450
|
-
padding: 0;
|
|
12451
|
-
margin: -1px;
|
|
12452
|
-
overflow: hidden;
|
|
12453
|
-
clip: rect(0, 0, 0, 0);
|
|
12454
|
-
white-space: nowrap;
|
|
12455
|
-
border: 0;
|
|
12853
|
+
.muka-select__label--sm {
|
|
12854
|
+
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
12855
|
+
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
12856
|
+
font-size: var(--text-label-sm-semibold-fontSize);
|
|
12857
|
+
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
12456
12858
|
}
|
|
12457
12859
|
|
|
12458
|
-
|
|
12459
|
-
|
|
12460
|
-
|
|
12461
|
-
|
|
12462
|
-
|
|
12463
|
-
width: var(--radio-size-default);
|
|
12464
|
-
height: var(--radio-size-default);
|
|
12465
|
-
border-radius: var(--border-radius-full);
|
|
12466
|
-
background-color: var(--radio-color-default-background);
|
|
12467
|
-
border: var(--border-width-regular) solid var(--radio-color-default-border);
|
|
12468
|
-
transition: all 0.15s ease;
|
|
12469
|
-
box-shadow: inset 0 1px 2px 0 rgba(26, 26, 26, 0.15);
|
|
12860
|
+
.muka-select__label--md {
|
|
12861
|
+
font-family: var(--text-label-md-semibold-fontFamily);
|
|
12862
|
+
font-weight: var(--text-label-md-semibold-fontWeight);
|
|
12863
|
+
font-size: var(--text-label-md-semibold-fontSize);
|
|
12864
|
+
line-height: var(--text-label-md-semibold-lineHeight);
|
|
12470
12865
|
}
|
|
12471
12866
|
|
|
12472
|
-
|
|
12473
|
-
|
|
12474
|
-
|
|
12475
|
-
|
|
12867
|
+
.muka-select__label--lg {
|
|
12868
|
+
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
12869
|
+
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
12870
|
+
font-size: var(--text-label-lg-semibold-fontSize);
|
|
12871
|
+
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
12476
12872
|
}
|
|
12477
12873
|
|
|
12478
|
-
.muka-
|
|
12479
|
-
|
|
12480
|
-
height: var(--radio-size-lg);
|
|
12874
|
+
.muka-select__required {
|
|
12875
|
+
color: var(--color-state-error-foreground);
|
|
12481
12876
|
}
|
|
12482
12877
|
|
|
12483
|
-
|
|
12484
|
-
.muka-
|
|
12485
|
-
|
|
12486
|
-
|
|
12487
|
-
border-radius: var(--border-radius-full);
|
|
12488
|
-
background-color: var(--radio-color-default-dot);
|
|
12489
|
-
transform: scale(0);
|
|
12490
|
-
transition: transform 0.15s ease;
|
|
12878
|
+
.muka-select__label--sm + .muka-select__field--disabled,
|
|
12879
|
+
.muka-select__label--md + .muka-select__field--disabled,
|
|
12880
|
+
.muka-select__label--lg + .muka-select__field--disabled {
|
|
12881
|
+
cursor: not-allowed;
|
|
12491
12882
|
}
|
|
12492
12883
|
|
|
12493
|
-
|
|
12494
|
-
|
|
12495
|
-
|
|
12884
|
+
/* Field container — same as Input: 1px border, radius, padding, inset shadow */
|
|
12885
|
+
.muka-select__field {
|
|
12886
|
+
display: flex;
|
|
12887
|
+
align-items: center;
|
|
12888
|
+
gap: var(--spacing-2);
|
|
12889
|
+
position: relative;
|
|
12890
|
+
background-color: var(--input-field-color-default-background);
|
|
12891
|
+
border: var(--border-width-regular) solid var(--input-field-color-default-border);
|
|
12892
|
+
border-radius: var(--input-field-radius-md);
|
|
12893
|
+
padding: var(--input-field-padding-y) var(--input-field-padding-x);
|
|
12894
|
+
transition: border-color 0.2s ease, background-color 0.2s ease;
|
|
12895
|
+
cursor: pointer;
|
|
12896
|
+
box-sizing: border-box;
|
|
12496
12897
|
}
|
|
12497
12898
|
|
|
12498
|
-
|
|
12499
|
-
|
|
12500
|
-
|
|
12899
|
+
/* Inset shadow — same as Input (single subtle line) */
|
|
12900
|
+
.muka-select__field::after {
|
|
12901
|
+
content: '';
|
|
12902
|
+
position: absolute;
|
|
12903
|
+
inset: 0;
|
|
12904
|
+
border-radius: inherit;
|
|
12905
|
+
box-shadow: inset 0 1px 2px 0 rgba(26, 26, 26, 0.08);
|
|
12906
|
+
pointer-events: none;
|
|
12501
12907
|
}
|
|
12502
12908
|
|
|
12503
|
-
/*
|
|
12504
|
-
|
|
12505
|
-
|
|
12506
|
-
|
|
12507
|
-
outline: 2px solid var(--color-border-focus);
|
|
12508
|
-
outline-offset: 2px;
|
|
12909
|
+
/* Size variants — same radius/height as Input */
|
|
12910
|
+
.muka-select__field--sm {
|
|
12911
|
+
min-height: var(--input-field-height-sm);
|
|
12912
|
+
border-radius: var(--input-field-radius-sm);
|
|
12509
12913
|
}
|
|
12510
12914
|
|
|
12511
|
-
|
|
12512
|
-
|
|
12513
|
-
|
|
12514
|
-
border-width: var(--border-width-bold);
|
|
12515
|
-
border-color: var(--radio-color-checked-border);
|
|
12516
|
-
box-shadow: none;
|
|
12915
|
+
.muka-select__field--md {
|
|
12916
|
+
min-height: var(--input-field-height-default);
|
|
12917
|
+
border-radius: var(--input-field-radius-md);
|
|
12517
12918
|
}
|
|
12518
12919
|
|
|
12519
|
-
.muka-
|
|
12520
|
-
|
|
12521
|
-
|
|
12920
|
+
.muka-select__field--lg {
|
|
12921
|
+
min-height: var(--input-field-height-lg);
|
|
12922
|
+
border-radius: var(--input-field-radius-lg);
|
|
12522
12923
|
}
|
|
12523
12924
|
|
|
12524
|
-
/*
|
|
12525
|
-
.muka-radio--disabled .muka-radio__indicator {
|
|
12526
|
-
background-color: var(--radio-color-disabled-background);
|
|
12527
|
-
border-color: var(--radio-color-disabled-border);
|
|
12528
|
-
box-shadow: none;
|
|
12529
|
-
}
|
|
12925
|
+
/* Hover — no visual change (same as Input) */
|
|
12530
12926
|
|
|
12531
|
-
|
|
12532
|
-
|
|
12927
|
+
/* Focus (active) — same as Input: 2px border, padding compensation */
|
|
12928
|
+
.muka-select__field--focused:not(.muka-select__field--disabled) {
|
|
12929
|
+
border-width: var(--border-width-bold);
|
|
12930
|
+
border-color: var(--input-field-color-focus-border);
|
|
12931
|
+
background-color: var(--input-field-color-focus-background);
|
|
12932
|
+
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
12533
12933
|
}
|
|
12534
12934
|
|
|
12535
|
-
/*
|
|
12536
|
-
.muka-
|
|
12537
|
-
|
|
12538
|
-
|
|
12539
|
-
|
|
12540
|
-
|
|
12541
|
-
color: var(--color-text-default-default);
|
|
12935
|
+
/* Error — same as Input: 2px border, padding compensation */
|
|
12936
|
+
.muka-select__field--error:not(.muka-select__field--disabled) {
|
|
12937
|
+
border-width: var(--border-width-bold);
|
|
12938
|
+
border-color: var(--input-field-color-error-border);
|
|
12939
|
+
background-color: var(--input-field-color-error-background);
|
|
12940
|
+
padding: calc(var(--input-field-padding-y) - 1px) calc(var(--input-field-padding-x) - 1px);
|
|
12542
12941
|
}
|
|
12543
12942
|
|
|
12544
|
-
|
|
12545
|
-
|
|
12546
|
-
|
|
12547
|
-
|
|
12548
|
-
|
|
12943
|
+
/* Disabled — same as Input */
|
|
12944
|
+
.muka-select__field--disabled {
|
|
12945
|
+
background-color: var(--input-field-color-disabled-background);
|
|
12946
|
+
border-color: var(--input-field-color-disabled-border);
|
|
12947
|
+
cursor: not-allowed;
|
|
12549
12948
|
}
|
|
12550
12949
|
|
|
12551
|
-
.muka-
|
|
12552
|
-
|
|
12553
|
-
font-weight: var(--text-label-xl-regular-fontWeight);
|
|
12554
|
-
font-size: var(--text-label-xl-regular-fontSize);
|
|
12555
|
-
line-height: var(--text-label-xl-regular-lineHeight);
|
|
12950
|
+
.muka-select__field--disabled::after {
|
|
12951
|
+
display: none;
|
|
12556
12952
|
}
|
|
12557
12953
|
|
|
12558
|
-
|
|
12559
|
-
|
|
12954
|
+
/* Native select — padding on field so native has 0 + right space for chevron */
|
|
12955
|
+
.muka-select__native {
|
|
12956
|
+
appearance: none;
|
|
12957
|
+
-webkit-appearance: none;
|
|
12958
|
+
flex: 1;
|
|
12959
|
+
border: none;
|
|
12960
|
+
outline: none;
|
|
12961
|
+
background: transparent;
|
|
12962
|
+
color: var(--input-field-color-default-foreground);
|
|
12963
|
+
font-family: var(--text-input-md-fontFamily);
|
|
12964
|
+
font-weight: var(--text-input-md-fontWeight);
|
|
12965
|
+
font-size: var(--text-input-md-fontSize);
|
|
12966
|
+
line-height: var(--text-input-md-lineHeight);
|
|
12967
|
+
padding: 0;
|
|
12968
|
+
padding-right: calc(var(--input-field-padding-x) + 1.5rem);
|
|
12969
|
+
cursor: pointer;
|
|
12970
|
+
min-width: 0;
|
|
12971
|
+
width: 100%;
|
|
12560
12972
|
}
|
|
12561
12973
|
|
|
12974
|
+
.muka-select__field--sm .muka-select__native {
|
|
12975
|
+
font-family: var(--text-input-sm-fontFamily);
|
|
12976
|
+
font-weight: var(--text-input-sm-fontWeight);
|
|
12977
|
+
font-size: var(--text-input-sm-fontSize);
|
|
12978
|
+
line-height: var(--text-input-sm-lineHeight);
|
|
12979
|
+
}
|
|
12562
12980
|
|
|
12563
|
-
|
|
12564
|
-
|
|
12981
|
+
.muka-select__field--lg .muka-select__native {
|
|
12982
|
+
font-family: var(--text-input-lg-fontFamily);
|
|
12983
|
+
font-weight: var(--text-input-lg-fontWeight);
|
|
12984
|
+
font-size: var(--text-input-lg-fontSize);
|
|
12985
|
+
line-height: var(--text-input-lg-lineHeight);
|
|
12986
|
+
}
|
|
12565
12987
|
|
|
12566
|
-
.muka-
|
|
12567
|
-
|
|
12568
|
-
|
|
12569
|
-
flex-direction: column;
|
|
12570
|
-
width: 100%;
|
|
12571
|
-
height: 100%;
|
|
12572
|
-
overflow: hidden;
|
|
12988
|
+
.muka-select__field--disabled .muka-select__native {
|
|
12989
|
+
color: var(--input-field-color-disabled-foreground);
|
|
12990
|
+
cursor: not-allowed;
|
|
12573
12991
|
}
|
|
12574
12992
|
|
|
12575
|
-
|
|
12993
|
+
/* Chevron — aligned with field padding */
|
|
12994
|
+
.muka-select__chevron {
|
|
12995
|
+
display: inline-flex;
|
|
12996
|
+
align-items: center;
|
|
12576
12997
|
position: absolute;
|
|
12577
|
-
|
|
12578
|
-
left: 0;
|
|
12579
|
-
right: 0;
|
|
12580
|
-
display: flex;
|
|
12581
|
-
align-items: flex-end;
|
|
12582
|
-
justify-content: center;
|
|
12583
|
-
padding-bottom: var(--spacing-2);
|
|
12584
|
-
color: var(--color-text-subtle-default);
|
|
12585
|
-
overflow: hidden;
|
|
12998
|
+
right: var(--input-field-padding-x);
|
|
12586
12999
|
pointer-events: none;
|
|
12587
|
-
|
|
13000
|
+
color: var(--color-text-subtle-default);
|
|
12588
13001
|
}
|
|
12589
13002
|
|
|
12590
|
-
.muka-
|
|
12591
|
-
|
|
12592
|
-
align-items: center;
|
|
12593
|
-
justify-content: center;
|
|
12594
|
-
transition: transform 0.16s ease;
|
|
13003
|
+
.muka-select__field--disabled .muka-select__chevron {
|
|
13004
|
+
color: var(--input-field-color-disabled-foreground);
|
|
12595
13005
|
}
|
|
12596
13006
|
|
|
12597
|
-
|
|
12598
|
-
|
|
12599
|
-
|
|
12600
|
-
|
|
12601
|
-
|
|
12602
|
-
|
|
12603
|
-
-
|
|
12604
|
-
|
|
12605
|
-
|
|
12606
|
-
|
|
13007
|
+
/* Helper text — same as Input */
|
|
13008
|
+
.muka-select__helper {
|
|
13009
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
13010
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
13011
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
13012
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
13013
|
+
color: var(--color-text-subtle-default);
|
|
13014
|
+
margin: 0;
|
|
13015
|
+
}
|
|
13016
|
+
|
|
13017
|
+
/* Error message — same as Input */
|
|
13018
|
+
.muka-select__error {
|
|
13019
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
13020
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
13021
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
13022
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
13023
|
+
color: var(--color-state-error-foreground);
|
|
13024
|
+
margin: 0;
|
|
12607
13025
|
}
|
|
12608
13026
|
|