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