@revikornmann/muka-ui 0.29.0 → 0.30.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 +8 -0
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/ChatComposer/ChatComposer.css +121 -1
- package/dist/cjs/components/ChatComposer/ChatComposer.js +148 -21
- package/dist/cjs/components/ChatComposer/ChatComposer.js.map +1 -1
- package/dist/cjs/components/ChatComposer/index.js.map +1 -1
- package/dist/cjs/components/PhotoUploader/PhotoUploader.js.map +1 -1
- package/dist/cjs/components/ProgressTracker/ProgressTracker.css +23 -5
- package/dist/cjs/components/ProgressTracker/ProgressTracker.js +8 -6
- package/dist/cjs/components/ProgressTracker/ProgressTracker.js.map +1 -1
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/esm/components/Alert/Alert.css +8 -0
- package/dist/esm/components/Alert/Alert.js.map +1 -1
- package/dist/esm/components/ChatComposer/ChatComposer.css +121 -1
- package/dist/esm/components/ChatComposer/ChatComposer.js +150 -23
- package/dist/esm/components/ChatComposer/ChatComposer.js.map +1 -1
- package/dist/esm/components/ChatComposer/index.js +1 -1
- package/dist/esm/components/ChatComposer/index.js.map +1 -1
- package/dist/esm/components/PhotoUploader/PhotoUploader.js.map +1 -1
- package/dist/esm/components/ProgressTracker/ProgressTracker.css +23 -5
- package/dist/esm/components/ProgressTracker/ProgressTracker.js +8 -6
- package/dist/esm/components/ProgressTracker/ProgressTracker.js.map +1 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/index.js.map +1 -1
- package/dist/styles/components/Alert.css +8 -0
- package/dist/styles/components/ChatComposer.css +121 -1
- package/dist/styles/components/ProgressTracker.css +23 -5
- package/dist/styles/index.css +2302 -2156
- package/dist/styles/muka-dark.css +2302 -2156
- package/dist/styles/muka-light.css +2302 -2156
- package/dist/styles/wireframe-dark.css +2302 -2156
- package/dist/styles/wireframe-light.css +2302 -2156
- package/dist/types/components/Alert/Alert.d.ts +1 -1
- package/dist/types/components/Alert/Alert.d.ts.map +1 -1
- package/dist/types/components/ChatComposer/ChatComposer.d.ts +83 -12
- package/dist/types/components/ChatComposer/ChatComposer.d.ts.map +1 -1
- package/dist/types/components/ChatComposer/index.d.ts +1 -1
- package/dist/types/components/ChatComposer/index.d.ts.map +1 -1
- package/dist/types/components/PhotoUploader/PhotoUploader.d.ts.map +1 -1
- package/dist/types/components/ProgressTracker/ProgressTracker.d.ts +10 -4
- package/dist/types/components/ProgressTracker/ProgressTracker.d.ts.map +1 -1
- package/dist/types/components/index.d.ts +1 -1
- package/dist/types/components/index.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/styles/index.css
CHANGED
|
@@ -5264,6 +5264,81 @@ body {
|
|
|
5264
5264
|
}
|
|
5265
5265
|
|
|
5266
5266
|
|
|
5267
|
+
/* Skeleton */
|
|
5268
|
+
/* Skeleton Component Styles */
|
|
5269
|
+
|
|
5270
|
+
.muka-skeleton {
|
|
5271
|
+
background-color: var(--color-surface-level1);
|
|
5272
|
+
display: block;
|
|
5273
|
+
}
|
|
5274
|
+
|
|
5275
|
+
/* Variants */
|
|
5276
|
+
.muka-skeleton--text {
|
|
5277
|
+
height: 1em;
|
|
5278
|
+
border-radius: var(--radius-md);
|
|
5279
|
+
width: 100%;
|
|
5280
|
+
}
|
|
5281
|
+
|
|
5282
|
+
.muka-skeleton--circular {
|
|
5283
|
+
width: 2.5rem;
|
|
5284
|
+
height: 2.5rem;
|
|
5285
|
+
border-radius: var(--radius-full);
|
|
5286
|
+
}
|
|
5287
|
+
|
|
5288
|
+
.muka-skeleton--rectangular {
|
|
5289
|
+
height: 7.5rem;
|
|
5290
|
+
border-radius: var(--radius-md);
|
|
5291
|
+
width: 100%;
|
|
5292
|
+
}
|
|
5293
|
+
|
|
5294
|
+
/* Last line in multi-line text is shorter */
|
|
5295
|
+
.muka-skeleton--last-line {
|
|
5296
|
+
width: 80%;
|
|
5297
|
+
}
|
|
5298
|
+
|
|
5299
|
+
/* Lines container */
|
|
5300
|
+
.muka-skeleton__lines {
|
|
5301
|
+
display: flex;
|
|
5302
|
+
flex-direction: column;
|
|
5303
|
+
gap: var(--spacing-2);
|
|
5304
|
+
}
|
|
5305
|
+
|
|
5306
|
+
/* Shimmer animation */
|
|
5307
|
+
@keyframes muka-skeleton-shimmer {
|
|
5308
|
+
0% {
|
|
5309
|
+
background-position: -200% 0;
|
|
5310
|
+
}
|
|
5311
|
+
100% {
|
|
5312
|
+
background-position: 200% 0;
|
|
5313
|
+
}
|
|
5314
|
+
}
|
|
5315
|
+
|
|
5316
|
+
.muka-skeleton--shimmer {
|
|
5317
|
+
background: linear-gradient(
|
|
5318
|
+
90deg,
|
|
5319
|
+
var(--color-surface-level1) 25%,
|
|
5320
|
+
var(--color-surface-level2) 50%,
|
|
5321
|
+
var(--color-surface-level1) 75%
|
|
5322
|
+
);
|
|
5323
|
+
background-size: 200% 100%;
|
|
5324
|
+
animation: muka-skeleton-shimmer 1.5s ease-in-out infinite;
|
|
5325
|
+
}
|
|
5326
|
+
|
|
5327
|
+
/* Pulse animation */
|
|
5328
|
+
@keyframes muka-skeleton-pulse {
|
|
5329
|
+
0%, 100% {
|
|
5330
|
+
opacity: 1;
|
|
5331
|
+
}
|
|
5332
|
+
50% {
|
|
5333
|
+
opacity: 0.4;
|
|
5334
|
+
}
|
|
5335
|
+
}
|
|
5336
|
+
|
|
5337
|
+
.muka-skeleton--pulse {
|
|
5338
|
+
animation: muka-skeleton-pulse 1.5s ease-in-out infinite;
|
|
5339
|
+
}
|
|
5340
|
+
|
|
5341
|
+
|
|
5267
5342
|
/* Sheet */
|
|
5268
5343
|
/* Sheet Component Styles */
|
|
5269
5344
|
|
|
@@ -5344,81 +5419,6 @@ body {
|
|
|
5344
5419
|
}
|
|
5345
5420
|
|
|
5346
5421
|
|
|
5347
|
-
/* Skeleton */
|
|
5348
|
-
/* Skeleton Component Styles */
|
|
5349
|
-
|
|
5350
|
-
.muka-skeleton {
|
|
5351
|
-
background-color: var(--color-surface-level1);
|
|
5352
|
-
display: block;
|
|
5353
|
-
}
|
|
5354
|
-
|
|
5355
|
-
/* Variants */
|
|
5356
|
-
.muka-skeleton--text {
|
|
5357
|
-
height: 1em;
|
|
5358
|
-
border-radius: var(--radius-md);
|
|
5359
|
-
width: 100%;
|
|
5360
|
-
}
|
|
5361
|
-
|
|
5362
|
-
.muka-skeleton--circular {
|
|
5363
|
-
width: 2.5rem;
|
|
5364
|
-
height: 2.5rem;
|
|
5365
|
-
border-radius: var(--radius-full);
|
|
5366
|
-
}
|
|
5367
|
-
|
|
5368
|
-
.muka-skeleton--rectangular {
|
|
5369
|
-
height: 7.5rem;
|
|
5370
|
-
border-radius: var(--radius-md);
|
|
5371
|
-
width: 100%;
|
|
5372
|
-
}
|
|
5373
|
-
|
|
5374
|
-
/* Last line in multi-line text is shorter */
|
|
5375
|
-
.muka-skeleton--last-line {
|
|
5376
|
-
width: 80%;
|
|
5377
|
-
}
|
|
5378
|
-
|
|
5379
|
-
/* Lines container */
|
|
5380
|
-
.muka-skeleton__lines {
|
|
5381
|
-
display: flex;
|
|
5382
|
-
flex-direction: column;
|
|
5383
|
-
gap: var(--spacing-2);
|
|
5384
|
-
}
|
|
5385
|
-
|
|
5386
|
-
/* Shimmer animation */
|
|
5387
|
-
@keyframes muka-skeleton-shimmer {
|
|
5388
|
-
0% {
|
|
5389
|
-
background-position: -200% 0;
|
|
5390
|
-
}
|
|
5391
|
-
100% {
|
|
5392
|
-
background-position: 200% 0;
|
|
5393
|
-
}
|
|
5394
|
-
}
|
|
5395
|
-
|
|
5396
|
-
.muka-skeleton--shimmer {
|
|
5397
|
-
background: linear-gradient(
|
|
5398
|
-
90deg,
|
|
5399
|
-
var(--color-surface-level1) 25%,
|
|
5400
|
-
var(--color-surface-level2) 50%,
|
|
5401
|
-
var(--color-surface-level1) 75%
|
|
5402
|
-
);
|
|
5403
|
-
background-size: 200% 100%;
|
|
5404
|
-
animation: muka-skeleton-shimmer 1.5s ease-in-out infinite;
|
|
5405
|
-
}
|
|
5406
|
-
|
|
5407
|
-
/* Pulse animation */
|
|
5408
|
-
@keyframes muka-skeleton-pulse {
|
|
5409
|
-
0%, 100% {
|
|
5410
|
-
opacity: 1;
|
|
5411
|
-
}
|
|
5412
|
-
50% {
|
|
5413
|
-
opacity: 0.4;
|
|
5414
|
-
}
|
|
5415
|
-
}
|
|
5416
|
-
|
|
5417
|
-
.muka-skeleton--pulse {
|
|
5418
|
-
animation: muka-skeleton-pulse 1.5s ease-in-out infinite;
|
|
5419
|
-
}
|
|
5420
|
-
|
|
5421
|
-
|
|
5422
5422
|
/* Select */
|
|
5423
5423
|
/* Select Component Styles - Aligned with Input for consistency */
|
|
5424
5424
|
|
|
@@ -6781,17 +6781,26 @@ body {
|
|
|
6781
6781
|
color: var(--color-text-default-inverse);
|
|
6782
6782
|
}
|
|
6783
6783
|
|
|
6784
|
-
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--
|
|
6784
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--interactive {
|
|
6785
6785
|
cursor: pointer;
|
|
6786
6786
|
}
|
|
6787
6787
|
|
|
6788
|
-
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--
|
|
6788
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--interactive:focus-visible {
|
|
6789
|
+
outline: 2px solid var(--color-border-focus);
|
|
6790
|
+
outline-offset: 2px;
|
|
6791
|
+
}
|
|
6792
|
+
|
|
6793
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--past.muka-progress-tracker__indicator--interactive:hover {
|
|
6789
6794
|
background-color: var(--alias-color-accent-pressed);
|
|
6790
6795
|
}
|
|
6791
6796
|
|
|
6792
|
-
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--
|
|
6793
|
-
|
|
6794
|
-
|
|
6797
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--current.muka-progress-tracker__indicator--interactive:hover {
|
|
6798
|
+
background-color: var(--alias-color-accent-hover);
|
|
6799
|
+
}
|
|
6800
|
+
|
|
6801
|
+
/* Upcoming (clickableSteps="all"): a 4px halo, the vertical hover's 40px circle */
|
|
6802
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__indicator--upcoming.muka-progress-tracker__indicator--interactive:hover {
|
|
6803
|
+
box-shadow: 0 0 0 4px var(--color-surface-level1);
|
|
6795
6804
|
}
|
|
6796
6805
|
|
|
6797
6806
|
/* Current: accent default circle with white number */
|
|
@@ -6864,6 +6873,15 @@ body {
|
|
|
6864
6873
|
font-weight: var(--text-label-sm-bold-fontWeight);
|
|
6865
6874
|
}
|
|
6866
6875
|
|
|
6876
|
+
/* Selected step: a pill behind the label (horizontal), matching the vertical
|
|
6877
|
+
selected pill's surface. The label stays centred under its indicator. */
|
|
6878
|
+
.muka-progress-tracker--horizontal .muka-progress-tracker__step[data-selected='true'] .muka-progress-tracker__label {
|
|
6879
|
+
padding: 0 var(--spacing-2);
|
|
6880
|
+
border-radius: var(--border-radius-full);
|
|
6881
|
+
background-color: var(--color-surface-level1);
|
|
6882
|
+
max-width: calc(120px + 2 * var(--spacing-2));
|
|
6883
|
+
}
|
|
6884
|
+
|
|
6867
6885
|
/* ─── Connectors layer (behind indicators) — horizontal ─── */
|
|
6868
6886
|
.muka-progress-tracker--horizontal .muka-progress-tracker__connectors {
|
|
6869
6887
|
display: flex;
|
|
@@ -7395,242 +7413,70 @@ body {
|
|
|
7395
7413
|
}
|
|
7396
7414
|
|
|
7397
7415
|
|
|
7398
|
-
/*
|
|
7399
|
-
/*
|
|
7400
|
-
|
|
7401
|
-
/* ========================================
|
|
7402
|
-
BAR VARIANT
|
|
7403
|
-
======================================== */
|
|
7416
|
+
/* ProfileBadge */
|
|
7417
|
+
/* ProfileBadge Component Styles - Using Muka Design Tokens */
|
|
7404
7418
|
|
|
7405
|
-
.muka-
|
|
7406
|
-
display: flex;
|
|
7419
|
+
.muka-profile-badge {
|
|
7420
|
+
display: inline-flex;
|
|
7407
7421
|
align-items: center;
|
|
7408
|
-
|
|
7409
|
-
width: 100%;
|
|
7422
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
7410
7423
|
}
|
|
7411
7424
|
|
|
7412
|
-
|
|
7413
|
-
|
|
7414
|
-
|
|
7415
|
-
border-radius: var(--border-radius-full);
|
|
7416
|
-
overflow: hidden;
|
|
7425
|
+
/* Size variants */
|
|
7426
|
+
.muka-profile-badge--lg {
|
|
7427
|
+
gap: var(--spacing-4); /* 16px */
|
|
7417
7428
|
}
|
|
7418
7429
|
|
|
7419
|
-
.muka-
|
|
7420
|
-
|
|
7430
|
+
.muka-profile-badge--md {
|
|
7431
|
+
gap: var(--spacing-3); /* 12px */
|
|
7421
7432
|
}
|
|
7422
7433
|
|
|
7423
|
-
.muka-
|
|
7424
|
-
|
|
7434
|
+
.muka-profile-badge__avatar {
|
|
7435
|
+
flex-shrink: 0;
|
|
7425
7436
|
}
|
|
7426
7437
|
|
|
7427
|
-
|
|
7428
|
-
|
|
7438
|
+
/* Text stack */
|
|
7439
|
+
.muka-profile-badge__text {
|
|
7440
|
+
display: flex;
|
|
7441
|
+
flex-direction: column;
|
|
7442
|
+
align-items: flex-start;
|
|
7443
|
+
min-width: 0;
|
|
7429
7444
|
}
|
|
7430
7445
|
|
|
7431
|
-
.muka-
|
|
7432
|
-
|
|
7433
|
-
|
|
7434
|
-
|
|
7435
|
-
|
|
7446
|
+
.muka-profile-badge__name {
|
|
7447
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
7448
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
7449
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
7450
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
7451
|
+
color: var(--color-text-default-default);
|
|
7436
7452
|
}
|
|
7437
7453
|
|
|
7438
|
-
.muka-
|
|
7439
|
-
|
|
7440
|
-
font-
|
|
7441
|
-
font-weight: var(--text-
|
|
7442
|
-
|
|
7443
|
-
|
|
7444
|
-
color: var(--color-text-default-default);
|
|
7445
|
-
min-width: 3ch;
|
|
7446
|
-
text-align: right;
|
|
7454
|
+
.muka-profile-badge__email {
|
|
7455
|
+
font-family: var(--text-body-xs-regular-fontFamily);
|
|
7456
|
+
font-size: var(--text-body-xs-regular-fontSize);
|
|
7457
|
+
font-weight: var(--text-body-xs-regular-fontWeight);
|
|
7458
|
+
line-height: var(--text-body-xs-regular-lineHeight);
|
|
7459
|
+
color: var(--color-text-subtle-default);
|
|
7447
7460
|
}
|
|
7448
7461
|
|
|
7449
|
-
/*
|
|
7450
|
-
.muka-
|
|
7451
|
-
|
|
7452
|
-
|
|
7462
|
+
/* Clickable state */
|
|
7463
|
+
.muka-profile-badge--clickable {
|
|
7464
|
+
cursor: pointer;
|
|
7465
|
+
border: none;
|
|
7466
|
+
background: none;
|
|
7467
|
+
padding: 0;
|
|
7468
|
+
text-align: left;
|
|
7469
|
+
border-radius: var(--radius-md);
|
|
7470
|
+
transition: opacity 0.2s ease;
|
|
7453
7471
|
}
|
|
7454
7472
|
|
|
7455
|
-
|
|
7456
|
-
0
|
|
7457
|
-
transform: translateX(-100%);
|
|
7458
|
-
}
|
|
7459
|
-
100% {
|
|
7460
|
-
transform: translateX(250%);
|
|
7461
|
-
}
|
|
7473
|
+
.muka-profile-badge--clickable:hover {
|
|
7474
|
+
opacity: 0.9;
|
|
7462
7475
|
}
|
|
7463
7476
|
|
|
7464
|
-
|
|
7465
|
-
|
|
7466
|
-
|
|
7467
|
-
|
|
7468
|
-
.muka-progress--circle {
|
|
7469
|
-
position: relative;
|
|
7470
|
-
display: inline-flex;
|
|
7471
|
-
align-items: center;
|
|
7472
|
-
justify-content: center;
|
|
7473
|
-
}
|
|
7474
|
-
|
|
7475
|
-
.muka-progress--circle.muka-progress--sm {
|
|
7476
|
-
width: var(--progress-size-circle-diameter-sm);
|
|
7477
|
-
height: var(--progress-size-circle-diameter-sm);
|
|
7478
|
-
}
|
|
7479
|
-
|
|
7480
|
-
.muka-progress--circle.muka-progress--md {
|
|
7481
|
-
width: var(--progress-size-circle-diameter-md);
|
|
7482
|
-
height: var(--progress-size-circle-diameter-md);
|
|
7483
|
-
}
|
|
7484
|
-
|
|
7485
|
-
.muka-progress--circle.muka-progress--lg {
|
|
7486
|
-
width: var(--progress-size-circle-diameter-lg);
|
|
7487
|
-
height: var(--progress-size-circle-diameter-lg);
|
|
7488
|
-
}
|
|
7489
|
-
|
|
7490
|
-
.muka-progress__circle {
|
|
7491
|
-
width: 100%;
|
|
7492
|
-
height: 100%;
|
|
7493
|
-
transform: rotate(-90deg);
|
|
7494
|
-
}
|
|
7495
|
-
|
|
7496
|
-
.muka-progress--circle .muka-progress__track {
|
|
7497
|
-
fill: none;
|
|
7498
|
-
stroke: var(--color-surface-level1);
|
|
7499
|
-
}
|
|
7500
|
-
|
|
7501
|
-
.muka-progress--circle.muka-progress--sm .muka-progress__track,
|
|
7502
|
-
.muka-progress--circle.muka-progress--sm .muka-progress__fill {
|
|
7503
|
-
stroke-width: var(--progress-size-circle-strokeWidth-sm);
|
|
7504
|
-
}
|
|
7505
|
-
|
|
7506
|
-
.muka-progress--circle.muka-progress--md .muka-progress__track,
|
|
7507
|
-
.muka-progress--circle.muka-progress--md .muka-progress__fill {
|
|
7508
|
-
stroke-width: var(--progress-size-circle-strokeWidth-md);
|
|
7509
|
-
}
|
|
7510
|
-
|
|
7511
|
-
.muka-progress--circle.muka-progress--lg .muka-progress__track,
|
|
7512
|
-
.muka-progress--circle.muka-progress--lg .muka-progress__fill {
|
|
7513
|
-
stroke-width: var(--progress-size-circle-strokeWidth-lg);
|
|
7514
|
-
}
|
|
7515
|
-
|
|
7516
|
-
.muka-progress--circle .muka-progress__fill {
|
|
7517
|
-
fill: none;
|
|
7518
|
-
stroke: var(--color-action-default);
|
|
7519
|
-
stroke-linecap: round;
|
|
7520
|
-
transition: stroke-dashoffset 0.3s ease;
|
|
7521
|
-
}
|
|
7522
|
-
|
|
7523
|
-
.muka-progress--circle .muka-progress__label {
|
|
7524
|
-
position: absolute;
|
|
7525
|
-
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
7526
|
-
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
7527
|
-
color: var(--color-text-default-default);
|
|
7528
|
-
}
|
|
7529
|
-
|
|
7530
|
-
.muka-progress--circle.muka-progress--sm .muka-progress__label {
|
|
7531
|
-
font-size: var(--text-label-sm-semibold-fontSize);
|
|
7532
|
-
}
|
|
7533
|
-
|
|
7534
|
-
.muka-progress--circle.muka-progress--md .muka-progress__label {
|
|
7535
|
-
font-size: var(--text-label-md-semibold-fontSize);
|
|
7536
|
-
}
|
|
7537
|
-
|
|
7538
|
-
.muka-progress--circle.muka-progress--lg .muka-progress__label {
|
|
7539
|
-
font-size: var(--text-label-lg-semibold-fontSize);
|
|
7540
|
-
}
|
|
7541
|
-
|
|
7542
|
-
/* Indeterminate animation for circle */
|
|
7543
|
-
.muka-progress--circle.muka-progress--indeterminate .muka-progress__circle {
|
|
7544
|
-
animation: muka-progress-circle-rotate 2s linear infinite;
|
|
7545
|
-
}
|
|
7546
|
-
|
|
7547
|
-
.muka-progress--circle.muka-progress--indeterminate .muka-progress__fill {
|
|
7548
|
-
animation: muka-progress-circle-dash 1.5s ease-in-out infinite;
|
|
7549
|
-
}
|
|
7550
|
-
|
|
7551
|
-
@keyframes muka-progress-circle-rotate {
|
|
7552
|
-
100% {
|
|
7553
|
-
transform: rotate(270deg);
|
|
7554
|
-
}
|
|
7555
|
-
}
|
|
7556
|
-
|
|
7557
|
-
@keyframes muka-progress-circle-dash {
|
|
7558
|
-
0% {
|
|
7559
|
-
stroke-dashoffset: 220;
|
|
7560
|
-
}
|
|
7561
|
-
50% {
|
|
7562
|
-
stroke-dashoffset: 70;
|
|
7563
|
-
}
|
|
7564
|
-
100% {
|
|
7565
|
-
stroke-dashoffset: 220;
|
|
7566
|
-
}
|
|
7567
|
-
}
|
|
7568
|
-
|
|
7569
|
-
|
|
7570
|
-
/* ProfileBadge */
|
|
7571
|
-
/* ProfileBadge Component Styles - Using Muka Design Tokens */
|
|
7572
|
-
|
|
7573
|
-
.muka-profile-badge {
|
|
7574
|
-
display: inline-flex;
|
|
7575
|
-
align-items: center;
|
|
7576
|
-
font-family: var(--text-body-base-regular-fontFamily);
|
|
7577
|
-
}
|
|
7578
|
-
|
|
7579
|
-
/* Size variants */
|
|
7580
|
-
.muka-profile-badge--lg {
|
|
7581
|
-
gap: var(--spacing-4); /* 16px */
|
|
7582
|
-
}
|
|
7583
|
-
|
|
7584
|
-
.muka-profile-badge--md {
|
|
7585
|
-
gap: var(--spacing-3); /* 12px */
|
|
7586
|
-
}
|
|
7587
|
-
|
|
7588
|
-
.muka-profile-badge__avatar {
|
|
7589
|
-
flex-shrink: 0;
|
|
7590
|
-
}
|
|
7591
|
-
|
|
7592
|
-
/* Text stack */
|
|
7593
|
-
.muka-profile-badge__text {
|
|
7594
|
-
display: flex;
|
|
7595
|
-
flex-direction: column;
|
|
7596
|
-
align-items: flex-start;
|
|
7597
|
-
min-width: 0;
|
|
7598
|
-
}
|
|
7599
|
-
|
|
7600
|
-
.muka-profile-badge__name {
|
|
7601
|
-
font-family: var(--text-body-base-regular-fontFamily);
|
|
7602
|
-
font-size: var(--text-body-base-regular-fontSize);
|
|
7603
|
-
font-weight: var(--text-body-base-regular-fontWeight);
|
|
7604
|
-
line-height: var(--text-body-base-regular-lineHeight);
|
|
7605
|
-
color: var(--color-text-default-default);
|
|
7606
|
-
}
|
|
7607
|
-
|
|
7608
|
-
.muka-profile-badge__email {
|
|
7609
|
-
font-family: var(--text-body-xs-regular-fontFamily);
|
|
7610
|
-
font-size: var(--text-body-xs-regular-fontSize);
|
|
7611
|
-
font-weight: var(--text-body-xs-regular-fontWeight);
|
|
7612
|
-
line-height: var(--text-body-xs-regular-lineHeight);
|
|
7613
|
-
color: var(--color-text-subtle-default);
|
|
7614
|
-
}
|
|
7615
|
-
|
|
7616
|
-
/* Clickable state */
|
|
7617
|
-
.muka-profile-badge--clickable {
|
|
7618
|
-
cursor: pointer;
|
|
7619
|
-
border: none;
|
|
7620
|
-
background: none;
|
|
7621
|
-
padding: 0;
|
|
7622
|
-
text-align: left;
|
|
7623
|
-
border-radius: var(--radius-md);
|
|
7624
|
-
transition: opacity 0.2s ease;
|
|
7625
|
-
}
|
|
7626
|
-
|
|
7627
|
-
.muka-profile-badge--clickable:hover {
|
|
7628
|
-
opacity: 0.9;
|
|
7629
|
-
}
|
|
7630
|
-
|
|
7631
|
-
.muka-profile-badge--clickable:active {
|
|
7632
|
-
opacity: 0.8;
|
|
7633
|
-
}
|
|
7477
|
+
.muka-profile-badge--clickable:active {
|
|
7478
|
+
opacity: 0.8;
|
|
7479
|
+
}
|
|
7634
7480
|
|
|
7635
7481
|
.muka-profile-badge--clickable:focus-visible {
|
|
7636
7482
|
outline: 2px solid var(--color-border-focus);
|
|
@@ -7735,68 +7581,271 @@ body {
|
|
|
7735
7581
|
}
|
|
7736
7582
|
|
|
7737
7583
|
|
|
7738
|
-
/*
|
|
7739
|
-
/*
|
|
7584
|
+
/* Popover */
|
|
7585
|
+
/* Popover Component Styles */
|
|
7740
7586
|
|
|
7741
|
-
.muka-
|
|
7742
|
-
|
|
7743
|
-
|
|
7744
|
-
|
|
7587
|
+
.muka-popover__content {
|
|
7588
|
+
background-color: var(--color-surface-level3);
|
|
7589
|
+
border: var(--border-width-regular) solid var(--color-border-default);
|
|
7590
|
+
border-radius: var(--radius-md);
|
|
7591
|
+
padding: var(--spacing-4);
|
|
7592
|
+
box-shadow: var(--shadow-level3);
|
|
7593
|
+
max-width: 20rem;
|
|
7594
|
+
z-index: 50;
|
|
7595
|
+
animation: muka-popover-fade-in 150ms ease;
|
|
7745
7596
|
}
|
|
7746
7597
|
|
|
7747
|
-
|
|
7748
|
-
|
|
7749
|
-
|
|
7598
|
+
@keyframes muka-popover-fade-in {
|
|
7599
|
+
from {
|
|
7600
|
+
opacity: 0;
|
|
7601
|
+
transform: scale(0.96);
|
|
7602
|
+
}
|
|
7603
|
+
to {
|
|
7604
|
+
opacity: 1;
|
|
7605
|
+
transform: scale(1);
|
|
7606
|
+
}
|
|
7750
7607
|
}
|
|
7751
7608
|
|
|
7752
|
-
|
|
7753
|
-
|
|
7609
|
+
/* Arrow */
|
|
7610
|
+
.muka-popover__arrow {
|
|
7611
|
+
fill: var(--color-surface-level3);
|
|
7754
7612
|
}
|
|
7755
7613
|
|
|
7614
|
+
|
|
7615
|
+
/* Progress */
|
|
7616
|
+
/* Progress Component Styles - Using Muka Design Tokens */
|
|
7617
|
+
|
|
7756
7618
|
/* ========================================
|
|
7757
|
-
|
|
7619
|
+
BAR VARIANT
|
|
7758
7620
|
======================================== */
|
|
7759
7621
|
|
|
7760
|
-
.muka-
|
|
7761
|
-
|
|
7762
|
-
|
|
7763
|
-
|
|
7764
|
-
|
|
7765
|
-
.muka-piechart__chart--sm {
|
|
7766
|
-
width: var(--piechart-size-diameter-sm);
|
|
7767
|
-
height: var(--piechart-size-diameter-sm);
|
|
7622
|
+
.muka-progress--bar {
|
|
7623
|
+
display: flex;
|
|
7624
|
+
align-items: center;
|
|
7625
|
+
gap: var(--spacing-2);
|
|
7626
|
+
width: 100%;
|
|
7768
7627
|
}
|
|
7769
7628
|
|
|
7770
|
-
.muka-
|
|
7771
|
-
|
|
7772
|
-
|
|
7629
|
+
.muka-progress--bar .muka-progress__track {
|
|
7630
|
+
flex: 1;
|
|
7631
|
+
background-color: var(--color-surface-level1);
|
|
7632
|
+
border-radius: var(--border-radius-full);
|
|
7633
|
+
overflow: hidden;
|
|
7773
7634
|
}
|
|
7774
7635
|
|
|
7775
|
-
.muka-
|
|
7776
|
-
|
|
7777
|
-
height: var(--piechart-size-diameter-lg);
|
|
7636
|
+
.muka-progress--bar.muka-progress--sm .muka-progress__track {
|
|
7637
|
+
height: var(--progress-size-bar-height-sm);
|
|
7778
7638
|
}
|
|
7779
7639
|
|
|
7780
|
-
.muka-
|
|
7781
|
-
|
|
7782
|
-
width: 100%;
|
|
7783
|
-
height: 100%;
|
|
7784
|
-
/* Start slices at 12 o'clock instead of 3 o'clock */
|
|
7785
|
-
transform: rotate(-90deg);
|
|
7640
|
+
.muka-progress--bar.muka-progress--md .muka-progress__track {
|
|
7641
|
+
height: var(--progress-size-bar-height-md);
|
|
7786
7642
|
}
|
|
7787
7643
|
|
|
7788
|
-
.muka-
|
|
7789
|
-
|
|
7790
|
-
stroke: var(--piechart-color-track);
|
|
7644
|
+
.muka-progress--bar.muka-progress--lg .muka-progress__track {
|
|
7645
|
+
height: var(--progress-size-bar-height-lg);
|
|
7791
7646
|
}
|
|
7792
7647
|
|
|
7793
|
-
.muka-
|
|
7794
|
-
|
|
7648
|
+
.muka-progress--bar .muka-progress__fill {
|
|
7649
|
+
height: 100%;
|
|
7650
|
+
background-color: var(--color-action-default);
|
|
7651
|
+
border-radius: var(--border-radius-full);
|
|
7652
|
+
transition: width 0.3s ease;
|
|
7795
7653
|
}
|
|
7796
7654
|
|
|
7797
|
-
|
|
7798
|
-
|
|
7799
|
-
|
|
7655
|
+
.muka-progress--bar .muka-progress__label {
|
|
7656
|
+
flex-shrink: 0;
|
|
7657
|
+
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
7658
|
+
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
7659
|
+
font-size: var(--text-label-sm-semibold-fontSize);
|
|
7660
|
+
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
7661
|
+
color: var(--color-text-default-default);
|
|
7662
|
+
min-width: 3ch;
|
|
7663
|
+
text-align: right;
|
|
7664
|
+
}
|
|
7665
|
+
|
|
7666
|
+
/* Indeterminate animation for bar */
|
|
7667
|
+
.muka-progress--bar.muka-progress--indeterminate .muka-progress__fill {
|
|
7668
|
+
width: 40%;
|
|
7669
|
+
animation: muka-progress-bar-indeterminate 1.5s ease-in-out infinite;
|
|
7670
|
+
}
|
|
7671
|
+
|
|
7672
|
+
@keyframes muka-progress-bar-indeterminate {
|
|
7673
|
+
0% {
|
|
7674
|
+
transform: translateX(-100%);
|
|
7675
|
+
}
|
|
7676
|
+
100% {
|
|
7677
|
+
transform: translateX(250%);
|
|
7678
|
+
}
|
|
7679
|
+
}
|
|
7680
|
+
|
|
7681
|
+
/* ========================================
|
|
7682
|
+
CIRCLE VARIANT
|
|
7683
|
+
======================================== */
|
|
7684
|
+
|
|
7685
|
+
.muka-progress--circle {
|
|
7686
|
+
position: relative;
|
|
7687
|
+
display: inline-flex;
|
|
7688
|
+
align-items: center;
|
|
7689
|
+
justify-content: center;
|
|
7690
|
+
}
|
|
7691
|
+
|
|
7692
|
+
.muka-progress--circle.muka-progress--sm {
|
|
7693
|
+
width: var(--progress-size-circle-diameter-sm);
|
|
7694
|
+
height: var(--progress-size-circle-diameter-sm);
|
|
7695
|
+
}
|
|
7696
|
+
|
|
7697
|
+
.muka-progress--circle.muka-progress--md {
|
|
7698
|
+
width: var(--progress-size-circle-diameter-md);
|
|
7699
|
+
height: var(--progress-size-circle-diameter-md);
|
|
7700
|
+
}
|
|
7701
|
+
|
|
7702
|
+
.muka-progress--circle.muka-progress--lg {
|
|
7703
|
+
width: var(--progress-size-circle-diameter-lg);
|
|
7704
|
+
height: var(--progress-size-circle-diameter-lg);
|
|
7705
|
+
}
|
|
7706
|
+
|
|
7707
|
+
.muka-progress__circle {
|
|
7708
|
+
width: 100%;
|
|
7709
|
+
height: 100%;
|
|
7710
|
+
transform: rotate(-90deg);
|
|
7711
|
+
}
|
|
7712
|
+
|
|
7713
|
+
.muka-progress--circle .muka-progress__track {
|
|
7714
|
+
fill: none;
|
|
7715
|
+
stroke: var(--color-surface-level1);
|
|
7716
|
+
}
|
|
7717
|
+
|
|
7718
|
+
.muka-progress--circle.muka-progress--sm .muka-progress__track,
|
|
7719
|
+
.muka-progress--circle.muka-progress--sm .muka-progress__fill {
|
|
7720
|
+
stroke-width: var(--progress-size-circle-strokeWidth-sm);
|
|
7721
|
+
}
|
|
7722
|
+
|
|
7723
|
+
.muka-progress--circle.muka-progress--md .muka-progress__track,
|
|
7724
|
+
.muka-progress--circle.muka-progress--md .muka-progress__fill {
|
|
7725
|
+
stroke-width: var(--progress-size-circle-strokeWidth-md);
|
|
7726
|
+
}
|
|
7727
|
+
|
|
7728
|
+
.muka-progress--circle.muka-progress--lg .muka-progress__track,
|
|
7729
|
+
.muka-progress--circle.muka-progress--lg .muka-progress__fill {
|
|
7730
|
+
stroke-width: var(--progress-size-circle-strokeWidth-lg);
|
|
7731
|
+
}
|
|
7732
|
+
|
|
7733
|
+
.muka-progress--circle .muka-progress__fill {
|
|
7734
|
+
fill: none;
|
|
7735
|
+
stroke: var(--color-action-default);
|
|
7736
|
+
stroke-linecap: round;
|
|
7737
|
+
transition: stroke-dashoffset 0.3s ease;
|
|
7738
|
+
}
|
|
7739
|
+
|
|
7740
|
+
.muka-progress--circle .muka-progress__label {
|
|
7741
|
+
position: absolute;
|
|
7742
|
+
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
7743
|
+
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
7744
|
+
color: var(--color-text-default-default);
|
|
7745
|
+
}
|
|
7746
|
+
|
|
7747
|
+
.muka-progress--circle.muka-progress--sm .muka-progress__label {
|
|
7748
|
+
font-size: var(--text-label-sm-semibold-fontSize);
|
|
7749
|
+
}
|
|
7750
|
+
|
|
7751
|
+
.muka-progress--circle.muka-progress--md .muka-progress__label {
|
|
7752
|
+
font-size: var(--text-label-md-semibold-fontSize);
|
|
7753
|
+
}
|
|
7754
|
+
|
|
7755
|
+
.muka-progress--circle.muka-progress--lg .muka-progress__label {
|
|
7756
|
+
font-size: var(--text-label-lg-semibold-fontSize);
|
|
7757
|
+
}
|
|
7758
|
+
|
|
7759
|
+
/* Indeterminate animation for circle */
|
|
7760
|
+
.muka-progress--circle.muka-progress--indeterminate .muka-progress__circle {
|
|
7761
|
+
animation: muka-progress-circle-rotate 2s linear infinite;
|
|
7762
|
+
}
|
|
7763
|
+
|
|
7764
|
+
.muka-progress--circle.muka-progress--indeterminate .muka-progress__fill {
|
|
7765
|
+
animation: muka-progress-circle-dash 1.5s ease-in-out infinite;
|
|
7766
|
+
}
|
|
7767
|
+
|
|
7768
|
+
@keyframes muka-progress-circle-rotate {
|
|
7769
|
+
100% {
|
|
7770
|
+
transform: rotate(270deg);
|
|
7771
|
+
}
|
|
7772
|
+
}
|
|
7773
|
+
|
|
7774
|
+
@keyframes muka-progress-circle-dash {
|
|
7775
|
+
0% {
|
|
7776
|
+
stroke-dashoffset: 220;
|
|
7777
|
+
}
|
|
7778
|
+
50% {
|
|
7779
|
+
stroke-dashoffset: 70;
|
|
7780
|
+
}
|
|
7781
|
+
100% {
|
|
7782
|
+
stroke-dashoffset: 220;
|
|
7783
|
+
}
|
|
7784
|
+
}
|
|
7785
|
+
|
|
7786
|
+
|
|
7787
|
+
/* PieChart */
|
|
7788
|
+
/* PieChart Component Styles - Using Muka Design Tokens */
|
|
7789
|
+
|
|
7790
|
+
.muka-piechart {
|
|
7791
|
+
display: inline-flex;
|
|
7792
|
+
align-items: center;
|
|
7793
|
+
gap: var(--spacing-4);
|
|
7794
|
+
}
|
|
7795
|
+
|
|
7796
|
+
/* Legend layout */
|
|
7797
|
+
.muka-piechart--legend-right {
|
|
7798
|
+
flex-direction: row;
|
|
7799
|
+
}
|
|
7800
|
+
|
|
7801
|
+
.muka-piechart--legend-bottom {
|
|
7802
|
+
flex-direction: column;
|
|
7803
|
+
}
|
|
7804
|
+
|
|
7805
|
+
/* ========================================
|
|
7806
|
+
CHART
|
|
7807
|
+
======================================== */
|
|
7808
|
+
|
|
7809
|
+
.muka-piechart__chart {
|
|
7810
|
+
position: relative;
|
|
7811
|
+
flex-shrink: 0;
|
|
7812
|
+
}
|
|
7813
|
+
|
|
7814
|
+
.muka-piechart__chart--sm {
|
|
7815
|
+
width: var(--piechart-size-diameter-sm);
|
|
7816
|
+
height: var(--piechart-size-diameter-sm);
|
|
7817
|
+
}
|
|
7818
|
+
|
|
7819
|
+
.muka-piechart__chart--md {
|
|
7820
|
+
width: var(--piechart-size-diameter-md);
|
|
7821
|
+
height: var(--piechart-size-diameter-md);
|
|
7822
|
+
}
|
|
7823
|
+
|
|
7824
|
+
.muka-piechart__chart--lg {
|
|
7825
|
+
width: var(--piechart-size-diameter-lg);
|
|
7826
|
+
height: var(--piechart-size-diameter-lg);
|
|
7827
|
+
}
|
|
7828
|
+
|
|
7829
|
+
.muka-piechart__svg {
|
|
7830
|
+
display: block;
|
|
7831
|
+
width: 100%;
|
|
7832
|
+
height: 100%;
|
|
7833
|
+
/* Start slices at 12 o'clock instead of 3 o'clock */
|
|
7834
|
+
transform: rotate(-90deg);
|
|
7835
|
+
}
|
|
7836
|
+
|
|
7837
|
+
.muka-piechart__track {
|
|
7838
|
+
fill: none;
|
|
7839
|
+
stroke: var(--piechart-color-track);
|
|
7840
|
+
}
|
|
7841
|
+
|
|
7842
|
+
.muka-piechart__segment {
|
|
7843
|
+
fill: none;
|
|
7844
|
+
}
|
|
7845
|
+
|
|
7846
|
+
/* ========================================
|
|
7847
|
+
LEGEND
|
|
7848
|
+
======================================== */
|
|
7800
7849
|
|
|
7801
7850
|
.muka-piechart__legend {
|
|
7802
7851
|
list-style: none;
|
|
@@ -7832,37 +7881,6 @@ body {
|
|
|
7832
7881
|
}
|
|
7833
7882
|
|
|
7834
7883
|
|
|
7835
|
-
/* Popover */
|
|
7836
|
-
/* Popover Component Styles */
|
|
7837
|
-
|
|
7838
|
-
.muka-popover__content {
|
|
7839
|
-
background-color: var(--color-surface-level3);
|
|
7840
|
-
border: var(--border-width-regular) solid var(--color-border-default);
|
|
7841
|
-
border-radius: var(--radius-md);
|
|
7842
|
-
padding: var(--spacing-4);
|
|
7843
|
-
box-shadow: var(--shadow-level3);
|
|
7844
|
-
max-width: 20rem;
|
|
7845
|
-
z-index: 50;
|
|
7846
|
-
animation: muka-popover-fade-in 150ms ease;
|
|
7847
|
-
}
|
|
7848
|
-
|
|
7849
|
-
@keyframes muka-popover-fade-in {
|
|
7850
|
-
from {
|
|
7851
|
-
opacity: 0;
|
|
7852
|
-
transform: scale(0.96);
|
|
7853
|
-
}
|
|
7854
|
-
to {
|
|
7855
|
-
opacity: 1;
|
|
7856
|
-
transform: scale(1);
|
|
7857
|
-
}
|
|
7858
|
-
}
|
|
7859
|
-
|
|
7860
|
-
/* Arrow */
|
|
7861
|
-
.muka-popover__arrow {
|
|
7862
|
-
fill: var(--color-surface-level3);
|
|
7863
|
-
}
|
|
7864
|
-
|
|
7865
|
-
|
|
7866
7884
|
/* PhotoUploader */
|
|
7867
7885
|
/* PhotoUploader Component Styles - Using Muka Design Tokens */
|
|
7868
7886
|
|
|
@@ -8648,198 +8666,12 @@ body {
|
|
|
8648
8666
|
}
|
|
8649
8667
|
|
|
8650
8668
|
|
|
8651
|
-
/*
|
|
8652
|
-
/*
|
|
8669
|
+
/* ListItem */
|
|
8670
|
+
/* ListItem Component Styles - Using Muka Design Tokens */
|
|
8653
8671
|
|
|
8654
|
-
/*
|
|
8655
|
-
.muka-
|
|
8656
|
-
|
|
8657
|
-
inset: 0;
|
|
8658
|
-
width: 100%;
|
|
8659
|
-
height: 100%;
|
|
8660
|
-
max-width: none;
|
|
8661
|
-
max-height: none;
|
|
8662
|
-
margin: 0;
|
|
8663
|
-
padding: 0;
|
|
8664
|
-
border: none;
|
|
8665
|
-
display: flex;
|
|
8666
|
-
flex-direction: column;
|
|
8667
|
-
overflow: hidden;
|
|
8668
|
-
overscroll-behavior: contain;
|
|
8669
|
-
color: var(--color-text-default-default);
|
|
8670
|
-
background-color: var(--color-black-alpha-12);
|
|
8671
|
-
animation: muka-media-viewer-in var(--motion-duration-component) var(--motion-easing-enter);
|
|
8672
|
-
}
|
|
8673
|
-
|
|
8674
|
-
.muka-media-viewer:not([open]) {
|
|
8675
|
-
display: none;
|
|
8676
|
-
}
|
|
8677
|
-
|
|
8678
|
-
.muka-media-viewer::backdrop {
|
|
8679
|
-
background-color: var(--color-black-alpha-12);
|
|
8680
|
-
}
|
|
8681
|
-
|
|
8682
|
-
@keyframes muka-media-viewer-in {
|
|
8683
|
-
from {
|
|
8684
|
-
opacity: 0;
|
|
8685
|
-
}
|
|
8686
|
-
to {
|
|
8687
|
-
opacity: 1;
|
|
8688
|
-
}
|
|
8689
|
-
}
|
|
8690
|
-
|
|
8691
|
-
/* ─── Chrome: TopBar and footer sit on a surface ──────── */
|
|
8692
|
-
.muka-media-viewer__topbar {
|
|
8693
|
-
flex-shrink: 0;
|
|
8694
|
-
background-color: var(--color-surface-level3);
|
|
8695
|
-
}
|
|
8696
|
-
|
|
8697
|
-
.muka-media-viewer__live {
|
|
8698
|
-
position: absolute;
|
|
8699
|
-
width: 1px;
|
|
8700
|
-
height: 1px;
|
|
8701
|
-
padding: 0;
|
|
8702
|
-
margin: -1px;
|
|
8703
|
-
overflow: hidden;
|
|
8704
|
-
clip: rect(0, 0, 0, 0);
|
|
8705
|
-
white-space: nowrap;
|
|
8706
|
-
border: 0;
|
|
8707
|
-
}
|
|
8708
|
-
|
|
8709
|
-
/* ─── Stage: the dark area the images slide across ────── */
|
|
8710
|
-
.muka-media-viewer__stage {
|
|
8711
|
-
position: relative;
|
|
8712
|
-
flex: 1 1 auto;
|
|
8713
|
-
min-height: 0;
|
|
8714
|
-
overflow: hidden;
|
|
8715
|
-
/* Gestures are handled in JS: no browser panning or pinch on the stage. */
|
|
8716
|
-
touch-action: none;
|
|
8717
|
-
user-select: none;
|
|
8718
|
-
-webkit-user-select: none;
|
|
8719
|
-
}
|
|
8720
|
-
|
|
8721
|
-
.muka-media-viewer__slide {
|
|
8722
|
-
position: absolute;
|
|
8723
|
-
inset: 0;
|
|
8724
|
-
display: flex;
|
|
8725
|
-
align-items: center;
|
|
8726
|
-
justify-content: center;
|
|
8727
|
-
padding: var(--spacing-4);
|
|
8728
|
-
transition: transform var(--motion-duration-component) var(--motion-easing-default);
|
|
8729
|
-
will-change: transform;
|
|
8730
|
-
}
|
|
8731
|
-
|
|
8732
|
-
/* While a finger drags, the image follows it without easing. */
|
|
8733
|
-
.muka-media-viewer--dragging .muka-media-viewer__slide {
|
|
8734
|
-
transition: none;
|
|
8735
|
-
}
|
|
8736
|
-
|
|
8737
|
-
.muka-media-viewer__image {
|
|
8738
|
-
display: block;
|
|
8739
|
-
max-width: 100%;
|
|
8740
|
-
max-height: 100%;
|
|
8741
|
-
object-fit: contain;
|
|
8742
|
-
/* The image takes touches, so a long press opens the OS menu (save, share,
|
|
8743
|
-
copy). The swipe still works: pointer events bubble to the stage, and a
|
|
8744
|
-
long press doesn't move far enough to start a drag. */
|
|
8745
|
-
-webkit-touch-callout: default;
|
|
8746
|
-
}
|
|
8747
|
-
|
|
8748
|
-
/* ─── Previous / next: devices that can hover ─────────── */
|
|
8749
|
-
.muka-media-viewer__nav {
|
|
8750
|
-
position: absolute;
|
|
8751
|
-
top: 50%;
|
|
8752
|
-
display: none;
|
|
8753
|
-
transform: translateY(-50%);
|
|
8754
|
-
opacity: 0;
|
|
8755
|
-
transition: opacity var(--motion-duration-micro) var(--motion-easing-enter);
|
|
8756
|
-
}
|
|
8757
|
-
|
|
8758
|
-
.muka-media-viewer__nav--previous {
|
|
8759
|
-
left: var(--spacing-4);
|
|
8760
|
-
}
|
|
8761
|
-
|
|
8762
|
-
.muka-media-viewer__nav--next {
|
|
8763
|
-
right: var(--spacing-4);
|
|
8764
|
-
}
|
|
8765
|
-
|
|
8766
|
-
@media (hover: hover) and (pointer: fine) {
|
|
8767
|
-
.muka-media-viewer__nav {
|
|
8768
|
-
display: block;
|
|
8769
|
-
}
|
|
8770
|
-
|
|
8771
|
-
.muka-media-viewer__stage:hover .muka-media-viewer__nav,
|
|
8772
|
-
.muka-media-viewer__nav:focus-within {
|
|
8773
|
-
opacity: 1;
|
|
8774
|
-
}
|
|
8775
|
-
}
|
|
8776
|
-
|
|
8777
|
-
/* ─── Footer: caption, meta and actions ───────────────── */
|
|
8778
|
-
.muka-media-viewer__footer {
|
|
8779
|
-
flex-shrink: 0;
|
|
8780
|
-
display: flex;
|
|
8781
|
-
flex-direction: column;
|
|
8782
|
-
gap: var(--spacing-3);
|
|
8783
|
-
padding: var(--spacing-4);
|
|
8784
|
-
padding-bottom: calc(var(--spacing-4) + env(safe-area-inset-bottom, 0px));
|
|
8785
|
-
background-color: var(--color-surface-level3);
|
|
8786
|
-
}
|
|
8787
|
-
|
|
8788
|
-
.muka-media-viewer__details {
|
|
8789
|
-
display: flex;
|
|
8790
|
-
align-items: flex-start;
|
|
8791
|
-
justify-content: space-between;
|
|
8792
|
-
gap: var(--spacing-3);
|
|
8793
|
-
}
|
|
8794
|
-
|
|
8795
|
-
.muka-media-viewer__caption {
|
|
8796
|
-
min-width: 0;
|
|
8797
|
-
color: var(--color-text-subtle-default);
|
|
8798
|
-
font-family: var(--text-body-sm-regular-fontFamily);
|
|
8799
|
-
font-size: var(--text-body-sm-regular-fontSize);
|
|
8800
|
-
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
8801
|
-
line-height: var(--text-body-sm-regular-lineHeight);
|
|
8802
|
-
overflow-wrap: anywhere;
|
|
8803
|
-
}
|
|
8804
|
-
|
|
8805
|
-
.muka-media-viewer__meta {
|
|
8806
|
-
flex-shrink: 0;
|
|
8807
|
-
}
|
|
8808
|
-
|
|
8809
|
-
.muka-media-viewer__actions {
|
|
8810
|
-
display: flex;
|
|
8811
|
-
flex-wrap: wrap;
|
|
8812
|
-
gap: var(--spacing-2);
|
|
8813
|
-
}
|
|
8814
|
-
|
|
8815
|
-
/* Mobile: actions stack full width, like Dialog footers. */
|
|
8816
|
-
@media (max-width: 1023px) {
|
|
8817
|
-
.muka-media-viewer__actions {
|
|
8818
|
-
flex-direction: column;
|
|
8819
|
-
}
|
|
8820
|
-
|
|
8821
|
-
.muka-media-viewer__actions > * {
|
|
8822
|
-
width: 100%;
|
|
8823
|
-
}
|
|
8824
|
-
}
|
|
8825
|
-
|
|
8826
|
-
/* ─── Reduced motion ──────────────────────────────────── */
|
|
8827
|
-
@media (prefers-reduced-motion: reduce) {
|
|
8828
|
-
.muka-media-viewer,
|
|
8829
|
-
.muka-media-viewer__slide,
|
|
8830
|
-
.muka-media-viewer__nav {
|
|
8831
|
-
animation: none;
|
|
8832
|
-
transition: none;
|
|
8833
|
-
}
|
|
8834
|
-
}
|
|
8835
|
-
|
|
8836
|
-
|
|
8837
|
-
/* ListItem */
|
|
8838
|
-
/* ListItem Component Styles - Using Muka Design Tokens */
|
|
8839
|
-
|
|
8840
|
-
/* Base list item styles */
|
|
8841
|
-
.muka-listitem {
|
|
8842
|
-
/* Layout */
|
|
8672
|
+
/* Base list item styles */
|
|
8673
|
+
.muka-listitem {
|
|
8674
|
+
/* Layout */
|
|
8843
8675
|
display: flex;
|
|
8844
8676
|
align-items: flex-start;
|
|
8845
8677
|
gap: var(--spacing-4);
|
|
@@ -9028,196 +8860,189 @@ li.muka-listitem {
|
|
|
9028
8860
|
}
|
|
9029
8861
|
|
|
9030
8862
|
|
|
9031
|
-
/*
|
|
9032
|
-
/*
|
|
9033
|
-
*
|
|
9034
|
-
* Plate body colors are regulatory (EU/NL) and intentionally fixed:
|
|
9035
|
-
* - Plate yellow: #F0CE3D
|
|
9036
|
-
* - EU strip blue: #003399
|
|
9037
|
-
* - EU stars yellow: #FFCC00
|
|
9038
|
-
* - Plate text: #1A1A1A
|
|
9039
|
-
*
|
|
9040
|
-
* All surrounding UI (label, helper, focus ring, error border) uses Muka tokens.
|
|
9041
|
-
*/
|
|
9042
|
-
|
|
9043
|
-
.muka-license-plate-input {
|
|
9044
|
-
--plate-yellow: #f0ce3d;
|
|
9045
|
-
--plate-blue: #003399;
|
|
9046
|
-
--plate-text: #1a1a1a;
|
|
9047
|
-
--plate-stars: #ffcc00;
|
|
8863
|
+
/* MediaViewer */
|
|
8864
|
+
/* MediaViewer Component Styles - Using Muka Design Tokens */
|
|
9048
8865
|
|
|
9049
|
-
|
|
8866
|
+
/* ─── Native dialog: full viewport ────────────────────── */
|
|
8867
|
+
.muka-media-viewer {
|
|
8868
|
+
position: fixed;
|
|
8869
|
+
inset: 0;
|
|
8870
|
+
width: 100%;
|
|
8871
|
+
height: 100%;
|
|
8872
|
+
max-width: none;
|
|
8873
|
+
max-height: none;
|
|
8874
|
+
margin: 0;
|
|
8875
|
+
padding: 0;
|
|
8876
|
+
border: none;
|
|
8877
|
+
display: flex;
|
|
9050
8878
|
flex-direction: column;
|
|
9051
|
-
gap: var(--spacing-2);
|
|
9052
|
-
}
|
|
9053
|
-
|
|
9054
|
-
/* Plate body */
|
|
9055
|
-
.muka-license-plate-input__plate {
|
|
9056
|
-
display: inline-flex;
|
|
9057
|
-
align-items: stretch;
|
|
9058
|
-
background-color: var(--plate-yellow);
|
|
9059
|
-
border-radius: var(--input-field-radius-md);
|
|
9060
|
-
cursor: text;
|
|
9061
|
-
position: relative;
|
|
9062
8879
|
overflow: hidden;
|
|
9063
|
-
|
|
9064
|
-
|
|
9065
|
-
|
|
9066
|
-
|
|
9067
|
-
outline: 3px solid transparent;
|
|
9068
|
-
outline-offset: 2px;
|
|
9069
|
-
transition: outline-color 0.15s ease, opacity 0.15s ease;
|
|
9070
|
-
}
|
|
9071
|
-
|
|
9072
|
-
/* Size variants — plate aspect echoes the real RDW plate (~5:1) */
|
|
9073
|
-
.muka-license-plate-input__plate--sm {
|
|
9074
|
-
height: 44px;
|
|
9075
|
-
min-width: 220px;
|
|
9076
|
-
border-radius: var(--input-field-radius-sm);
|
|
8880
|
+
overscroll-behavior: contain;
|
|
8881
|
+
color: var(--color-text-default-default);
|
|
8882
|
+
background-color: var(--color-black-alpha-12);
|
|
8883
|
+
animation: muka-media-viewer-in var(--motion-duration-component) var(--motion-easing-enter);
|
|
9077
8884
|
}
|
|
9078
8885
|
|
|
9079
|
-
.muka-
|
|
9080
|
-
|
|
9081
|
-
min-width: 300px;
|
|
9082
|
-
border-radius: var(--input-field-radius-md);
|
|
8886
|
+
.muka-media-viewer:not([open]) {
|
|
8887
|
+
display: none;
|
|
9083
8888
|
}
|
|
9084
8889
|
|
|
9085
|
-
.muka-
|
|
9086
|
-
|
|
9087
|
-
min-width: 400px;
|
|
9088
|
-
border-radius: var(--input-field-radius-lg);
|
|
8890
|
+
.muka-media-viewer::backdrop {
|
|
8891
|
+
background-color: var(--color-black-alpha-12);
|
|
9089
8892
|
}
|
|
9090
8893
|
|
|
9091
|
-
|
|
9092
|
-
|
|
9093
|
-
|
|
8894
|
+
@keyframes muka-media-viewer-in {
|
|
8895
|
+
from {
|
|
8896
|
+
opacity: 0;
|
|
8897
|
+
}
|
|
8898
|
+
to {
|
|
8899
|
+
opacity: 1;
|
|
8900
|
+
}
|
|
9094
8901
|
}
|
|
9095
8902
|
|
|
9096
|
-
/*
|
|
9097
|
-
.muka-
|
|
9098
|
-
|
|
8903
|
+
/* ─── Chrome: TopBar and footer sit on a surface ──────── */
|
|
8904
|
+
.muka-media-viewer__topbar {
|
|
8905
|
+
flex-shrink: 0;
|
|
8906
|
+
background-color: var(--color-surface-level3);
|
|
9099
8907
|
}
|
|
9100
8908
|
|
|
9101
|
-
|
|
9102
|
-
|
|
9103
|
-
|
|
9104
|
-
|
|
8909
|
+
.muka-media-viewer__live {
|
|
8910
|
+
position: absolute;
|
|
8911
|
+
width: 1px;
|
|
8912
|
+
height: 1px;
|
|
8913
|
+
padding: 0;
|
|
8914
|
+
margin: -1px;
|
|
8915
|
+
overflow: hidden;
|
|
8916
|
+
clip: rect(0, 0, 0, 0);
|
|
8917
|
+
white-space: nowrap;
|
|
8918
|
+
border: 0;
|
|
9105
8919
|
}
|
|
9106
8920
|
|
|
9107
|
-
/*
|
|
9108
|
-
.muka-
|
|
9109
|
-
|
|
9110
|
-
flex
|
|
8921
|
+
/* ─── Stage: the dark area the images slide across ────── */
|
|
8922
|
+
.muka-media-viewer__stage {
|
|
8923
|
+
position: relative;
|
|
8924
|
+
flex: 1 1 auto;
|
|
8925
|
+
min-height: 0;
|
|
8926
|
+
overflow: hidden;
|
|
8927
|
+
/* Gestures are handled in JS: no browser panning or pinch on the stage. */
|
|
8928
|
+
touch-action: none;
|
|
8929
|
+
user-select: none;
|
|
8930
|
+
-webkit-user-select: none;
|
|
8931
|
+
}
|
|
8932
|
+
|
|
8933
|
+
.muka-media-viewer__slide {
|
|
8934
|
+
position: absolute;
|
|
8935
|
+
inset: 0;
|
|
8936
|
+
display: flex;
|
|
9111
8937
|
align-items: center;
|
|
9112
8938
|
justify-content: center;
|
|
9113
|
-
|
|
9114
|
-
|
|
9115
|
-
|
|
9116
|
-
padding: 0 0.4em;
|
|
9117
|
-
gap: 0.15em;
|
|
9118
|
-
/* Strip width scales with plate height for a consistent ratio */
|
|
9119
|
-
width: 14%;
|
|
9120
|
-
min-width: 36px;
|
|
8939
|
+
padding: var(--spacing-4);
|
|
8940
|
+
transition: transform var(--motion-duration-component) var(--motion-easing-default);
|
|
8941
|
+
will-change: transform;
|
|
9121
8942
|
}
|
|
9122
8943
|
|
|
9123
|
-
.
|
|
9124
|
-
|
|
9125
|
-
|
|
9126
|
-
aspect-ratio: 1 / 1;
|
|
9127
|
-
display: block;
|
|
8944
|
+
/* While a finger drags, the image follows it without easing. */
|
|
8945
|
+
.muka-media-viewer--dragging .muka-media-viewer__slide {
|
|
8946
|
+
transition: none;
|
|
9128
8947
|
}
|
|
9129
8948
|
|
|
9130
|
-
.muka-
|
|
9131
|
-
|
|
8949
|
+
.muka-media-viewer__image {
|
|
8950
|
+
display: block;
|
|
8951
|
+
max-width: 100%;
|
|
8952
|
+
max-height: 100%;
|
|
8953
|
+
object-fit: contain;
|
|
8954
|
+
/* The image takes touches, so a long press opens the OS menu (save, share,
|
|
8955
|
+
copy). The swipe still works: pointer events bubble to the stage, and a
|
|
8956
|
+
long press doesn't move far enough to start a drag. */
|
|
8957
|
+
-webkit-touch-callout: default;
|
|
9132
8958
|
}
|
|
9133
8959
|
|
|
9134
|
-
|
|
9135
|
-
|
|
8960
|
+
/* ─── Previous / next: devices that can hover ─────────── */
|
|
8961
|
+
.muka-media-viewer__nav {
|
|
8962
|
+
position: absolute;
|
|
8963
|
+
top: 50%;
|
|
8964
|
+
display: none;
|
|
8965
|
+
transform: translateY(-50%);
|
|
8966
|
+
opacity: 0;
|
|
8967
|
+
transition: opacity var(--motion-duration-micro) var(--motion-easing-enter);
|
|
9136
8968
|
}
|
|
9137
8969
|
|
|
9138
|
-
.muka-
|
|
9139
|
-
|
|
9140
|
-
'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
|
|
9141
|
-
font-weight: 700;
|
|
9142
|
-
letter-spacing: 0.04em;
|
|
9143
|
-
line-height: 1;
|
|
9144
|
-
color: #ffffff;
|
|
8970
|
+
.muka-media-viewer__nav--previous {
|
|
8971
|
+
left: var(--spacing-4);
|
|
9145
8972
|
}
|
|
9146
8973
|
|
|
9147
|
-
.muka-
|
|
9148
|
-
|
|
8974
|
+
.muka-media-viewer__nav--next {
|
|
8975
|
+
right: var(--spacing-4);
|
|
9149
8976
|
}
|
|
9150
8977
|
|
|
9151
|
-
|
|
9152
|
-
|
|
9153
|
-
|
|
8978
|
+
@media (hover: hover) and (pointer: fine) {
|
|
8979
|
+
.muka-media-viewer__nav {
|
|
8980
|
+
display: block;
|
|
8981
|
+
}
|
|
9154
8982
|
|
|
9155
|
-
.muka-
|
|
9156
|
-
|
|
8983
|
+
.muka-media-viewer__stage:hover .muka-media-viewer__nav,
|
|
8984
|
+
.muka-media-viewer__nav:focus-within {
|
|
8985
|
+
opacity: 1;
|
|
8986
|
+
}
|
|
9157
8987
|
}
|
|
9158
8988
|
|
|
9159
|
-
/*
|
|
9160
|
-
.muka-
|
|
9161
|
-
flex:
|
|
9162
|
-
|
|
9163
|
-
|
|
9164
|
-
|
|
9165
|
-
|
|
9166
|
-
|
|
9167
|
-
|
|
9168
|
-
text-transform: uppercase;
|
|
9169
|
-
letter-spacing: 0.06em;
|
|
9170
|
-
/* Plate font — bold condensed sans is closest to the FE-Schrift look without
|
|
9171
|
-
shipping a custom font. JetBrains Mono is the system mono brand font. */
|
|
9172
|
-
font-family:
|
|
9173
|
-
'Arial Narrow', 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
|
9174
|
-
font-weight: 800;
|
|
9175
|
-
padding: 0 0.5em;
|
|
9176
|
-
width: 100%;
|
|
9177
|
-
caret-color: var(--plate-text);
|
|
8989
|
+
/* ─── Footer: caption, meta and actions ───────────────── */
|
|
8990
|
+
.muka-media-viewer__footer {
|
|
8991
|
+
flex-shrink: 0;
|
|
8992
|
+
display: flex;
|
|
8993
|
+
flex-direction: column;
|
|
8994
|
+
gap: var(--spacing-3);
|
|
8995
|
+
padding: var(--spacing-4);
|
|
8996
|
+
padding-bottom: calc(var(--spacing-4) + env(safe-area-inset-bottom, 0px));
|
|
8997
|
+
background-color: var(--color-surface-level3);
|
|
9178
8998
|
}
|
|
9179
8999
|
|
|
9180
|
-
.muka-
|
|
9181
|
-
|
|
9000
|
+
.muka-media-viewer__details {
|
|
9001
|
+
display: flex;
|
|
9002
|
+
align-items: flex-start;
|
|
9003
|
+
justify-content: space-between;
|
|
9004
|
+
gap: var(--spacing-3);
|
|
9182
9005
|
}
|
|
9183
9006
|
|
|
9184
|
-
.muka-
|
|
9185
|
-
|
|
9007
|
+
.muka-media-viewer__caption {
|
|
9008
|
+
min-width: 0;
|
|
9009
|
+
color: var(--color-text-subtle-default);
|
|
9010
|
+
font-family: var(--text-body-sm-regular-fontFamily);
|
|
9011
|
+
font-size: var(--text-body-sm-regular-fontSize);
|
|
9012
|
+
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
9013
|
+
line-height: var(--text-body-sm-regular-lineHeight);
|
|
9014
|
+
overflow-wrap: anywhere;
|
|
9186
9015
|
}
|
|
9187
9016
|
|
|
9188
|
-
.muka-
|
|
9189
|
-
|
|
9017
|
+
.muka-media-viewer__meta {
|
|
9018
|
+
flex-shrink: 0;
|
|
9190
9019
|
}
|
|
9191
9020
|
|
|
9192
|
-
.muka-
|
|
9193
|
-
|
|
9194
|
-
|
|
9195
|
-
|
|
9196
|
-
letter-spacing: 0.08em;
|
|
9021
|
+
.muka-media-viewer__actions {
|
|
9022
|
+
display: flex;
|
|
9023
|
+
flex-wrap: wrap;
|
|
9024
|
+
gap: var(--spacing-2);
|
|
9197
9025
|
}
|
|
9198
9026
|
|
|
9199
|
-
|
|
9200
|
-
|
|
9201
|
-
|
|
9027
|
+
/* Mobile: actions stack full width, like Dialog footers. */
|
|
9028
|
+
@media (max-width: 1023px) {
|
|
9029
|
+
.muka-media-viewer__actions {
|
|
9030
|
+
flex-direction: column;
|
|
9031
|
+
}
|
|
9202
9032
|
|
|
9203
|
-
|
|
9204
|
-
|
|
9205
|
-
|
|
9206
|
-
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
9207
|
-
font-size: var(--text-label-sm-regular-fontSize);
|
|
9208
|
-
line-height: var(--text-label-sm-regular-lineHeight);
|
|
9209
|
-
color: var(--color-text-subtle-default);
|
|
9210
|
-
margin: 0;
|
|
9033
|
+
.muka-media-viewer__actions > * {
|
|
9034
|
+
width: 100%;
|
|
9035
|
+
}
|
|
9211
9036
|
}
|
|
9212
9037
|
|
|
9213
|
-
/*
|
|
9214
|
-
|
|
9215
|
-
|
|
9216
|
-
|
|
9217
|
-
|
|
9218
|
-
|
|
9219
|
-
|
|
9220
|
-
|
|
9038
|
+
/* ─── Reduced motion ──────────────────────────────────── */
|
|
9039
|
+
@media (prefers-reduced-motion: reduce) {
|
|
9040
|
+
.muka-media-viewer,
|
|
9041
|
+
.muka-media-viewer__slide,
|
|
9042
|
+
.muka-media-viewer__nav {
|
|
9043
|
+
animation: none;
|
|
9044
|
+
transition: none;
|
|
9045
|
+
}
|
|
9221
9046
|
}
|
|
9222
9047
|
|
|
9223
9048
|
|
|
@@ -9440,38 +9265,231 @@ li.muka-listitem {
|
|
|
9440
9265
|
}
|
|
9441
9266
|
|
|
9442
9267
|
|
|
9443
|
-
/*
|
|
9444
|
-
/*
|
|
9268
|
+
/* LicensePlateInput */
|
|
9269
|
+
/* LicensePlateInput — Dutch RDW-style plate input
|
|
9270
|
+
*
|
|
9271
|
+
* Plate body colors are regulatory (EU/NL) and intentionally fixed:
|
|
9272
|
+
* - Plate yellow: #F0CE3D
|
|
9273
|
+
* - EU strip blue: #003399
|
|
9274
|
+
* - EU stars yellow: #FFCC00
|
|
9275
|
+
* - Plate text: #1A1A1A
|
|
9276
|
+
*
|
|
9277
|
+
* All surrounding UI (label, helper, focus ring, error border) uses Muka tokens.
|
|
9278
|
+
*/
|
|
9279
|
+
|
|
9280
|
+
.muka-license-plate-input {
|
|
9281
|
+
--plate-yellow: #f0ce3d;
|
|
9282
|
+
--plate-blue: #003399;
|
|
9283
|
+
--plate-text: #1a1a1a;
|
|
9284
|
+
--plate-stars: #ffcc00;
|
|
9445
9285
|
|
|
9446
|
-
/* Wrapper — label, field, helper spacing per Figma */
|
|
9447
|
-
.muka-input {
|
|
9448
9286
|
display: inline-flex;
|
|
9449
9287
|
flex-direction: column;
|
|
9450
9288
|
gap: var(--spacing-2);
|
|
9451
9289
|
}
|
|
9452
9290
|
|
|
9453
|
-
|
|
9454
|
-
|
|
9455
|
-
|
|
9456
|
-
|
|
9457
|
-
|
|
9458
|
-
|
|
9459
|
-
|
|
9460
|
-
|
|
9291
|
+
/* Plate body */
|
|
9292
|
+
.muka-license-plate-input__plate {
|
|
9293
|
+
display: inline-flex;
|
|
9294
|
+
align-items: stretch;
|
|
9295
|
+
background-color: var(--plate-yellow);
|
|
9296
|
+
border-radius: var(--input-field-radius-md);
|
|
9297
|
+
cursor: text;
|
|
9298
|
+
position: relative;
|
|
9299
|
+
overflow: hidden;
|
|
9300
|
+
box-sizing: border-box;
|
|
9301
|
+
/* Subtle outline to lift the plate from light backgrounds */
|
|
9302
|
+
box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08);
|
|
9303
|
+
/* Reserve space for the focus / error solid ring without shifting layout */
|
|
9304
|
+
outline: 3px solid transparent;
|
|
9305
|
+
outline-offset: 2px;
|
|
9306
|
+
transition: outline-color 0.15s ease, opacity 0.15s ease;
|
|
9461
9307
|
}
|
|
9462
9308
|
|
|
9463
|
-
|
|
9464
|
-
|
|
9465
|
-
|
|
9466
|
-
|
|
9467
|
-
|
|
9309
|
+
/* Size variants — plate aspect echoes the real RDW plate (~5:1) */
|
|
9310
|
+
.muka-license-plate-input__plate--sm {
|
|
9311
|
+
height: 44px;
|
|
9312
|
+
min-width: 220px;
|
|
9313
|
+
border-radius: var(--input-field-radius-sm);
|
|
9468
9314
|
}
|
|
9469
9315
|
|
|
9470
|
-
.muka-
|
|
9471
|
-
|
|
9472
|
-
|
|
9473
|
-
|
|
9474
|
-
|
|
9316
|
+
.muka-license-plate-input__plate--md {
|
|
9317
|
+
height: 60px;
|
|
9318
|
+
min-width: 300px;
|
|
9319
|
+
border-radius: var(--input-field-radius-md);
|
|
9320
|
+
}
|
|
9321
|
+
|
|
9322
|
+
.muka-license-plate-input__plate--lg {
|
|
9323
|
+
height: 80px;
|
|
9324
|
+
min-width: 400px;
|
|
9325
|
+
border-radius: var(--input-field-radius-lg);
|
|
9326
|
+
}
|
|
9327
|
+
|
|
9328
|
+
/* Focus — solid outline ring */
|
|
9329
|
+
.muka-license-plate-input__plate--focused:not(.muka-license-plate-input__plate--disabled) {
|
|
9330
|
+
outline-color: var(--input-field-color-focus-border);
|
|
9331
|
+
}
|
|
9332
|
+
|
|
9333
|
+
/* Error — solid outline ring in error color */
|
|
9334
|
+
.muka-license-plate-input__plate--error:not(.muka-license-plate-input__plate--disabled) {
|
|
9335
|
+
outline-color: var(--input-field-color-error-border);
|
|
9336
|
+
}
|
|
9337
|
+
|
|
9338
|
+
/* Disabled */
|
|
9339
|
+
.muka-license-plate-input__plate--disabled {
|
|
9340
|
+
cursor: not-allowed;
|
|
9341
|
+
opacity: 0.55;
|
|
9342
|
+
}
|
|
9343
|
+
|
|
9344
|
+
/* EU strip */
|
|
9345
|
+
.muka-license-plate-input__eu-strip {
|
|
9346
|
+
display: inline-flex;
|
|
9347
|
+
flex-direction: column;
|
|
9348
|
+
align-items: center;
|
|
9349
|
+
justify-content: center;
|
|
9350
|
+
background-color: var(--plate-blue);
|
|
9351
|
+
color: #ffffff;
|
|
9352
|
+
flex-shrink: 0;
|
|
9353
|
+
padding: 0 0.4em;
|
|
9354
|
+
gap: 0.15em;
|
|
9355
|
+
/* Strip width scales with plate height for a consistent ratio */
|
|
9356
|
+
width: 14%;
|
|
9357
|
+
min-width: 36px;
|
|
9358
|
+
}
|
|
9359
|
+
|
|
9360
|
+
.muka-license-plate-input__eu-stars {
|
|
9361
|
+
width: 60%;
|
|
9362
|
+
max-width: 28px;
|
|
9363
|
+
aspect-ratio: 1 / 1;
|
|
9364
|
+
display: block;
|
|
9365
|
+
}
|
|
9366
|
+
|
|
9367
|
+
.muka-license-plate-input__plate--sm .muka-license-plate-input__eu-stars {
|
|
9368
|
+
max-width: 20px;
|
|
9369
|
+
}
|
|
9370
|
+
|
|
9371
|
+
.muka-license-plate-input__plate--lg .muka-license-plate-input__eu-stars {
|
|
9372
|
+
max-width: 36px;
|
|
9373
|
+
}
|
|
9374
|
+
|
|
9375
|
+
.muka-license-plate-input__country-code {
|
|
9376
|
+
font-family:
|
|
9377
|
+
'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
|
|
9378
|
+
font-weight: 700;
|
|
9379
|
+
letter-spacing: 0.04em;
|
|
9380
|
+
line-height: 1;
|
|
9381
|
+
color: #ffffff;
|
|
9382
|
+
}
|
|
9383
|
+
|
|
9384
|
+
.muka-license-plate-input__plate--sm .muka-license-plate-input__country-code {
|
|
9385
|
+
font-size: 10px;
|
|
9386
|
+
}
|
|
9387
|
+
|
|
9388
|
+
.muka-license-plate-input__plate--md .muka-license-plate-input__country-code {
|
|
9389
|
+
font-size: 13px;
|
|
9390
|
+
}
|
|
9391
|
+
|
|
9392
|
+
.muka-license-plate-input__plate--lg .muka-license-plate-input__country-code {
|
|
9393
|
+
font-size: 16px;
|
|
9394
|
+
}
|
|
9395
|
+
|
|
9396
|
+
/* Native input */
|
|
9397
|
+
.muka-license-plate-input__native {
|
|
9398
|
+
flex: 1;
|
|
9399
|
+
min-width: 0;
|
|
9400
|
+
border: none;
|
|
9401
|
+
outline: none;
|
|
9402
|
+
background: transparent;
|
|
9403
|
+
color: var(--plate-text);
|
|
9404
|
+
text-align: center;
|
|
9405
|
+
text-transform: uppercase;
|
|
9406
|
+
letter-spacing: 0.06em;
|
|
9407
|
+
/* Plate font — bold condensed sans is closest to the FE-Schrift look without
|
|
9408
|
+
shipping a custom font. JetBrains Mono is the system mono brand font. */
|
|
9409
|
+
font-family:
|
|
9410
|
+
'Arial Narrow', 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
|
9411
|
+
font-weight: 800;
|
|
9412
|
+
padding: 0 0.5em;
|
|
9413
|
+
width: 100%;
|
|
9414
|
+
caret-color: var(--plate-text);
|
|
9415
|
+
}
|
|
9416
|
+
|
|
9417
|
+
.muka-license-plate-input__plate--sm .muka-license-plate-input__native {
|
|
9418
|
+
font-size: 22px;
|
|
9419
|
+
}
|
|
9420
|
+
|
|
9421
|
+
.muka-license-plate-input__plate--md .muka-license-plate-input__native {
|
|
9422
|
+
font-size: 30px;
|
|
9423
|
+
}
|
|
9424
|
+
|
|
9425
|
+
.muka-license-plate-input__plate--lg .muka-license-plate-input__native {
|
|
9426
|
+
font-size: 42px;
|
|
9427
|
+
}
|
|
9428
|
+
|
|
9429
|
+
.muka-license-plate-input__native::placeholder {
|
|
9430
|
+
color: var(--plate-text);
|
|
9431
|
+
opacity: 0.55;
|
|
9432
|
+
font-weight: 700;
|
|
9433
|
+
letter-spacing: 0.08em;
|
|
9434
|
+
}
|
|
9435
|
+
|
|
9436
|
+
.muka-license-plate-input__plate--disabled .muka-license-plate-input__native {
|
|
9437
|
+
cursor: not-allowed;
|
|
9438
|
+
}
|
|
9439
|
+
|
|
9440
|
+
/* Helper text */
|
|
9441
|
+
.muka-license-plate-input__helper {
|
|
9442
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
9443
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
9444
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
9445
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
9446
|
+
color: var(--color-text-subtle-default);
|
|
9447
|
+
margin: 0;
|
|
9448
|
+
}
|
|
9449
|
+
|
|
9450
|
+
/* Error message */
|
|
9451
|
+
.muka-license-plate-input__error {
|
|
9452
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
9453
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
9454
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
9455
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
9456
|
+
color: var(--color-state-error-default);
|
|
9457
|
+
margin: 0;
|
|
9458
|
+
}
|
|
9459
|
+
|
|
9460
|
+
|
|
9461
|
+
/* Input */
|
|
9462
|
+
/* Input Component Styles - Using Muka Design Tokens */
|
|
9463
|
+
|
|
9464
|
+
/* Wrapper — label, field, helper spacing per Figma */
|
|
9465
|
+
.muka-input {
|
|
9466
|
+
display: inline-flex;
|
|
9467
|
+
flex-direction: column;
|
|
9468
|
+
gap: var(--spacing-2);
|
|
9469
|
+
}
|
|
9470
|
+
|
|
9471
|
+
.muka-input--full-width {
|
|
9472
|
+
width: 100%;
|
|
9473
|
+
}
|
|
9474
|
+
|
|
9475
|
+
/* Label */
|
|
9476
|
+
.muka-input__label {
|
|
9477
|
+
color: var(--color-text-default-default);
|
|
9478
|
+
cursor: pointer;
|
|
9479
|
+
}
|
|
9480
|
+
|
|
9481
|
+
.muka-input__label--sm {
|
|
9482
|
+
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
9483
|
+
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
9484
|
+
font-size: var(--text-label-sm-semibold-fontSize);
|
|
9485
|
+
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
9486
|
+
}
|
|
9487
|
+
|
|
9488
|
+
.muka-input__label--md {
|
|
9489
|
+
font-family: var(--text-label-md-semibold-fontFamily);
|
|
9490
|
+
font-weight: var(--text-label-md-semibold-fontWeight);
|
|
9491
|
+
font-size: var(--text-label-md-semibold-fontSize);
|
|
9492
|
+
line-height: var(--text-label-md-semibold-lineHeight);
|
|
9475
9493
|
}
|
|
9476
9494
|
|
|
9477
9495
|
.muka-input__label--lg {
|
|
@@ -9721,60 +9739,6 @@ li.muka-listitem {
|
|
|
9721
9739
|
}
|
|
9722
9740
|
|
|
9723
9741
|
|
|
9724
|
-
/* Icon */
|
|
9725
|
-
/* Icon Component Styles - Using Muka Design Tokens */
|
|
9726
|
-
|
|
9727
|
-
.muka-icon {
|
|
9728
|
-
display: inline-flex;
|
|
9729
|
-
align-items: center;
|
|
9730
|
-
justify-content: center;
|
|
9731
|
-
flex-shrink: 0;
|
|
9732
|
-
color: var(--color-icon-default-default, currentColor);
|
|
9733
|
-
}
|
|
9734
|
-
|
|
9735
|
-
/* Icons inside buttons should inherit from button's foreground color */
|
|
9736
|
-
.muka-button .muka-icon {
|
|
9737
|
-
color: inherit;
|
|
9738
|
-
}
|
|
9739
|
-
|
|
9740
|
-
.muka-icon--subtle {
|
|
9741
|
-
color: var(--color-icon-subtle-default);
|
|
9742
|
-
}
|
|
9743
|
-
|
|
9744
|
-
.muka-icon--muted {
|
|
9745
|
-
color: var(--color-icon-muted-default);
|
|
9746
|
-
}
|
|
9747
|
-
|
|
9748
|
-
.muka-icon--inverse {
|
|
9749
|
-
color: var(--color-icon-default-inverse);
|
|
9750
|
-
}
|
|
9751
|
-
|
|
9752
|
-
.muka-icon--xs {
|
|
9753
|
-
width: var(--icon-size-xs);
|
|
9754
|
-
height: var(--icon-size-xs);
|
|
9755
|
-
}
|
|
9756
|
-
|
|
9757
|
-
.muka-icon--sm {
|
|
9758
|
-
width: var(--icon-size-sm);
|
|
9759
|
-
height: var(--icon-size-sm);
|
|
9760
|
-
}
|
|
9761
|
-
|
|
9762
|
-
.muka-icon--md {
|
|
9763
|
-
width: var(--icon-size-default);
|
|
9764
|
-
height: var(--icon-size-default);
|
|
9765
|
-
}
|
|
9766
|
-
|
|
9767
|
-
.muka-icon--lg {
|
|
9768
|
-
width: var(--icon-size-lg);
|
|
9769
|
-
height: var(--icon-size-lg);
|
|
9770
|
-
}
|
|
9771
|
-
|
|
9772
|
-
.muka-icon svg {
|
|
9773
|
-
width: 100%;
|
|
9774
|
-
height: 100%;
|
|
9775
|
-
}
|
|
9776
|
-
|
|
9777
|
-
|
|
9778
9742
|
/* Form */
|
|
9779
9743
|
.muka-form {
|
|
9780
9744
|
display: flex;
|
|
@@ -10057,33 +10021,87 @@ li.muka-listitem {
|
|
|
10057
10021
|
}
|
|
10058
10022
|
|
|
10059
10023
|
|
|
10060
|
-
/*
|
|
10061
|
-
/*
|
|
10062
|
-
|
|
10063
|
-
.muka-fab {
|
|
10064
|
-
position: fixed;
|
|
10065
|
-
z-index: 40;
|
|
10024
|
+
/* Icon */
|
|
10025
|
+
/* Icon Component Styles - Using Muka Design Tokens */
|
|
10066
10026
|
|
|
10027
|
+
.muka-icon {
|
|
10067
10028
|
display: inline-flex;
|
|
10068
10029
|
align-items: center;
|
|
10069
10030
|
justify-content: center;
|
|
10070
|
-
|
|
10071
|
-
|
|
10072
|
-
|
|
10073
|
-
cursor: pointer;
|
|
10074
|
-
font-family: inherit;
|
|
10075
|
-
box-shadow: var(--shadow-level4);
|
|
10031
|
+
flex-shrink: 0;
|
|
10032
|
+
color: var(--color-icon-default-default, currentColor);
|
|
10033
|
+
}
|
|
10076
10034
|
|
|
10077
|
-
|
|
10078
|
-
|
|
10035
|
+
/* Icons inside buttons should inherit from button's foreground color */
|
|
10036
|
+
.muka-button .muka-icon {
|
|
10037
|
+
color: inherit;
|
|
10079
10038
|
}
|
|
10080
10039
|
|
|
10081
|
-
.muka-
|
|
10082
|
-
|
|
10083
|
-
box-shadow: var(--shadow-level3);
|
|
10040
|
+
.muka-icon--subtle {
|
|
10041
|
+
color: var(--color-icon-subtle-default);
|
|
10084
10042
|
}
|
|
10085
10043
|
|
|
10086
|
-
.muka-
|
|
10044
|
+
.muka-icon--muted {
|
|
10045
|
+
color: var(--color-icon-muted-default);
|
|
10046
|
+
}
|
|
10047
|
+
|
|
10048
|
+
.muka-icon--inverse {
|
|
10049
|
+
color: var(--color-icon-default-inverse);
|
|
10050
|
+
}
|
|
10051
|
+
|
|
10052
|
+
.muka-icon--xs {
|
|
10053
|
+
width: var(--icon-size-xs);
|
|
10054
|
+
height: var(--icon-size-xs);
|
|
10055
|
+
}
|
|
10056
|
+
|
|
10057
|
+
.muka-icon--sm {
|
|
10058
|
+
width: var(--icon-size-sm);
|
|
10059
|
+
height: var(--icon-size-sm);
|
|
10060
|
+
}
|
|
10061
|
+
|
|
10062
|
+
.muka-icon--md {
|
|
10063
|
+
width: var(--icon-size-default);
|
|
10064
|
+
height: var(--icon-size-default);
|
|
10065
|
+
}
|
|
10066
|
+
|
|
10067
|
+
.muka-icon--lg {
|
|
10068
|
+
width: var(--icon-size-lg);
|
|
10069
|
+
height: var(--icon-size-lg);
|
|
10070
|
+
}
|
|
10071
|
+
|
|
10072
|
+
.muka-icon svg {
|
|
10073
|
+
width: 100%;
|
|
10074
|
+
height: 100%;
|
|
10075
|
+
}
|
|
10076
|
+
|
|
10077
|
+
|
|
10078
|
+
/* FAB */
|
|
10079
|
+
/* FAB (Floating Action Button) Component Styles */
|
|
10080
|
+
|
|
10081
|
+
.muka-fab {
|
|
10082
|
+
position: fixed;
|
|
10083
|
+
z-index: 40;
|
|
10084
|
+
|
|
10085
|
+
display: inline-flex;
|
|
10086
|
+
align-items: center;
|
|
10087
|
+
justify-content: center;
|
|
10088
|
+
gap: var(--spacing-2);
|
|
10089
|
+
|
|
10090
|
+
border: none;
|
|
10091
|
+
cursor: pointer;
|
|
10092
|
+
font-family: inherit;
|
|
10093
|
+
box-shadow: var(--shadow-level4);
|
|
10094
|
+
|
|
10095
|
+
transition: transform 0.12s ease, box-shadow 0.12s ease, background-color 0.12s ease;
|
|
10096
|
+
-webkit-tap-highlight-color: transparent;
|
|
10097
|
+
}
|
|
10098
|
+
|
|
10099
|
+
.muka-fab:active {
|
|
10100
|
+
transform: scale(0.96);
|
|
10101
|
+
box-shadow: var(--shadow-level3);
|
|
10102
|
+
}
|
|
10103
|
+
|
|
10104
|
+
.muka-fab:focus-visible {
|
|
10087
10105
|
outline: 2px solid var(--color-action-default);
|
|
10088
10106
|
outline-offset: 2px;
|
|
10089
10107
|
}
|
|
@@ -10198,25 +10216,144 @@ li.muka-listitem {
|
|
|
10198
10216
|
}
|
|
10199
10217
|
|
|
10200
10218
|
|
|
10201
|
-
/*
|
|
10202
|
-
/*
|
|
10219
|
+
/* EmptyState */
|
|
10220
|
+
/* EmptyState Component Styles - Using Muka Design Tokens */
|
|
10203
10221
|
|
|
10204
|
-
.muka-
|
|
10205
|
-
display:
|
|
10206
|
-
|
|
10207
|
-
|
|
10208
|
-
|
|
10209
|
-
|
|
10210
|
-
|
|
10211
|
-
|
|
10212
|
-
|
|
10213
|
-
border-radius: var(--radius-lg);
|
|
10214
|
-
box-shadow: var(--menu-content-shadow, 0 4px 12px rgba(0, 0, 0, 0.12));
|
|
10222
|
+
.muka-emptystate {
|
|
10223
|
+
display: flex;
|
|
10224
|
+
flex-direction: column;
|
|
10225
|
+
align-items: center;
|
|
10226
|
+
justify-content: center;
|
|
10227
|
+
gap: var(--emptystate-container-gap);
|
|
10228
|
+
max-width: var(--emptystate-container-maxWidth);
|
|
10229
|
+
margin: 0 auto;
|
|
10230
|
+
text-align: center;
|
|
10215
10231
|
}
|
|
10216
10232
|
|
|
10217
|
-
|
|
10218
|
-
|
|
10219
|
-
|
|
10233
|
+
/* Alignment variants */
|
|
10234
|
+
.muka-emptystate--left {
|
|
10235
|
+
align-items: flex-start;
|
|
10236
|
+
text-align: left;
|
|
10237
|
+
}
|
|
10238
|
+
|
|
10239
|
+
/* Size variants */
|
|
10240
|
+
.muka-emptystate--sm {
|
|
10241
|
+
padding: var(--emptystate-container-padding-sm);
|
|
10242
|
+
}
|
|
10243
|
+
|
|
10244
|
+
.muka-emptystate--md {
|
|
10245
|
+
padding: var(--emptystate-container-padding-md);
|
|
10246
|
+
}
|
|
10247
|
+
|
|
10248
|
+
.muka-emptystate--lg {
|
|
10249
|
+
padding: var(--emptystate-container-padding-lg);
|
|
10250
|
+
}
|
|
10251
|
+
|
|
10252
|
+
/* Visual (icon or illustration) */
|
|
10253
|
+
.muka-emptystate__visual {
|
|
10254
|
+
display: flex;
|
|
10255
|
+
align-items: center;
|
|
10256
|
+
justify-content: center;
|
|
10257
|
+
color: var(--emptystate-icon-color);
|
|
10258
|
+
flex-shrink: 0;
|
|
10259
|
+
}
|
|
10260
|
+
|
|
10261
|
+
.muka-emptystate--sm .muka-emptystate__visual {
|
|
10262
|
+
width: var(--emptystate-icon-size-sm);
|
|
10263
|
+
height: var(--emptystate-icon-size-sm);
|
|
10264
|
+
}
|
|
10265
|
+
|
|
10266
|
+
.muka-emptystate--md .muka-emptystate__visual {
|
|
10267
|
+
width: var(--emptystate-icon-size-md);
|
|
10268
|
+
height: var(--emptystate-icon-size-md);
|
|
10269
|
+
}
|
|
10270
|
+
|
|
10271
|
+
.muka-emptystate--lg .muka-emptystate__visual {
|
|
10272
|
+
width: var(--emptystate-icon-size-lg);
|
|
10273
|
+
height: var(--emptystate-icon-size-lg);
|
|
10274
|
+
}
|
|
10275
|
+
|
|
10276
|
+
.muka-emptystate__visual svg {
|
|
10277
|
+
width: 100%;
|
|
10278
|
+
height: 100%;
|
|
10279
|
+
}
|
|
10280
|
+
|
|
10281
|
+
.muka-emptystate__visual img {
|
|
10282
|
+
width: 100%;
|
|
10283
|
+
height: 100%;
|
|
10284
|
+
object-fit: contain;
|
|
10285
|
+
}
|
|
10286
|
+
|
|
10287
|
+
/* Content */
|
|
10288
|
+
.muka-emptystate__content {
|
|
10289
|
+
display: flex;
|
|
10290
|
+
flex-direction: column;
|
|
10291
|
+
gap: var(--spacing-2);
|
|
10292
|
+
}
|
|
10293
|
+
|
|
10294
|
+
.muka-emptystate--left .muka-emptystate__content {
|
|
10295
|
+
align-items: flex-start;
|
|
10296
|
+
}
|
|
10297
|
+
|
|
10298
|
+
/* Title */
|
|
10299
|
+
.muka-emptystate__title {
|
|
10300
|
+
color: var(--emptystate-title-color);
|
|
10301
|
+
margin: 0;
|
|
10302
|
+
font-family: var(--text-heading-sm-fontFamily);
|
|
10303
|
+
font-weight: var(--text-heading-sm-fontWeight);
|
|
10304
|
+
font-size: var(--text-heading-sm-fontSize);
|
|
10305
|
+
line-height: var(--text-heading-sm-lineHeight);
|
|
10306
|
+
}
|
|
10307
|
+
|
|
10308
|
+
.muka-emptystate--sm .muka-emptystate__title {
|
|
10309
|
+
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
10310
|
+
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
10311
|
+
font-size: var(--text-label-lg-semibold-fontSize);
|
|
10312
|
+
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
10313
|
+
}
|
|
10314
|
+
|
|
10315
|
+
.muka-emptystate--lg .muka-emptystate__title {
|
|
10316
|
+
font-family: var(--text-heading-md-fontFamily);
|
|
10317
|
+
font-weight: var(--text-heading-md-fontWeight);
|
|
10318
|
+
font-size: var(--text-heading-md-fontSize);
|
|
10319
|
+
line-height: var(--text-heading-md-lineHeight);
|
|
10320
|
+
}
|
|
10321
|
+
|
|
10322
|
+
/* Description */
|
|
10323
|
+
.muka-emptystate__description {
|
|
10324
|
+
color: var(--emptystate-description-color);
|
|
10325
|
+
margin: 0;
|
|
10326
|
+
font-family: var(--text-body-sm-regular-fontFamily);
|
|
10327
|
+
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
10328
|
+
font-size: var(--text-body-sm-regular-fontSize);
|
|
10329
|
+
line-height: var(--text-body-sm-regular-lineHeight);
|
|
10330
|
+
}
|
|
10331
|
+
|
|
10332
|
+
.muka-emptystate--md .muka-emptystate__description {
|
|
10333
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
10334
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
10335
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
10336
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
10337
|
+
}
|
|
10338
|
+
|
|
10339
|
+
.muka-emptystate--lg .muka-emptystate__description {
|
|
10340
|
+
font-family: var(--text-body-lg-regular-fontFamily);
|
|
10341
|
+
font-weight: var(--text-body-lg-regular-fontWeight);
|
|
10342
|
+
font-size: var(--text-body-lg-regular-fontSize);
|
|
10343
|
+
line-height: var(--text-body-lg-regular-lineHeight);
|
|
10344
|
+
}
|
|
10345
|
+
|
|
10346
|
+
/* Actions */
|
|
10347
|
+
.muka-emptystate__actions {
|
|
10348
|
+
display: flex;
|
|
10349
|
+
gap: var(--emptystate-actions-gap);
|
|
10350
|
+
margin-top: var(--emptystate-actions-marginTop);
|
|
10351
|
+
flex-wrap: wrap;
|
|
10352
|
+
justify-content: center;
|
|
10353
|
+
}
|
|
10354
|
+
|
|
10355
|
+
.muka-emptystate--left .muka-emptystate__actions {
|
|
10356
|
+
justify-content: flex-start;
|
|
10220
10357
|
}
|
|
10221
10358
|
|
|
10222
10359
|
|
|
@@ -10448,6 +10585,28 @@ li.muka-listitem {
|
|
|
10448
10585
|
}
|
|
10449
10586
|
|
|
10450
10587
|
|
|
10588
|
+
/* EmojiPicker */
|
|
10589
|
+
/* EmojiPicker Component Styles */
|
|
10590
|
+
|
|
10591
|
+
.muka-emoji-picker {
|
|
10592
|
+
display: grid;
|
|
10593
|
+
grid-template-columns: repeat(8, 1fr);
|
|
10594
|
+
gap: var(--spacing-1);
|
|
10595
|
+
padding: var(--spacing-2);
|
|
10596
|
+
max-height: 12rem;
|
|
10597
|
+
overflow-y: auto;
|
|
10598
|
+
background: var(--color-surface-level2);
|
|
10599
|
+
border: var(--border-width-regular, 1px) solid var(--color-border-default);
|
|
10600
|
+
border-radius: var(--radius-lg);
|
|
10601
|
+
box-shadow: var(--menu-content-shadow, 0 4px 12px rgba(0, 0, 0, 0.12));
|
|
10602
|
+
}
|
|
10603
|
+
|
|
10604
|
+
.muka-emoji-picker__glyph {
|
|
10605
|
+
font-size: 1.25rem;
|
|
10606
|
+
line-height: 1;
|
|
10607
|
+
}
|
|
10608
|
+
|
|
10609
|
+
|
|
10451
10610
|
/* Drawer */
|
|
10452
10611
|
/* Drawer Component Styles */
|
|
10453
10612
|
|
|
@@ -11181,156 +11340,15 @@ li.muka-listitem {
|
|
|
11181
11340
|
}
|
|
11182
11341
|
|
|
11183
11342
|
|
|
11184
|
-
/*
|
|
11185
|
-
/*
|
|
11343
|
+
/* DatePicker */
|
|
11344
|
+
/* DatePicker — compact native date field. */
|
|
11345
|
+
/* Field/label/helper styling is inherited from ../Input/Input.css. */
|
|
11186
11346
|
|
|
11187
|
-
.
|
|
11188
|
-
|
|
11189
|
-
|
|
11190
|
-
|
|
11191
|
-
|
|
11192
|
-
gap: var(--emptystate-container-gap);
|
|
11193
|
-
max-width: var(--emptystate-container-maxWidth);
|
|
11194
|
-
margin: 0 auto;
|
|
11195
|
-
text-align: center;
|
|
11196
|
-
}
|
|
11197
|
-
|
|
11198
|
-
/* Alignment variants */
|
|
11199
|
-
.muka-emptystate--left {
|
|
11200
|
-
align-items: flex-start;
|
|
11201
|
-
text-align: left;
|
|
11202
|
-
}
|
|
11203
|
-
|
|
11204
|
-
/* Size variants */
|
|
11205
|
-
.muka-emptystate--sm {
|
|
11206
|
-
padding: var(--emptystate-container-padding-sm);
|
|
11207
|
-
}
|
|
11208
|
-
|
|
11209
|
-
.muka-emptystate--md {
|
|
11210
|
-
padding: var(--emptystate-container-padding-md);
|
|
11211
|
-
}
|
|
11212
|
-
|
|
11213
|
-
.muka-emptystate--lg {
|
|
11214
|
-
padding: var(--emptystate-container-padding-lg);
|
|
11215
|
-
}
|
|
11216
|
-
|
|
11217
|
-
/* Visual (icon or illustration) */
|
|
11218
|
-
.muka-emptystate__visual {
|
|
11219
|
-
display: flex;
|
|
11220
|
-
align-items: center;
|
|
11221
|
-
justify-content: center;
|
|
11222
|
-
color: var(--emptystate-icon-color);
|
|
11223
|
-
flex-shrink: 0;
|
|
11224
|
-
}
|
|
11225
|
-
|
|
11226
|
-
.muka-emptystate--sm .muka-emptystate__visual {
|
|
11227
|
-
width: var(--emptystate-icon-size-sm);
|
|
11228
|
-
height: var(--emptystate-icon-size-sm);
|
|
11229
|
-
}
|
|
11230
|
-
|
|
11231
|
-
.muka-emptystate--md .muka-emptystate__visual {
|
|
11232
|
-
width: var(--emptystate-icon-size-md);
|
|
11233
|
-
height: var(--emptystate-icon-size-md);
|
|
11234
|
-
}
|
|
11235
|
-
|
|
11236
|
-
.muka-emptystate--lg .muka-emptystate__visual {
|
|
11237
|
-
width: var(--emptystate-icon-size-lg);
|
|
11238
|
-
height: var(--emptystate-icon-size-lg);
|
|
11239
|
-
}
|
|
11240
|
-
|
|
11241
|
-
.muka-emptystate__visual svg {
|
|
11242
|
-
width: 100%;
|
|
11243
|
-
height: 100%;
|
|
11244
|
-
}
|
|
11245
|
-
|
|
11246
|
-
.muka-emptystate__visual img {
|
|
11247
|
-
width: 100%;
|
|
11248
|
-
height: 100%;
|
|
11249
|
-
object-fit: contain;
|
|
11250
|
-
}
|
|
11251
|
-
|
|
11252
|
-
/* Content */
|
|
11253
|
-
.muka-emptystate__content {
|
|
11254
|
-
display: flex;
|
|
11255
|
-
flex-direction: column;
|
|
11256
|
-
gap: var(--spacing-2);
|
|
11257
|
-
}
|
|
11258
|
-
|
|
11259
|
-
.muka-emptystate--left .muka-emptystate__content {
|
|
11260
|
-
align-items: flex-start;
|
|
11261
|
-
}
|
|
11262
|
-
|
|
11263
|
-
/* Title */
|
|
11264
|
-
.muka-emptystate__title {
|
|
11265
|
-
color: var(--emptystate-title-color);
|
|
11266
|
-
margin: 0;
|
|
11267
|
-
font-family: var(--text-heading-sm-fontFamily);
|
|
11268
|
-
font-weight: var(--text-heading-sm-fontWeight);
|
|
11269
|
-
font-size: var(--text-heading-sm-fontSize);
|
|
11270
|
-
line-height: var(--text-heading-sm-lineHeight);
|
|
11271
|
-
}
|
|
11272
|
-
|
|
11273
|
-
.muka-emptystate--sm .muka-emptystate__title {
|
|
11274
|
-
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
11275
|
-
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
11276
|
-
font-size: var(--text-label-lg-semibold-fontSize);
|
|
11277
|
-
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
11278
|
-
}
|
|
11279
|
-
|
|
11280
|
-
.muka-emptystate--lg .muka-emptystate__title {
|
|
11281
|
-
font-family: var(--text-heading-md-fontFamily);
|
|
11282
|
-
font-weight: var(--text-heading-md-fontWeight);
|
|
11283
|
-
font-size: var(--text-heading-md-fontSize);
|
|
11284
|
-
line-height: var(--text-heading-md-lineHeight);
|
|
11285
|
-
}
|
|
11286
|
-
|
|
11287
|
-
/* Description */
|
|
11288
|
-
.muka-emptystate__description {
|
|
11289
|
-
color: var(--emptystate-description-color);
|
|
11290
|
-
margin: 0;
|
|
11291
|
-
font-family: var(--text-body-sm-regular-fontFamily);
|
|
11292
|
-
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
11293
|
-
font-size: var(--text-body-sm-regular-fontSize);
|
|
11294
|
-
line-height: var(--text-body-sm-regular-lineHeight);
|
|
11295
|
-
}
|
|
11296
|
-
|
|
11297
|
-
.muka-emptystate--md .muka-emptystate__description {
|
|
11298
|
-
font-family: var(--text-body-base-regular-fontFamily);
|
|
11299
|
-
font-weight: var(--text-body-base-regular-fontWeight);
|
|
11300
|
-
font-size: var(--text-body-base-regular-fontSize);
|
|
11301
|
-
line-height: var(--text-body-base-regular-lineHeight);
|
|
11302
|
-
}
|
|
11303
|
-
|
|
11304
|
-
.muka-emptystate--lg .muka-emptystate__description {
|
|
11305
|
-
font-family: var(--text-body-lg-regular-fontFamily);
|
|
11306
|
-
font-weight: var(--text-body-lg-regular-fontWeight);
|
|
11307
|
-
font-size: var(--text-body-lg-regular-fontSize);
|
|
11308
|
-
line-height: var(--text-body-lg-regular-lineHeight);
|
|
11309
|
-
}
|
|
11310
|
-
|
|
11311
|
-
/* Actions */
|
|
11312
|
-
.muka-emptystate__actions {
|
|
11313
|
-
display: flex;
|
|
11314
|
-
gap: var(--emptystate-actions-gap);
|
|
11315
|
-
margin-top: var(--emptystate-actions-marginTop);
|
|
11316
|
-
flex-wrap: wrap;
|
|
11317
|
-
justify-content: center;
|
|
11318
|
-
}
|
|
11319
|
-
|
|
11320
|
-
.muka-emptystate--left .muka-emptystate__actions {
|
|
11321
|
-
justify-content: flex-start;
|
|
11322
|
-
}
|
|
11323
|
-
|
|
11324
|
-
|
|
11325
|
-
/* DatePicker */
|
|
11326
|
-
/* DatePicker — compact native date field. */
|
|
11327
|
-
/* Field/label/helper styling is inherited from ../Input/Input.css. */
|
|
11328
|
-
|
|
11329
|
-
/* Adopt the field typography on the native date input. */
|
|
11330
|
-
.muka-datepicker__field .muka-input__native {
|
|
11331
|
-
font-family: var(--text-input-md-fontFamily);
|
|
11332
|
-
font-size: var(--text-input-md-fontSize);
|
|
11333
|
-
line-height: var(--text-input-md-lineHeight);
|
|
11347
|
+
/* Adopt the field typography on the native date input. */
|
|
11348
|
+
.muka-datepicker__field .muka-input__native {
|
|
11349
|
+
font-family: var(--text-input-md-fontFamily);
|
|
11350
|
+
font-size: var(--text-input-md-fontSize);
|
|
11351
|
+
line-height: var(--text-input-md-lineHeight);
|
|
11334
11352
|
}
|
|
11335
11353
|
|
|
11336
11354
|
.muka-datepicker__field--sm .muka-input__native {
|
|
@@ -12674,89 +12692,256 @@ li.muka-listitem {
|
|
|
12674
12692
|
}
|
|
12675
12693
|
|
|
12676
12694
|
|
|
12677
|
-
/*
|
|
12678
|
-
/*
|
|
12679
|
-
|
|
12680
|
-
/*
|
|
12681
|
-
* The grid clips to its own radius and the tiles stay square, so only the four
|
|
12682
|
-
* outer corners round — matching the Figma "Wrapper" frame (5225:1394).
|
|
12683
|
-
*/
|
|
12684
|
-
.muka-chat-photo-grid {
|
|
12685
|
-
display: grid;
|
|
12686
|
-
gap: var(--chatphotogrid-gap);
|
|
12687
|
-
width: 100%;
|
|
12688
|
-
min-width: 0;
|
|
12689
|
-
overflow: hidden;
|
|
12690
|
-
border-radius: var(--chatphotogrid-radius);
|
|
12691
|
-
}
|
|
12692
|
-
|
|
12693
|
-
/* ─── Tiles ────────────────────────────────────────────── */
|
|
12694
|
-
|
|
12695
|
-
.muka-chat-photo-grid__tile {
|
|
12696
|
-
position: relative;
|
|
12697
|
-
display: block;
|
|
12698
|
-
overflow: hidden;
|
|
12699
|
-
min-width: 0;
|
|
12700
|
-
padding: 0;
|
|
12701
|
-
margin: 0;
|
|
12702
|
-
border: none;
|
|
12703
|
-
background-color: var(--chatphotogrid-color-placeholder);
|
|
12704
|
-
aspect-ratio: 1 / 1;
|
|
12705
|
-
}
|
|
12695
|
+
/* Checkbox */
|
|
12696
|
+
/* Checkbox Component Styles - Using Muka Design Tokens */
|
|
12706
12697
|
|
|
12707
|
-
|
|
12698
|
+
/* Wrapper - clickable label container */
|
|
12699
|
+
.muka-checkbox {
|
|
12700
|
+
display: inline-flex;
|
|
12701
|
+
align-items: center;
|
|
12702
|
+
gap: var(--spacing-4);
|
|
12708
12703
|
cursor: pointer;
|
|
12709
|
-
|
|
12704
|
+
user-select: none;
|
|
12710
12705
|
}
|
|
12711
12706
|
|
|
12712
|
-
|
|
12713
|
-
|
|
12714
|
-
|
|
12715
|
-
outline-offset: calc(-1 * var(--border-width-bold));
|
|
12707
|
+
.muka-checkbox--disabled {
|
|
12708
|
+
cursor: not-allowed;
|
|
12709
|
+
opacity: 0.6;
|
|
12716
12710
|
}
|
|
12717
12711
|
|
|
12718
|
-
|
|
12719
|
-
|
|
12720
|
-
|
|
12721
|
-
|
|
12722
|
-
|
|
12712
|
+
/* Control container */
|
|
12713
|
+
.muka-checkbox__control {
|
|
12714
|
+
position: relative;
|
|
12715
|
+
display: inline-flex;
|
|
12716
|
+
align-items: center;
|
|
12717
|
+
justify-content: center;
|
|
12718
|
+
flex-shrink: 0;
|
|
12723
12719
|
}
|
|
12724
12720
|
|
|
12725
|
-
/*
|
|
12726
|
-
|
|
12727
|
-
.muka-chat-photo-grid__overflow {
|
|
12721
|
+
/* Hidden native input */
|
|
12722
|
+
.muka-checkbox__input {
|
|
12728
12723
|
position: absolute;
|
|
12729
|
-
|
|
12724
|
+
width: 1px;
|
|
12725
|
+
height: 1px;
|
|
12726
|
+
padding: 0;
|
|
12727
|
+
margin: -1px;
|
|
12728
|
+
overflow: hidden;
|
|
12729
|
+
clip: rect(0, 0, 0, 0);
|
|
12730
|
+
white-space: nowrap;
|
|
12731
|
+
border: 0;
|
|
12732
|
+
}
|
|
12733
|
+
|
|
12734
|
+
/* Visual indicator (square) */
|
|
12735
|
+
.muka-checkbox__indicator {
|
|
12730
12736
|
display: flex;
|
|
12731
12737
|
align-items: center;
|
|
12732
12738
|
justify-content: center;
|
|
12733
|
-
|
|
12734
|
-
|
|
12735
|
-
|
|
12736
|
-
|
|
12737
|
-
|
|
12738
|
-
|
|
12739
|
+
width: var(--checkbox-size-default);
|
|
12740
|
+
height: var(--checkbox-size-default);
|
|
12741
|
+
border-radius: var(--checkbox-radius);
|
|
12742
|
+
background-color: var(--checkbox-color-default-background);
|
|
12743
|
+
border: var(--border-width-regular) solid var(--checkbox-color-default-border);
|
|
12744
|
+
transition: all 0.15s ease;
|
|
12745
|
+
box-shadow: inset 0 1px 2px 0 rgba(26, 26, 26, 0.15);
|
|
12739
12746
|
}
|
|
12740
12747
|
|
|
12741
|
-
/*
|
|
12748
|
+
/* Size variants */
|
|
12749
|
+
.muka-checkbox--sm .muka-checkbox__indicator {
|
|
12750
|
+
width: var(--checkbox-size-sm);
|
|
12751
|
+
height: var(--checkbox-size-sm);
|
|
12752
|
+
}
|
|
12742
12753
|
|
|
12743
|
-
.muka-
|
|
12744
|
-
|
|
12754
|
+
.muka-checkbox--lg .muka-checkbox__indicator {
|
|
12755
|
+
width: var(--checkbox-size-lg);
|
|
12756
|
+
height: var(--checkbox-size-lg);
|
|
12745
12757
|
}
|
|
12746
12758
|
|
|
12747
|
-
|
|
12748
|
-
|
|
12759
|
+
/* Icon inside checkbox */
|
|
12760
|
+
.muka-checkbox__icon {
|
|
12761
|
+
width: var(--checkbox-icon-size-default);
|
|
12762
|
+
height: var(--checkbox-icon-size-default);
|
|
12763
|
+
color: var(--checkbox-color-default-icon);
|
|
12764
|
+
opacity: 0;
|
|
12765
|
+
transform: scale(0.8);
|
|
12766
|
+
transition: opacity 0.15s ease, transform 0.15s ease;
|
|
12749
12767
|
}
|
|
12750
12768
|
|
|
12751
|
-
.muka-
|
|
12752
|
-
|
|
12769
|
+
.muka-checkbox--sm .muka-checkbox__icon {
|
|
12770
|
+
width: var(--checkbox-icon-size-sm);
|
|
12771
|
+
height: var(--checkbox-icon-size-sm);
|
|
12753
12772
|
}
|
|
12754
12773
|
|
|
12755
|
-
.muka-
|
|
12756
|
-
|
|
12774
|
+
.muka-checkbox--lg .muka-checkbox__icon {
|
|
12775
|
+
width: var(--checkbox-icon-size-lg);
|
|
12776
|
+
height: var(--checkbox-icon-size-lg);
|
|
12757
12777
|
}
|
|
12758
12778
|
|
|
12759
|
-
|
|
12779
|
+
/* Hide indeterminate icon by default */
|
|
12780
|
+
.muka-checkbox__icon--indeterminate {
|
|
12781
|
+
position: absolute;
|
|
12782
|
+
}
|
|
12783
|
+
|
|
12784
|
+
/* Hover state - removed per design */
|
|
12785
|
+
|
|
12786
|
+
/* Focus state */
|
|
12787
|
+
.muka-checkbox__input:focus-visible + .muka-checkbox__indicator {
|
|
12788
|
+
outline: 2px solid var(--color-border-focus);
|
|
12789
|
+
outline-offset: 2px;
|
|
12790
|
+
}
|
|
12791
|
+
|
|
12792
|
+
/* Checked state */
|
|
12793
|
+
.muka-checkbox__input:checked + .muka-checkbox__indicator {
|
|
12794
|
+
background-color: var(--checkbox-color-checked-background);
|
|
12795
|
+
border-color: var(--checkbox-color-checked-border);
|
|
12796
|
+
box-shadow: none;
|
|
12797
|
+
}
|
|
12798
|
+
|
|
12799
|
+
.muka-checkbox__input:checked + .muka-checkbox__indicator .muka-checkbox__icon--check {
|
|
12800
|
+
color: var(--checkbox-color-checked-icon);
|
|
12801
|
+
opacity: 1;
|
|
12802
|
+
transform: scale(1);
|
|
12803
|
+
}
|
|
12804
|
+
|
|
12805
|
+
/* Indeterminate state */
|
|
12806
|
+
.muka-checkbox__input:indeterminate + .muka-checkbox__indicator {
|
|
12807
|
+
background-color: var(--checkbox-color-checked-background);
|
|
12808
|
+
border-color: var(--checkbox-color-checked-border);
|
|
12809
|
+
box-shadow: none;
|
|
12810
|
+
}
|
|
12811
|
+
|
|
12812
|
+
.muka-checkbox__input:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--check {
|
|
12813
|
+
opacity: 0;
|
|
12814
|
+
}
|
|
12815
|
+
|
|
12816
|
+
.muka-checkbox__input:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--indeterminate {
|
|
12817
|
+
color: var(--checkbox-color-checked-icon);
|
|
12818
|
+
opacity: 1;
|
|
12819
|
+
transform: scale(1);
|
|
12820
|
+
}
|
|
12821
|
+
|
|
12822
|
+
/* Disabled state */
|
|
12823
|
+
.muka-checkbox--disabled .muka-checkbox__indicator {
|
|
12824
|
+
background-color: var(--checkbox-color-disabled-background);
|
|
12825
|
+
border-color: var(--checkbox-color-disabled-border);
|
|
12826
|
+
box-shadow: none;
|
|
12827
|
+
}
|
|
12828
|
+
|
|
12829
|
+
.muka-checkbox__input:disabled:checked + .muka-checkbox__indicator .muka-checkbox__icon--check,
|
|
12830
|
+
.muka-checkbox__input:disabled:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--indeterminate {
|
|
12831
|
+
color: var(--checkbox-color-disabled-icon);
|
|
12832
|
+
}
|
|
12833
|
+
|
|
12834
|
+
/* Label text */
|
|
12835
|
+
.muka-checkbox__label {
|
|
12836
|
+
font-family: var(--text-label-lg-regular-fontFamily);
|
|
12837
|
+
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
12838
|
+
font-size: var(--text-label-lg-regular-fontSize);
|
|
12839
|
+
line-height: var(--text-label-lg-regular-lineHeight);
|
|
12840
|
+
color: var(--color-text-default-default);
|
|
12841
|
+
}
|
|
12842
|
+
|
|
12843
|
+
.muka-checkbox--sm .muka-checkbox__label {
|
|
12844
|
+
font-family: var(--text-label-md-regular-fontFamily);
|
|
12845
|
+
font-weight: var(--text-label-md-regular-fontWeight);
|
|
12846
|
+
font-size: var(--text-label-md-regular-fontSize);
|
|
12847
|
+
line-height: var(--text-label-md-regular-lineHeight);
|
|
12848
|
+
}
|
|
12849
|
+
|
|
12850
|
+
.muka-checkbox--lg .muka-checkbox__label {
|
|
12851
|
+
font-family: var(--text-label-xl-regular-fontFamily);
|
|
12852
|
+
font-weight: var(--text-label-xl-regular-fontWeight);
|
|
12853
|
+
font-size: var(--text-label-xl-regular-fontSize);
|
|
12854
|
+
line-height: var(--text-label-xl-regular-lineHeight);
|
|
12855
|
+
}
|
|
12856
|
+
|
|
12857
|
+
.muka-checkbox--disabled .muka-checkbox__label {
|
|
12858
|
+
color: var(--color-text-subtle-default);
|
|
12859
|
+
}
|
|
12860
|
+
|
|
12861
|
+
|
|
12862
|
+
/* ChatPhotoGrid */
|
|
12863
|
+
/* ChatPhotoGrid Component Styles */
|
|
12864
|
+
|
|
12865
|
+
/*
|
|
12866
|
+
* The grid clips to its own radius and the tiles stay square, so only the four
|
|
12867
|
+
* outer corners round — matching the Figma "Wrapper" frame (5225:1394).
|
|
12868
|
+
*/
|
|
12869
|
+
.muka-chat-photo-grid {
|
|
12870
|
+
display: grid;
|
|
12871
|
+
gap: var(--chatphotogrid-gap);
|
|
12872
|
+
width: 100%;
|
|
12873
|
+
min-width: 0;
|
|
12874
|
+
overflow: hidden;
|
|
12875
|
+
border-radius: var(--chatphotogrid-radius);
|
|
12876
|
+
}
|
|
12877
|
+
|
|
12878
|
+
/* ─── Tiles ────────────────────────────────────────────── */
|
|
12879
|
+
|
|
12880
|
+
.muka-chat-photo-grid__tile {
|
|
12881
|
+
position: relative;
|
|
12882
|
+
display: block;
|
|
12883
|
+
overflow: hidden;
|
|
12884
|
+
min-width: 0;
|
|
12885
|
+
padding: 0;
|
|
12886
|
+
margin: 0;
|
|
12887
|
+
border: none;
|
|
12888
|
+
background-color: var(--chatphotogrid-color-placeholder);
|
|
12889
|
+
aspect-ratio: 1 / 1;
|
|
12890
|
+
}
|
|
12891
|
+
|
|
12892
|
+
button.muka-chat-photo-grid__tile {
|
|
12893
|
+
cursor: pointer;
|
|
12894
|
+
appearance: none;
|
|
12895
|
+
}
|
|
12896
|
+
|
|
12897
|
+
button.muka-chat-photo-grid__tile:focus-visible {
|
|
12898
|
+
outline: var(--border-width-bold) solid var(--color-border-focus);
|
|
12899
|
+
/* Inset, so the grid's overflow clip cannot cut the ring off on corner tiles */
|
|
12900
|
+
outline-offset: calc(-1 * var(--border-width-bold));
|
|
12901
|
+
}
|
|
12902
|
+
|
|
12903
|
+
.muka-chat-photo-grid__image {
|
|
12904
|
+
display: block;
|
|
12905
|
+
width: 100%;
|
|
12906
|
+
height: 100%;
|
|
12907
|
+
object-fit: cover;
|
|
12908
|
+
}
|
|
12909
|
+
|
|
12910
|
+
/* ─── Overflow tile ────────────────────────────────────── */
|
|
12911
|
+
|
|
12912
|
+
.muka-chat-photo-grid__overflow {
|
|
12913
|
+
position: absolute;
|
|
12914
|
+
inset: 0;
|
|
12915
|
+
display: flex;
|
|
12916
|
+
align-items: center;
|
|
12917
|
+
justify-content: center;
|
|
12918
|
+
background-color: var(--chatphotogrid-color-overflow-background);
|
|
12919
|
+
color: var(--chatphotogrid-color-overflow-foreground);
|
|
12920
|
+
font-family: var(--text-body-2xl-regular-fontFamily);
|
|
12921
|
+
font-weight: var(--text-body-2xl-regular-fontWeight);
|
|
12922
|
+
font-size: var(--text-body-2xl-regular-fontSize);
|
|
12923
|
+
line-height: var(--text-body-2xl-regular-lineHeight);
|
|
12924
|
+
}
|
|
12925
|
+
|
|
12926
|
+
/* ─── Layouts ──────────────────────────────────────────── */
|
|
12927
|
+
|
|
12928
|
+
.muka-chat-photo-grid--1 {
|
|
12929
|
+
grid-template-columns: 1fr;
|
|
12930
|
+
}
|
|
12931
|
+
|
|
12932
|
+
.muka-chat-photo-grid--landscape .muka-chat-photo-grid__tile {
|
|
12933
|
+
aspect-ratio: 4 / 3;
|
|
12934
|
+
}
|
|
12935
|
+
|
|
12936
|
+
.muka-chat-photo-grid--portrait .muka-chat-photo-grid__tile {
|
|
12937
|
+
aspect-ratio: 3 / 4;
|
|
12938
|
+
}
|
|
12939
|
+
|
|
12940
|
+
.muka-chat-photo-grid--2 {
|
|
12941
|
+
grid-template-columns: repeat(2, 1fr);
|
|
12942
|
+
}
|
|
12943
|
+
|
|
12944
|
+
.muka-chat-photo-grid--3 {
|
|
12760
12945
|
grid-template-columns: repeat(3, 1fr);
|
|
12761
12946
|
}
|
|
12762
12947
|
|
|
@@ -12850,939 +13035,892 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
12850
13035
|
}
|
|
12851
13036
|
|
|
12852
13037
|
|
|
12853
|
-
/*
|
|
12854
|
-
/*
|
|
13038
|
+
/* ChatMessageList */
|
|
13039
|
+
/* ChatMessageList Component Styles */
|
|
12855
13040
|
|
|
12856
|
-
|
|
12857
|
-
|
|
12858
|
-
|
|
12859
|
-
|
|
12860
|
-
|
|
12861
|
-
|
|
12862
|
-
|
|
13041
|
+
.muka-chat-message-list {
|
|
13042
|
+
flex: 1 1 auto;
|
|
13043
|
+
min-height: 0;
|
|
13044
|
+
width: 100%;
|
|
13045
|
+
overflow-x: clip;
|
|
13046
|
+
overflow-y: auto;
|
|
13047
|
+
background-color: var(--color-surface-level3);
|
|
13048
|
+
padding: var(--section-padding-vertical-default, var(--spacing-8))
|
|
13049
|
+
var(--section-padding-horizontal-default, var(--spacing-4));
|
|
13050
|
+
-webkit-overflow-scrolling: touch;
|
|
13051
|
+
overscroll-behavior: contain;
|
|
12863
13052
|
}
|
|
12864
13053
|
|
|
12865
|
-
.muka-
|
|
12866
|
-
|
|
12867
|
-
|
|
13054
|
+
.muka-chat-message-list__inner {
|
|
13055
|
+
display: flex;
|
|
13056
|
+
flex-direction: column;
|
|
13057
|
+
align-items: stretch;
|
|
13058
|
+
gap: var(--spacing-8);
|
|
13059
|
+
width: 100%;
|
|
13060
|
+
max-width: var(--chat-column-max-width);
|
|
13061
|
+
margin: 0 auto;
|
|
12868
13062
|
}
|
|
12869
13063
|
|
|
12870
|
-
/*
|
|
12871
|
-
.muka-checkbox__control {
|
|
12872
|
-
position: relative;
|
|
12873
|
-
display: inline-flex;
|
|
12874
|
-
align-items: center;
|
|
12875
|
-
justify-content: center;
|
|
12876
|
-
flex-shrink: 0;
|
|
12877
|
-
}
|
|
13064
|
+
/* ─── Print ────────────────────────────────────────────── */
|
|
12878
13065
|
|
|
12879
|
-
|
|
12880
|
-
.muka-
|
|
12881
|
-
|
|
12882
|
-
|
|
12883
|
-
|
|
12884
|
-
|
|
12885
|
-
|
|
12886
|
-
|
|
12887
|
-
|
|
12888
|
-
|
|
12889
|
-
|
|
13066
|
+
@media print {
|
|
13067
|
+
.muka-chat-message-list {
|
|
13068
|
+
overflow: visible;
|
|
13069
|
+
height: auto;
|
|
13070
|
+
max-height: none;
|
|
13071
|
+
background: none;
|
|
13072
|
+
padding: 0;
|
|
13073
|
+
}
|
|
13074
|
+
|
|
13075
|
+
.muka-chat-message-list__inner {
|
|
13076
|
+
max-width: 100%;
|
|
13077
|
+
}
|
|
12890
13078
|
}
|
|
12891
13079
|
|
|
12892
|
-
|
|
12893
|
-
|
|
13080
|
+
|
|
13081
|
+
/* ChatMessage */
|
|
13082
|
+
/* ChatMessage Component Styles */
|
|
13083
|
+
|
|
13084
|
+
.muka-chat-message {
|
|
12894
13085
|
display: flex;
|
|
12895
|
-
|
|
12896
|
-
|
|
12897
|
-
width:
|
|
12898
|
-
height: var(--checkbox-size-default);
|
|
12899
|
-
border-radius: var(--checkbox-radius);
|
|
12900
|
-
background-color: var(--checkbox-color-default-background);
|
|
12901
|
-
border: var(--border-width-regular) solid var(--checkbox-color-default-border);
|
|
12902
|
-
transition: all 0.15s ease;
|
|
12903
|
-
box-shadow: inset 0 1px 2px 0 rgba(26, 26, 26, 0.15);
|
|
13086
|
+
flex-direction: column;
|
|
13087
|
+
width: 100%;
|
|
13088
|
+
max-width: 100%;
|
|
12904
13089
|
}
|
|
12905
13090
|
|
|
12906
|
-
/*
|
|
12907
|
-
.muka-checkbox--sm .muka-checkbox__indicator {
|
|
12908
|
-
width: var(--checkbox-size-sm);
|
|
12909
|
-
height: var(--checkbox-size-sm);
|
|
12910
|
-
}
|
|
13091
|
+
/* ─── Row: avatar rail + bubble ────────────────────────── */
|
|
12911
13092
|
|
|
12912
|
-
.muka-
|
|
12913
|
-
|
|
12914
|
-
|
|
12915
|
-
|
|
12916
|
-
|
|
12917
|
-
|
|
12918
|
-
.muka-checkbox__icon {
|
|
12919
|
-
width: var(--checkbox-icon-size-default);
|
|
12920
|
-
height: var(--checkbox-icon-size-default);
|
|
12921
|
-
color: var(--checkbox-color-default-icon);
|
|
12922
|
-
opacity: 0;
|
|
12923
|
-
transform: scale(0.8);
|
|
12924
|
-
transition: opacity 0.15s ease, transform 0.15s ease;
|
|
12925
|
-
}
|
|
12926
|
-
|
|
12927
|
-
.muka-checkbox--sm .muka-checkbox__icon {
|
|
12928
|
-
width: var(--checkbox-icon-size-sm);
|
|
12929
|
-
height: var(--checkbox-icon-size-sm);
|
|
12930
|
-
}
|
|
12931
|
-
|
|
12932
|
-
.muka-checkbox--lg .muka-checkbox__icon {
|
|
12933
|
-
width: var(--checkbox-icon-size-lg);
|
|
12934
|
-
height: var(--checkbox-icon-size-lg);
|
|
12935
|
-
}
|
|
12936
|
-
|
|
12937
|
-
/* Hide indeterminate icon by default */
|
|
12938
|
-
.muka-checkbox__icon--indeterminate {
|
|
12939
|
-
position: absolute;
|
|
12940
|
-
}
|
|
12941
|
-
|
|
12942
|
-
/* Hover state - removed per design */
|
|
12943
|
-
|
|
12944
|
-
/* Focus state */
|
|
12945
|
-
.muka-checkbox__input:focus-visible + .muka-checkbox__indicator {
|
|
12946
|
-
outline: 2px solid var(--color-border-focus);
|
|
12947
|
-
outline-offset: 2px;
|
|
12948
|
-
}
|
|
12949
|
-
|
|
12950
|
-
/* Checked state */
|
|
12951
|
-
.muka-checkbox__input:checked + .muka-checkbox__indicator {
|
|
12952
|
-
background-color: var(--checkbox-color-checked-background);
|
|
12953
|
-
border-color: var(--checkbox-color-checked-border);
|
|
12954
|
-
box-shadow: none;
|
|
12955
|
-
}
|
|
12956
|
-
|
|
12957
|
-
.muka-checkbox__input:checked + .muka-checkbox__indicator .muka-checkbox__icon--check {
|
|
12958
|
-
color: var(--checkbox-color-checked-icon);
|
|
12959
|
-
opacity: 1;
|
|
12960
|
-
transform: scale(1);
|
|
12961
|
-
}
|
|
12962
|
-
|
|
12963
|
-
/* Indeterminate state */
|
|
12964
|
-
.muka-checkbox__input:indeterminate + .muka-checkbox__indicator {
|
|
12965
|
-
background-color: var(--checkbox-color-checked-background);
|
|
12966
|
-
border-color: var(--checkbox-color-checked-border);
|
|
12967
|
-
box-shadow: none;
|
|
12968
|
-
}
|
|
12969
|
-
|
|
12970
|
-
.muka-checkbox__input:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--check {
|
|
12971
|
-
opacity: 0;
|
|
12972
|
-
}
|
|
12973
|
-
|
|
12974
|
-
.muka-checkbox__input:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--indeterminate {
|
|
12975
|
-
color: var(--checkbox-color-checked-icon);
|
|
12976
|
-
opacity: 1;
|
|
12977
|
-
transform: scale(1);
|
|
12978
|
-
}
|
|
12979
|
-
|
|
12980
|
-
/* Disabled state */
|
|
12981
|
-
.muka-checkbox--disabled .muka-checkbox__indicator {
|
|
12982
|
-
background-color: var(--checkbox-color-disabled-background);
|
|
12983
|
-
border-color: var(--checkbox-color-disabled-border);
|
|
12984
|
-
box-shadow: none;
|
|
12985
|
-
}
|
|
12986
|
-
|
|
12987
|
-
.muka-checkbox__input:disabled:checked + .muka-checkbox__indicator .muka-checkbox__icon--check,
|
|
12988
|
-
.muka-checkbox__input:disabled:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--indeterminate {
|
|
12989
|
-
color: var(--checkbox-color-disabled-icon);
|
|
12990
|
-
}
|
|
12991
|
-
|
|
12992
|
-
/* Label text */
|
|
12993
|
-
.muka-checkbox__label {
|
|
12994
|
-
font-family: var(--text-label-lg-regular-fontFamily);
|
|
12995
|
-
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
12996
|
-
font-size: var(--text-label-lg-regular-fontSize);
|
|
12997
|
-
line-height: var(--text-label-lg-regular-lineHeight);
|
|
12998
|
-
color: var(--color-text-default-default);
|
|
12999
|
-
}
|
|
13000
|
-
|
|
13001
|
-
.muka-checkbox--sm .muka-checkbox__label {
|
|
13002
|
-
font-family: var(--text-label-md-regular-fontFamily);
|
|
13003
|
-
font-weight: var(--text-label-md-regular-fontWeight);
|
|
13004
|
-
font-size: var(--text-label-md-regular-fontSize);
|
|
13005
|
-
line-height: var(--text-label-md-regular-lineHeight);
|
|
13006
|
-
}
|
|
13007
|
-
|
|
13008
|
-
.muka-checkbox--lg .muka-checkbox__label {
|
|
13009
|
-
font-family: var(--text-label-xl-regular-fontFamily);
|
|
13010
|
-
font-weight: var(--text-label-xl-regular-fontWeight);
|
|
13011
|
-
font-size: var(--text-label-xl-regular-fontSize);
|
|
13012
|
-
line-height: var(--text-label-xl-regular-lineHeight);
|
|
13013
|
-
}
|
|
13014
|
-
|
|
13015
|
-
.muka-checkbox--disabled .muka-checkbox__label {
|
|
13016
|
-
color: var(--color-text-subtle-default);
|
|
13093
|
+
.muka-chat-message__row {
|
|
13094
|
+
display: grid;
|
|
13095
|
+
grid-template-columns: minmax(0, 1fr);
|
|
13096
|
+
grid-template-areas: 'bubble';
|
|
13097
|
+
column-gap: var(--chatbubble-row-gap);
|
|
13098
|
+
width: 100%;
|
|
13017
13099
|
}
|
|
13018
13100
|
|
|
13019
|
-
|
|
13020
|
-
|
|
13021
|
-
|
|
13022
|
-
|
|
13023
|
-
.muka-chat-message-list {
|
|
13024
|
-
flex: 1 1 auto;
|
|
13025
|
-
min-height: 0;
|
|
13026
|
-
width: 100%;
|
|
13027
|
-
overflow-x: clip;
|
|
13028
|
-
overflow-y: auto;
|
|
13029
|
-
background-color: var(--color-surface-level3);
|
|
13030
|
-
padding: var(--section-padding-vertical-default, var(--spacing-8))
|
|
13031
|
-
var(--section-padding-horizontal-default, var(--spacing-4));
|
|
13032
|
-
-webkit-overflow-scrolling: touch;
|
|
13033
|
-
overscroll-behavior: contain;
|
|
13101
|
+
.muka-chat-message--has-avatar .muka-chat-message__row {
|
|
13102
|
+
grid-template-columns: auto minmax(0, 1fr);
|
|
13103
|
+
grid-template-areas: 'rail bubble';
|
|
13034
13104
|
}
|
|
13035
13105
|
|
|
13036
|
-
.muka-chat-
|
|
13106
|
+
.muka-chat-message__rail {
|
|
13107
|
+
grid-area: rail;
|
|
13108
|
+
/* Sits on the bubble's baseline (Figma 5355:44091) */
|
|
13109
|
+
align-self: end;
|
|
13037
13110
|
display: flex;
|
|
13038
|
-
|
|
13039
|
-
|
|
13040
|
-
gap: var(--spacing-8);
|
|
13041
|
-
width: 100%;
|
|
13042
|
-
max-width: var(--chat-column-max-width);
|
|
13043
|
-
margin: 0 auto;
|
|
13111
|
+
justify-content: center;
|
|
13112
|
+
min-width: var(--chatbubble-avatar-size);
|
|
13044
13113
|
}
|
|
13045
13114
|
|
|
13046
|
-
/*
|
|
13115
|
+
/*
|
|
13116
|
+
* The Small size in Figma (5373:44702) halves the avatar to 32px and tightens
|
|
13117
|
+
* the gap to the bubble. Size the avatar itself, not just the rail, so the
|
|
13118
|
+
* bubbles keep their alignment. The header row keeps its own gap.
|
|
13119
|
+
*/
|
|
13120
|
+
@media (max-width: 1023px) {
|
|
13121
|
+
.muka-chat-message__row {
|
|
13122
|
+
column-gap: var(--chatbubble-row-gap-compact);
|
|
13123
|
+
}
|
|
13047
13124
|
|
|
13048
|
-
|
|
13049
|
-
|
|
13050
|
-
overflow: visible;
|
|
13051
|
-
height: auto;
|
|
13052
|
-
max-height: none;
|
|
13053
|
-
background: none;
|
|
13054
|
-
padding: 0;
|
|
13125
|
+
.muka-chat-message__rail {
|
|
13126
|
+
min-width: var(--chatbubble-avatar-size-compact);
|
|
13055
13127
|
}
|
|
13056
13128
|
|
|
13057
|
-
|
|
13058
|
-
|
|
13129
|
+
/* Outweighs the avatar's own size class, which sets width/height directly */
|
|
13130
|
+
.muka-chat-message .muka-chat-message__rail > * {
|
|
13131
|
+
width: var(--chatbubble-avatar-size-compact);
|
|
13132
|
+
height: var(--chatbubble-avatar-size-compact);
|
|
13059
13133
|
}
|
|
13060
13134
|
}
|
|
13061
13135
|
|
|
13136
|
+
/* ─── Bubble surface ───────────────────────────────────── */
|
|
13062
13137
|
|
|
13063
|
-
|
|
13064
|
-
|
|
13065
|
-
|
|
13066
|
-
|
|
13067
|
-
|
|
13068
|
-
|
|
13069
|
-
|
|
13070
|
-
|
|
13071
|
-
|
|
13138
|
+
.muka-chat-message__bubble {
|
|
13139
|
+
grid-area: bubble;
|
|
13140
|
+
/*
|
|
13141
|
+
* Width follows the content: a single line hugs, and once the text wraps the
|
|
13142
|
+
* bubble fills to the shared max width. Robust to string or rich children —
|
|
13143
|
+
* no length measuring needed (Figma `Text length` on 5355:44091).
|
|
13144
|
+
*/
|
|
13145
|
+
width: fit-content;
|
|
13146
|
+
/*
|
|
13147
|
+
* Ceiling from design (Figma 5355:44091). Below it, wrapping text fills the
|
|
13148
|
+
* row; above it the fixed cap leaves room for own/peer alignment.
|
|
13149
|
+
*/
|
|
13150
|
+
max-width: var(--chatbubble-max-width);
|
|
13151
|
+
position: relative;
|
|
13072
13152
|
display: flex;
|
|
13073
13153
|
flex-direction: column;
|
|
13074
|
-
gap: var(--
|
|
13154
|
+
gap: var(--chatbubble-gap);
|
|
13155
|
+
padding: var(--chatbubble-padding-block) var(--chatbubble-padding-inline);
|
|
13156
|
+
border-radius: var(--chatbubble-radius);
|
|
13157
|
+
border: var(--border-width-regular) solid transparent;
|
|
13158
|
+
box-shadow: var(--shadow-level2);
|
|
13159
|
+
word-break: break-word;
|
|
13160
|
+
}
|
|
13161
|
+
|
|
13162
|
+
/* Media, an embed or an action stack always run the full bubble width. */
|
|
13163
|
+
.muka-chat-message--has-blocks .muka-chat-message__bubble {
|
|
13075
13164
|
width: 100%;
|
|
13076
13165
|
}
|
|
13077
13166
|
|
|
13078
|
-
.muka-chat-
|
|
13079
|
-
|
|
13080
|
-
pointer-events: none;
|
|
13167
|
+
.muka-chat-message--own .muka-chat-message__bubble {
|
|
13168
|
+
justify-self: end;
|
|
13081
13169
|
}
|
|
13082
13170
|
|
|
13083
|
-
|
|
13171
|
+
.muka-chat-message--own .muka-chat-message__bubble {
|
|
13172
|
+
background-color: var(--chatbubble-color-own-background);
|
|
13173
|
+
border-color: var(--chatbubble-color-own-border);
|
|
13174
|
+
color: var(--chatbubble-color-own-foreground);
|
|
13175
|
+
}
|
|
13084
13176
|
|
|
13085
|
-
.muka-chat-
|
|
13086
|
-
|
|
13087
|
-
|
|
13088
|
-
|
|
13089
|
-
gap: var(--spacing-3);
|
|
13177
|
+
.muka-chat-message--peer .muka-chat-message__bubble {
|
|
13178
|
+
background-color: var(--chatbubble-color-peer-background);
|
|
13179
|
+
border-color: var(--chatbubble-color-peer-border);
|
|
13180
|
+
color: var(--chatbubble-color-peer-foreground);
|
|
13090
13181
|
}
|
|
13091
13182
|
|
|
13092
|
-
|
|
13183
|
+
.muka-chat-message--agent .muka-chat-message__bubble {
|
|
13184
|
+
background-color: var(--chatbubble-color-agent-background);
|
|
13185
|
+
border-color: var(--chatbubble-color-agent-border);
|
|
13186
|
+
color: var(--chatbubble-color-agent-foreground);
|
|
13187
|
+
}
|
|
13093
13188
|
|
|
13094
|
-
|
|
13189
|
+
/* ─── Header row (author · meta · time · badge) ────────── */
|
|
13190
|
+
|
|
13191
|
+
.muka-chat-message__header {
|
|
13095
13192
|
display: flex;
|
|
13096
|
-
flex:
|
|
13097
|
-
min-width: 0;
|
|
13098
|
-
box-sizing: border-box;
|
|
13193
|
+
flex-flow: row wrap;
|
|
13099
13194
|
align-items: center;
|
|
13100
|
-
gap: var(--
|
|
13101
|
-
min-height: var(--input-field-height-lg, 48px);
|
|
13102
|
-
padding: 0 var(--spacing-2);
|
|
13103
|
-
border: var(--border-width-regular) solid var(--input-field-color-default-border);
|
|
13104
|
-
border-radius: var(--input-field-radius-lg);
|
|
13105
|
-
background-color: var(--input-field-color-default-background);
|
|
13106
|
-
transition: border-color 0.12s ease;
|
|
13195
|
+
gap: var(--chatbubble-row-gap);
|
|
13107
13196
|
}
|
|
13108
13197
|
|
|
13109
|
-
.muka-chat-
|
|
13110
|
-
|
|
13198
|
+
.muka-chat-message__author {
|
|
13199
|
+
font-family: var(--text-body-base-bold-fontFamily);
|
|
13200
|
+
font-weight: var(--text-body-base-bold-fontWeight);
|
|
13201
|
+
font-size: var(--text-body-base-bold-fontSize);
|
|
13202
|
+
line-height: var(--text-body-base-bold-lineHeight);
|
|
13111
13203
|
}
|
|
13112
13204
|
|
|
13113
|
-
.muka-chat-
|
|
13114
|
-
|
|
13115
|
-
|
|
13116
|
-
width: 100%;
|
|
13117
|
-
box-sizing: border-box;
|
|
13118
|
-
resize: none;
|
|
13119
|
-
border: none;
|
|
13120
|
-
background: transparent;
|
|
13121
|
-
outline: none;
|
|
13122
|
-
padding: 0 var(--spacing-1);
|
|
13123
|
-
color: var(--color-text-default-default);
|
|
13205
|
+
.muka-chat-message__author-meta {
|
|
13206
|
+
/* Inherits the variant's body colour from the bubble */
|
|
13207
|
+
color: inherit;
|
|
13124
13208
|
font-family: var(--text-body-base-regular-fontFamily);
|
|
13125
13209
|
font-weight: var(--text-body-base-regular-fontWeight);
|
|
13126
13210
|
font-size: var(--text-body-base-regular-fontSize);
|
|
13127
13211
|
line-height: var(--text-body-base-regular-lineHeight);
|
|
13128
|
-
appearance: none;
|
|
13129
|
-
-webkit-appearance: none;
|
|
13130
13212
|
}
|
|
13131
13213
|
|
|
13132
|
-
.muka-chat-
|
|
13133
|
-
|
|
13134
|
-
}
|
|
13135
|
-
|
|
13136
|
-
/* Keep the in-field emoji button flush to the bottom-right as the field grows */
|
|
13137
|
-
.muka-chat-composer__emoji {
|
|
13138
|
-
flex-shrink: 0;
|
|
13139
|
-
}
|
|
13140
|
-
|
|
13141
|
-
/* ─── Recording bar ────────────────────────────────────── */
|
|
13142
|
-
|
|
13143
|
-
.muka-chat-composer__recording {
|
|
13144
|
-
display: flex;
|
|
13145
|
-
flex: 1 1 auto;
|
|
13146
|
-
min-width: 0;
|
|
13147
|
-
box-sizing: border-box;
|
|
13214
|
+
.muka-chat-message__badge {
|
|
13215
|
+
display: inline-flex;
|
|
13148
13216
|
align-items: center;
|
|
13149
|
-
min-height: var(--input-field-height-lg, 48px);
|
|
13150
|
-
padding: var(--card-padding-sm);
|
|
13151
|
-
border: var(--border-width-regular) solid var(--card-color-default-border);
|
|
13152
|
-
border-radius: var(--radius-lg);
|
|
13153
|
-
background-color: var(--card-color-default-background);
|
|
13154
|
-
}
|
|
13155
|
-
|
|
13156
|
-
/* ─── Staged attachments strip ─────────────────────────── */
|
|
13157
|
-
|
|
13158
|
-
.muka-chat-composer__attachments-strip {
|
|
13159
|
-
position: relative;
|
|
13160
|
-
width: 100%;
|
|
13161
13217
|
}
|
|
13162
13218
|
|
|
13163
|
-
|
|
13164
|
-
|
|
13165
|
-
|
|
13166
|
-
|
|
13167
|
-
|
|
13168
|
-
|
|
13219
|
+
/*
|
|
13220
|
+
* Keep the first line of content clear of the absolutely positioned menu
|
|
13221
|
+
* button in the bubble's top-right corner.
|
|
13222
|
+
*/
|
|
13223
|
+
.muka-chat-message--has-menu .muka-chat-message__header,
|
|
13224
|
+
.muka-chat-message--has-menu.muka-chat-message--no-header .muka-chat-message__message {
|
|
13225
|
+
padding-right: var(--spacing-10);
|
|
13169
13226
|
}
|
|
13170
13227
|
|
|
13171
|
-
|
|
13172
|
-
|
|
13228
|
+
/* …and the last line clear of the inset timestamp in the bottom-right corner */
|
|
13229
|
+
.muka-chat-message--has-timestamp .muka-chat-message__message {
|
|
13230
|
+
padding-right: var(--spacing-10);
|
|
13173
13231
|
}
|
|
13174
13232
|
|
|
13175
|
-
|
|
13176
|
-
|
|
13177
|
-
|
|
13178
|
-
|
|
13179
|
-
|
|
13233
|
+
/* ─── Body ─────────────────────────────────────────────── */
|
|
13234
|
+
|
|
13235
|
+
.muka-chat-message__body {
|
|
13236
|
+
display: flex;
|
|
13237
|
+
flex-direction: column;
|
|
13238
|
+
gap: var(--chatbubble-gap);
|
|
13239
|
+
min-width: 0;
|
|
13180
13240
|
}
|
|
13181
13241
|
|
|
13182
|
-
|
|
13242
|
+
.muka-chat-message__media {
|
|
13243
|
+
min-width: 0;
|
|
13244
|
+
}
|
|
13183
13245
|
|
|
13184
|
-
|
|
13185
|
-
|
|
13186
|
-
|
|
13187
|
-
|
|
13246
|
+
.muka-chat-message__message {
|
|
13247
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
13248
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
13249
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
13250
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
13251
|
+
white-space: pre-wrap;
|
|
13252
|
+
word-break: break-word;
|
|
13188
13253
|
}
|
|
13189
13254
|
|
|
13255
|
+
/* Empty message block should not add a gap of its own */
|
|
13256
|
+
.muka-chat-message__message:empty {
|
|
13257
|
+
display: none;
|
|
13258
|
+
}
|
|
13190
13259
|
|
|
13191
|
-
/*
|
|
13192
|
-
/* ChatAttachmentChip Component Styles */
|
|
13260
|
+
/* ─── Embedded card ────────────────────────────────────── */
|
|
13193
13261
|
|
|
13194
|
-
.muka-chat-
|
|
13262
|
+
.muka-chat-message__embed {
|
|
13195
13263
|
position: relative;
|
|
13196
|
-
display:
|
|
13197
|
-
|
|
13198
|
-
gap: var(--
|
|
13199
|
-
|
|
13200
|
-
|
|
13201
|
-
|
|
13202
|
-
border: var(--
|
|
13203
|
-
border
|
|
13204
|
-
overflow: hidden;
|
|
13264
|
+
display: flex;
|
|
13265
|
+
flex-direction: column;
|
|
13266
|
+
gap: var(--chatbubble-embed-gap);
|
|
13267
|
+
/* The card is inset from the blocks above and below it (Figma 5289:40562) */
|
|
13268
|
+
margin-block: var(--chatbubble-embed-margin-block);
|
|
13269
|
+
padding: var(--chatbubble-embed-padding-block) var(--chatbubble-embed-padding-inline);
|
|
13270
|
+
border-radius: var(--chatbubble-embed-radius);
|
|
13271
|
+
border: var(--border-width-regular) solid transparent;
|
|
13205
13272
|
}
|
|
13206
13273
|
|
|
13207
|
-
|
|
13208
|
-
|
|
13274
|
+
/*
|
|
13275
|
+
* The embed sits on the raised surface of its author's role, one step apart
|
|
13276
|
+
* from the bubble it is nested in, and reuses that role's border colour.
|
|
13277
|
+
*/
|
|
13278
|
+
.muka-chat-message--own .muka-chat-message__embed {
|
|
13279
|
+
background-color: var(--chatbubble-embed-color-own-background);
|
|
13280
|
+
border-color: var(--chatbubble-embed-color-own-border);
|
|
13281
|
+
color: var(--chatbubble-embed-color-own-foreground);
|
|
13209
13282
|
}
|
|
13210
13283
|
|
|
13211
|
-
.muka-chat-
|
|
13212
|
-
|
|
13284
|
+
.muka-chat-message--peer .muka-chat-message__embed {
|
|
13285
|
+
background-color: var(--chatbubble-embed-color-peer-background);
|
|
13286
|
+
border-color: var(--chatbubble-embed-color-peer-border);
|
|
13287
|
+
color: var(--chatbubble-embed-color-peer-foreground);
|
|
13213
13288
|
}
|
|
13214
13289
|
|
|
13215
|
-
.muka-chat-
|
|
13216
|
-
|
|
13217
|
-
|
|
13290
|
+
.muka-chat-message--agent .muka-chat-message__embed {
|
|
13291
|
+
background-color: var(--chatbubble-embed-color-agent-background);
|
|
13292
|
+
border-color: var(--chatbubble-embed-color-agent-border);
|
|
13293
|
+
color: var(--chatbubble-embed-color-agent-foreground);
|
|
13218
13294
|
}
|
|
13219
13295
|
|
|
13220
|
-
|
|
13221
|
-
|
|
13222
|
-
|
|
13223
|
-
|
|
13224
|
-
align-items: center;
|
|
13225
|
-
gap: var(--spacing-2);
|
|
13296
|
+
.muka-chat-message__embed-content {
|
|
13297
|
+
display: flex;
|
|
13298
|
+
flex-direction: column;
|
|
13299
|
+
gap: var(--chatbubble-embed-gap);
|
|
13226
13300
|
min-width: 0;
|
|
13227
|
-
flex: 1 1 auto;
|
|
13228
|
-
background: none;
|
|
13229
|
-
border: none;
|
|
13230
|
-
padding: 0;
|
|
13231
|
-
margin: 0;
|
|
13232
|
-
text-align: left;
|
|
13233
|
-
color: inherit;
|
|
13234
|
-
font: inherit;
|
|
13235
|
-
cursor: default;
|
|
13236
|
-
-webkit-tap-highlight-color: transparent;
|
|
13237
|
-
}
|
|
13238
|
-
|
|
13239
|
-
.muka-chat-attachment-chip--interactive .muka-chat-attachment-chip__body {
|
|
13240
|
-
cursor: pointer;
|
|
13241
13301
|
}
|
|
13242
13302
|
|
|
13243
|
-
.muka-chat-
|
|
13244
|
-
|
|
13245
|
-
|
|
13246
|
-
|
|
13303
|
+
.muka-chat-message__embed-copy {
|
|
13304
|
+
position: absolute;
|
|
13305
|
+
top: var(--chatbubble-embed-padding-block);
|
|
13306
|
+
right: var(--chatbubble-embed-padding-inline);
|
|
13247
13307
|
}
|
|
13248
13308
|
|
|
13249
|
-
|
|
13250
|
-
display: inline-flex;
|
|
13251
|
-
align-items: center;
|
|
13252
|
-
justify-content: center;
|
|
13253
|
-
flex-shrink: 0;
|
|
13254
|
-
color: var(--color-text-subtle-default);
|
|
13255
|
-
}
|
|
13309
|
+
/* ─── Stacked full-width action buttons ────────────────── */
|
|
13256
13310
|
|
|
13257
|
-
.muka-chat-
|
|
13311
|
+
.muka-chat-message__action-stack {
|
|
13258
13312
|
display: flex;
|
|
13259
13313
|
flex-direction: column;
|
|
13260
|
-
|
|
13261
|
-
flex: 1 1 auto;
|
|
13314
|
+
gap: var(--chatbubble-action-stack-gap);
|
|
13262
13315
|
}
|
|
13263
13316
|
|
|
13264
|
-
|
|
13265
|
-
|
|
13266
|
-
|
|
13267
|
-
|
|
13268
|
-
|
|
13269
|
-
|
|
13317
|
+
/* ─── Inset timestamp ──────────────────────────────────── */
|
|
13318
|
+
|
|
13319
|
+
/*
|
|
13320
|
+
* Every author puts its timestamp in the bubble's bottom-right corner, below
|
|
13321
|
+
* the message — never in the header row (Figma 5355:44091).
|
|
13322
|
+
*/
|
|
13323
|
+
|
|
13324
|
+
.muka-chat-message__timestamp {
|
|
13325
|
+
color: var(--chatbubble-color-timestamp);
|
|
13326
|
+
font-family: var(--text-body-xs-regular-fontFamily);
|
|
13327
|
+
font-weight: var(--text-body-xs-regular-fontWeight);
|
|
13328
|
+
font-size: var(--text-body-xs-regular-fontSize);
|
|
13329
|
+
line-height: var(--text-body-xs-regular-lineHeight);
|
|
13270
13330
|
white-space: nowrap;
|
|
13271
|
-
overflow: hidden;
|
|
13272
|
-
text-overflow: ellipsis;
|
|
13273
13331
|
}
|
|
13274
13332
|
|
|
13275
|
-
|
|
13276
|
-
|
|
13277
|
-
|
|
13278
|
-
|
|
13279
|
-
|
|
13280
|
-
|
|
13281
|
-
|
|
13282
|
-
|
|
13283
|
-
text-overflow: ellipsis;
|
|
13333
|
+
/*
|
|
13334
|
+
* Pinned to the corner rather than stacked below the message, so a one-line
|
|
13335
|
+
* message stays one line tall. The message reserves the width it needs.
|
|
13336
|
+
*/
|
|
13337
|
+
.muka-chat-message__timestamp--inset {
|
|
13338
|
+
position: absolute;
|
|
13339
|
+
right: var(--spacing-2);
|
|
13340
|
+
bottom: var(--spacing-1);
|
|
13284
13341
|
}
|
|
13285
13342
|
|
|
13286
|
-
|
|
13287
|
-
|
|
13343
|
+
/*
|
|
13344
|
+
* When the last block in the body is media, an embed or an action stack (not
|
|
13345
|
+
* trailing text), it runs the full width, so reserve a line below for the inset
|
|
13346
|
+
* timestamp. A message that ends in text clears the corner inline instead (see
|
|
13347
|
+
* `__message` padding-right above), so it needs no extra bottom space.
|
|
13348
|
+
*/
|
|
13349
|
+
.muka-chat-message--has-timestamp.muka-chat-message--trailing-block .muka-chat-message__body {
|
|
13350
|
+
padding-bottom: var(--text-body-xs-regular-lineHeight);
|
|
13288
13351
|
}
|
|
13289
13352
|
|
|
13290
|
-
/* ───
|
|
13353
|
+
/* ─── Menu affordance ──────────────────────────────────── */
|
|
13291
13354
|
|
|
13292
|
-
|
|
13293
|
-
|
|
13294
|
-
|
|
13295
|
-
|
|
13296
|
-
|
|
13297
|
-
|
|
13298
|
-
|
|
13299
|
-
|
|
13300
|
-
|
|
13301
|
-
|
|
13302
|
-
|
|
13303
|
-
color: var(--color-text-subtle-default);
|
|
13304
|
-
flex-shrink: 0;
|
|
13305
|
-
-webkit-tap-highlight-color: transparent;
|
|
13355
|
+
/*
|
|
13356
|
+
* Hidden at rest. Revealed on hover on pointer devices, on keyboard focus
|
|
13357
|
+
* everywhere, and pinned while its menu is open. On touch the equivalent
|
|
13358
|
+
* affordance is a long-press on the bubble, which opens an ActionSheet.
|
|
13359
|
+
*/
|
|
13360
|
+
.muka-chat-message__menu {
|
|
13361
|
+
position: absolute;
|
|
13362
|
+
top: var(--spacing-1);
|
|
13363
|
+
right: var(--spacing-1);
|
|
13364
|
+
opacity: 0;
|
|
13365
|
+
pointer-events: none;
|
|
13306
13366
|
}
|
|
13307
13367
|
|
|
13308
|
-
.muka-chat-
|
|
13309
|
-
|
|
13310
|
-
|
|
13368
|
+
.muka-chat-message__menu:focus-within,
|
|
13369
|
+
.muka-chat-message--menu-open .muka-chat-message__menu {
|
|
13370
|
+
opacity: 1;
|
|
13371
|
+
pointer-events: auto;
|
|
13311
13372
|
}
|
|
13312
13373
|
|
|
13313
|
-
|
|
13314
|
-
|
|
13315
|
-
|
|
13374
|
+
@media (hover: hover) and (pointer: fine) and (min-width: 1024px) {
|
|
13375
|
+
.muka-chat-message__bubble:hover .muka-chat-message__menu {
|
|
13376
|
+
opacity: 1;
|
|
13377
|
+
pointer-events: auto;
|
|
13378
|
+
}
|
|
13316
13379
|
}
|
|
13317
13380
|
|
|
13318
|
-
|
|
13319
|
-
|
|
13320
|
-
|
|
13381
|
+
/* Suppress iOS Safari's own callout so the long-press sheet can take over */
|
|
13382
|
+
@media (pointer: coarse) {
|
|
13383
|
+
.muka-chat-message--has-menu .muka-chat-message__bubble {
|
|
13384
|
+
-webkit-touch-callout: none;
|
|
13385
|
+
}
|
|
13321
13386
|
}
|
|
13322
13387
|
|
|
13323
|
-
/* ───
|
|
13388
|
+
/* ─── Print ────────────────────────────────────────────── */
|
|
13324
13389
|
|
|
13325
|
-
|
|
13326
|
-
|
|
13327
|
-
|
|
13328
|
-
|
|
13329
|
-
|
|
13330
|
-
|
|
13331
|
-
|
|
13332
|
-
overflow: hidden;
|
|
13333
|
-
}
|
|
13390
|
+
@media print {
|
|
13391
|
+
.muka-chat-message__bubble {
|
|
13392
|
+
box-shadow: none;
|
|
13393
|
+
break-inside: avoid;
|
|
13394
|
+
print-color-adjust: exact;
|
|
13395
|
+
-webkit-print-color-adjust: exact;
|
|
13396
|
+
}
|
|
13334
13397
|
|
|
13335
|
-
.muka-chat-
|
|
13336
|
-
|
|
13337
|
-
|
|
13338
|
-
|
|
13339
|
-
|
|
13340
|
-
}
|
|
13398
|
+
.muka-chat-message__embed {
|
|
13399
|
+
break-inside: avoid;
|
|
13400
|
+
print-color-adjust: exact;
|
|
13401
|
+
-webkit-print-color-adjust: exact;
|
|
13402
|
+
}
|
|
13341
13403
|
|
|
13342
|
-
.muka-chat-
|
|
13343
|
-
|
|
13404
|
+
.muka-chat-message__menu,
|
|
13405
|
+
.muka-chat-message__embed-copy,
|
|
13406
|
+
.muka-chat-message__action-stack {
|
|
13407
|
+
display: none;
|
|
13408
|
+
}
|
|
13344
13409
|
}
|
|
13345
13410
|
|
|
13346
13411
|
|
|
13347
|
-
/*
|
|
13348
|
-
/*
|
|
13412
|
+
/* ChatComposer */
|
|
13413
|
+
/* ChatComposer Component Styles */
|
|
13349
13414
|
|
|
13350
|
-
|
|
13351
|
-
|
|
13352
|
-
|
|
13353
|
-
|
|
13354
|
-
|
|
13355
|
-
|
|
13356
|
-
|
|
13415
|
+
/*
|
|
13416
|
+
* The composer is a bare, fill-width row: no padding, background, border or
|
|
13417
|
+
* max-width of its own (Figma 5243:14141). Whatever hosts it owns the
|
|
13418
|
+
* container — see BottomBar's `chat` variant.
|
|
13419
|
+
*/
|
|
13420
|
+
.muka-chat-composer {
|
|
13421
|
+
display: flex;
|
|
13422
|
+
flex-direction: column;
|
|
13423
|
+
gap: var(--spacing-3);
|
|
13424
|
+
width: 100%;
|
|
13357
13425
|
}
|
|
13358
13426
|
|
|
13359
|
-
|
|
13360
|
-
.
|
|
13361
|
-
|
|
13427
|
+
.muka-chat-composer--disabled {
|
|
13428
|
+
opacity: 0.6;
|
|
13429
|
+
pointer-events: none;
|
|
13362
13430
|
}
|
|
13363
13431
|
|
|
13364
|
-
|
|
13365
|
-
padding: var(--card-padding-sm);
|
|
13366
|
-
}
|
|
13432
|
+
/* ─── Input row (default layout) ───────────────────────── */
|
|
13367
13433
|
|
|
13368
|
-
.muka-
|
|
13369
|
-
|
|
13434
|
+
.muka-chat-composer__row {
|
|
13435
|
+
display: flex;
|
|
13436
|
+
width: 100%;
|
|
13437
|
+
align-items: flex-end;
|
|
13438
|
+
gap: var(--spacing-3);
|
|
13370
13439
|
}
|
|
13371
13440
|
|
|
13372
|
-
|
|
13373
|
-
padding: var(--card-padding-lg);
|
|
13374
|
-
}
|
|
13441
|
+
/* ─── Text field ───────────────────────────────────────── */
|
|
13375
13442
|
|
|
13376
|
-
|
|
13377
|
-
|
|
13378
|
-
|
|
13443
|
+
.muka-chat-composer__field {
|
|
13444
|
+
display: flex;
|
|
13445
|
+
flex: 1 1 auto;
|
|
13446
|
+
min-width: 0;
|
|
13447
|
+
box-sizing: border-box;
|
|
13448
|
+
align-items: center;
|
|
13449
|
+
gap: var(--spacing-1);
|
|
13450
|
+
min-height: var(--input-field-height-lg, 48px);
|
|
13451
|
+
padding: 0 var(--spacing-2);
|
|
13452
|
+
border: var(--border-width-regular) solid var(--input-field-color-default-border);
|
|
13453
|
+
border-radius: var(--input-field-radius-lg);
|
|
13454
|
+
background-color: var(--input-field-color-default-background);
|
|
13455
|
+
transition: border-color 0.12s ease;
|
|
13379
13456
|
}
|
|
13380
13457
|
|
|
13381
|
-
.muka-
|
|
13382
|
-
|
|
13458
|
+
.muka-chat-composer--options .muka-chat-composer__field {
|
|
13459
|
+
flex: 1 1 auto;
|
|
13460
|
+
width: auto;
|
|
13383
13461
|
}
|
|
13384
13462
|
|
|
13385
|
-
|
|
13386
|
-
|
|
13463
|
+
/* Options input row: text field + mic / send beside it */
|
|
13464
|
+
.muka-chat-composer__options-input {
|
|
13465
|
+
display: flex;
|
|
13466
|
+
align-items: flex-end;
|
|
13467
|
+
gap: var(--spacing-3);
|
|
13468
|
+
width: 100%;
|
|
13387
13469
|
}
|
|
13388
13470
|
|
|
13389
|
-
|
|
13390
|
-
|
|
13391
|
-
cursor: pointer;
|
|
13392
|
-
user-select: none;
|
|
13471
|
+
.muka-chat-composer__field:focus-within {
|
|
13472
|
+
border-color: var(--input-field-color-focus-border, var(--color-action-default));
|
|
13393
13473
|
}
|
|
13394
13474
|
|
|
13395
|
-
.muka-
|
|
13396
|
-
|
|
13397
|
-
|
|
13398
|
-
|
|
13475
|
+
.muka-chat-composer__input {
|
|
13476
|
+
flex: 1 1 auto;
|
|
13477
|
+
min-width: 0;
|
|
13478
|
+
width: 100%;
|
|
13479
|
+
box-sizing: border-box;
|
|
13480
|
+
resize: none;
|
|
13481
|
+
border: none;
|
|
13482
|
+
background: transparent;
|
|
13483
|
+
outline: none;
|
|
13484
|
+
padding: 0 var(--spacing-1);
|
|
13485
|
+
color: var(--color-text-default-default);
|
|
13486
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
13487
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
13488
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
13489
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
13490
|
+
appearance: none;
|
|
13491
|
+
-webkit-appearance: none;
|
|
13399
13492
|
}
|
|
13400
13493
|
|
|
13401
|
-
.muka-
|
|
13402
|
-
|
|
13403
|
-
background-color: var(--card-color-pressed-background);
|
|
13404
|
-
border-color: var(--card-color-pressed-border);
|
|
13405
|
-
box-shadow: var(--card-shadow-pressed);
|
|
13494
|
+
.muka-chat-composer__input::placeholder {
|
|
13495
|
+
color: var(--color-text-subtle-default);
|
|
13406
13496
|
}
|
|
13407
13497
|
|
|
13408
|
-
|
|
13409
|
-
|
|
13410
|
-
|
|
13498
|
+
/* Keep the in-field emoji button flush to the bottom-right as the field grows */
|
|
13499
|
+
.muka-chat-composer__emoji {
|
|
13500
|
+
flex-shrink: 0;
|
|
13411
13501
|
}
|
|
13412
13502
|
|
|
13413
|
-
/*
|
|
13414
|
-
.muka-card--selected {
|
|
13415
|
-
background-color: var(--card-color-selected-background);
|
|
13416
|
-
border-color: var(--card-color-selected-border);
|
|
13417
|
-
border-width: var(--border-width-bold);
|
|
13418
|
-
box-shadow: var(--card-shadow-selected);
|
|
13419
|
-
}
|
|
13503
|
+
/* ─── Recording bar ────────────────────────────────────── */
|
|
13420
13504
|
|
|
13421
|
-
|
|
13422
|
-
|
|
13423
|
-
|
|
13505
|
+
.muka-chat-composer__recording {
|
|
13506
|
+
display: flex;
|
|
13507
|
+
flex: 1 1 auto;
|
|
13508
|
+
min-width: 0;
|
|
13509
|
+
box-sizing: border-box;
|
|
13510
|
+
align-items: center;
|
|
13511
|
+
min-height: var(--input-field-height-lg, 48px);
|
|
13512
|
+
padding: var(--card-padding-sm);
|
|
13513
|
+
border: var(--border-width-regular) solid var(--card-color-default-border);
|
|
13514
|
+
border-radius: var(--radius-lg);
|
|
13515
|
+
background-color: var(--card-color-default-background);
|
|
13424
13516
|
}
|
|
13425
13517
|
|
|
13426
|
-
|
|
13427
|
-
|
|
13428
|
-
|
|
13429
|
-
|
|
13430
|
-
|
|
13431
|
-
font-size: var(--text-heading-xs-fontSize);
|
|
13432
|
-
line-height: var(--text-heading-xs-lineHeight);
|
|
13433
|
-
letter-spacing: var(--text-heading-xs-letterSpacing);
|
|
13518
|
+
/* ─── Staged attachments strip ─────────────────────────── */
|
|
13519
|
+
|
|
13520
|
+
.muka-chat-composer__attachments-strip {
|
|
13521
|
+
position: relative;
|
|
13522
|
+
width: 100%;
|
|
13434
13523
|
}
|
|
13435
13524
|
|
|
13436
|
-
.muka-
|
|
13437
|
-
|
|
13438
|
-
|
|
13439
|
-
|
|
13440
|
-
|
|
13441
|
-
|
|
13442
|
-
line-height: var(--text-body-sm-regular-lineHeight);
|
|
13525
|
+
.muka-chat-composer__attachments {
|
|
13526
|
+
display: flex;
|
|
13527
|
+
gap: var(--spacing-3);
|
|
13528
|
+
overflow-x: auto;
|
|
13529
|
+
scroll-behavior: smooth;
|
|
13530
|
+
scrollbar-width: none;
|
|
13443
13531
|
}
|
|
13444
13532
|
|
|
13445
|
-
|
|
13446
|
-
.muka-card > .muka-listitem:last-child > .muka-listitem__divider {
|
|
13533
|
+
.muka-chat-composer__attachments::-webkit-scrollbar {
|
|
13447
13534
|
display: none;
|
|
13448
13535
|
}
|
|
13449
13536
|
|
|
13450
|
-
|
|
13451
|
-
|
|
13452
|
-
|
|
13453
|
-
|
|
13454
|
-
|
|
13537
|
+
.muka-chat-composer__overflow {
|
|
13538
|
+
position: absolute;
|
|
13539
|
+
top: 50%;
|
|
13540
|
+
right: var(--spacing-2);
|
|
13541
|
+
transform: translateY(-50%);
|
|
13455
13542
|
}
|
|
13456
13543
|
|
|
13544
|
+
/* ─── Options mode (Figma State=Options / State7 / State8) ─ */
|
|
13457
13545
|
|
|
13458
|
-
|
|
13459
|
-
/* ChatMessage Component Styles */
|
|
13460
|
-
|
|
13461
|
-
.muka-chat-message {
|
|
13546
|
+
.muka-chat-composer__prompt {
|
|
13462
13547
|
display: flex;
|
|
13463
|
-
|
|
13548
|
+
align-items: flex-start;
|
|
13549
|
+
gap: var(--spacing-3);
|
|
13464
13550
|
width: 100%;
|
|
13465
|
-
max-width: 100%;
|
|
13466
13551
|
}
|
|
13467
13552
|
|
|
13468
|
-
|
|
13469
|
-
|
|
13470
|
-
.muka-chat-message__row {
|
|
13471
|
-
display: grid;
|
|
13472
|
-
grid-template-columns: minmax(0, 1fr);
|
|
13473
|
-
grid-template-areas: 'bubble';
|
|
13474
|
-
column-gap: var(--chatbubble-row-gap);
|
|
13475
|
-
width: 100%;
|
|
13553
|
+
.muka-chat-composer__prompt-step {
|
|
13554
|
+
flex-shrink: 0;
|
|
13476
13555
|
}
|
|
13477
13556
|
|
|
13478
|
-
.muka-chat-
|
|
13479
|
-
|
|
13480
|
-
|
|
13557
|
+
.muka-chat-composer__prompt-text {
|
|
13558
|
+
display: flex;
|
|
13559
|
+
flex-direction: column;
|
|
13560
|
+
gap: var(--spacing-1);
|
|
13561
|
+
min-width: 0;
|
|
13562
|
+
flex: 1 1 auto;
|
|
13481
13563
|
}
|
|
13482
13564
|
|
|
13483
|
-
.muka-chat-
|
|
13484
|
-
|
|
13485
|
-
|
|
13486
|
-
|
|
13487
|
-
|
|
13488
|
-
|
|
13489
|
-
min-width: var(--chatbubble-avatar-size);
|
|
13565
|
+
.muka-chat-composer__prompt-heading {
|
|
13566
|
+
color: var(--color-text-default-default);
|
|
13567
|
+
font-family: var(--text-heading-sm-fontFamily);
|
|
13568
|
+
font-weight: var(--text-heading-sm-fontWeight);
|
|
13569
|
+
font-size: var(--text-heading-sm-fontSize);
|
|
13570
|
+
line-height: var(--text-heading-sm-lineHeight);
|
|
13490
13571
|
}
|
|
13491
13572
|
|
|
13492
|
-
|
|
13493
|
-
|
|
13494
|
-
|
|
13495
|
-
|
|
13496
|
-
|
|
13497
|
-
|
|
13498
|
-
|
|
13499
|
-
column-gap: var(--chatbubble-row-gap-compact);
|
|
13500
|
-
}
|
|
13573
|
+
.muka-chat-composer__prompt-description {
|
|
13574
|
+
color: var(--color-text-subtle-default);
|
|
13575
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
13576
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
13577
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
13578
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
13579
|
+
}
|
|
13501
13580
|
|
|
13502
|
-
|
|
13503
|
-
|
|
13504
|
-
|
|
13581
|
+
.muka-chat-composer__choices {
|
|
13582
|
+
width: 100%;
|
|
13583
|
+
}
|
|
13505
13584
|
|
|
13506
|
-
|
|
13507
|
-
|
|
13508
|
-
|
|
13509
|
-
height: var(--chatbubble-avatar-size-compact);
|
|
13510
|
-
}
|
|
13585
|
+
.muka-chat-composer__choices-card {
|
|
13586
|
+
width: 100%;
|
|
13587
|
+
overflow: hidden;
|
|
13511
13588
|
}
|
|
13512
13589
|
|
|
13513
|
-
/*
|
|
13590
|
+
/* Choice rows: the ListItem is the interactive control; the Radio/Checkbox is
|
|
13591
|
+
decorative for AT (aria-hidden) and sits in the leading slot. */
|
|
13592
|
+
.muka-chat-composer__choice-control {
|
|
13593
|
+
display: inline-flex;
|
|
13594
|
+
align-items: center;
|
|
13595
|
+
pointer-events: none;
|
|
13596
|
+
}
|
|
13514
13597
|
|
|
13515
|
-
.muka-chat-
|
|
13516
|
-
|
|
13517
|
-
|
|
13518
|
-
|
|
13519
|
-
|
|
13520
|
-
|
|
13521
|
-
|
|
13522
|
-
|
|
13523
|
-
|
|
13524
|
-
|
|
13525
|
-
|
|
13526
|
-
*/
|
|
13527
|
-
max-width: var(--chatbubble-max-width);
|
|
13598
|
+
.muka-chat-composer__choice-control .muka-radio,
|
|
13599
|
+
.muka-chat-composer__choice-control .muka-checkbox {
|
|
13600
|
+
pointer-events: none;
|
|
13601
|
+
}
|
|
13602
|
+
|
|
13603
|
+
/*
|
|
13604
|
+
* Multi-step footer (Figma Canned responses). Previous (muted) | centered
|
|
13605
|
+
* progress | Next/Send (muted when not ready, primary when ready — never
|
|
13606
|
+
* disabled for unreadiness).
|
|
13607
|
+
*/
|
|
13608
|
+
.muka-chat-composer__footer {
|
|
13528
13609
|
position: relative;
|
|
13529
13610
|
display: flex;
|
|
13530
|
-
|
|
13531
|
-
|
|
13532
|
-
|
|
13533
|
-
|
|
13534
|
-
|
|
13535
|
-
box-shadow: var(--shadow-level2);
|
|
13536
|
-
word-break: break-word;
|
|
13611
|
+
align-items: center;
|
|
13612
|
+
justify-content: space-between;
|
|
13613
|
+
gap: var(--spacing-2);
|
|
13614
|
+
width: 100%;
|
|
13615
|
+
min-height: var(--input-field-height-lg, 48px);
|
|
13537
13616
|
}
|
|
13538
13617
|
|
|
13539
|
-
|
|
13540
|
-
|
|
13541
|
-
width
|
|
13618
|
+
.muka-chat-composer__footer-spacer {
|
|
13619
|
+
display: inline-block;
|
|
13620
|
+
/* Approximate width of a Previous button so Next stays right-aligned when
|
|
13621
|
+
there is no back control (step 1 of N). */
|
|
13622
|
+
min-width: 7rem;
|
|
13623
|
+
flex-shrink: 0;
|
|
13542
13624
|
}
|
|
13543
13625
|
|
|
13544
|
-
.muka-chat-
|
|
13545
|
-
|
|
13626
|
+
.muka-chat-composer__footer-back {
|
|
13627
|
+
flex-shrink: 0;
|
|
13628
|
+
z-index: 1;
|
|
13546
13629
|
}
|
|
13547
13630
|
|
|
13548
|
-
.muka-chat-
|
|
13549
|
-
|
|
13550
|
-
|
|
13551
|
-
|
|
13631
|
+
.muka-chat-composer__footer-action {
|
|
13632
|
+
flex-shrink: 0;
|
|
13633
|
+
margin-left: auto;
|
|
13634
|
+
z-index: 1;
|
|
13552
13635
|
}
|
|
13553
13636
|
|
|
13554
|
-
.muka-chat-
|
|
13555
|
-
|
|
13556
|
-
|
|
13557
|
-
|
|
13637
|
+
.muka-chat-composer__progress {
|
|
13638
|
+
position: absolute;
|
|
13639
|
+
left: 50%;
|
|
13640
|
+
top: 50%;
|
|
13641
|
+
transform: translate(-50%, -50%);
|
|
13642
|
+
color: var(--color-text-subtle-default);
|
|
13643
|
+
font-family: var(--text-label-lg-regular-fontFamily, var(--text-body-base-regular-fontFamily));
|
|
13644
|
+
font-weight: var(--text-label-lg-regular-fontWeight, var(--text-body-base-regular-fontWeight));
|
|
13645
|
+
font-size: var(--text-label-lg-regular-fontSize, var(--text-body-base-regular-fontSize));
|
|
13646
|
+
line-height: var(--text-label-lg-regular-lineHeight, var(--text-body-base-regular-lineHeight));
|
|
13647
|
+
white-space: nowrap;
|
|
13648
|
+
pointer-events: none;
|
|
13558
13649
|
}
|
|
13559
13650
|
|
|
13560
|
-
|
|
13561
|
-
|
|
13562
|
-
|
|
13563
|
-
|
|
13651
|
+
/* ─── Print ────────────────────────────────────────────── */
|
|
13652
|
+
|
|
13653
|
+
@media print {
|
|
13654
|
+
.muka-chat-composer {
|
|
13655
|
+
display: none;
|
|
13656
|
+
}
|
|
13564
13657
|
}
|
|
13565
13658
|
|
|
13566
|
-
/* ─── Header row (author · meta · time · badge) ────────── */
|
|
13567
13659
|
|
|
13568
|
-
|
|
13569
|
-
|
|
13570
|
-
|
|
13660
|
+
/* ChatAttachmentChip */
|
|
13661
|
+
/* ChatAttachmentChip Component Styles */
|
|
13662
|
+
|
|
13663
|
+
.muka-chat-attachment-chip {
|
|
13664
|
+
position: relative;
|
|
13665
|
+
display: inline-flex;
|
|
13571
13666
|
align-items: center;
|
|
13572
|
-
gap: var(--
|
|
13667
|
+
gap: var(--spacing-1);
|
|
13668
|
+
max-width: 240px;
|
|
13669
|
+
padding: var(--spacing-2) var(--spacing-3);
|
|
13670
|
+
background-color: var(--color-surface-level1);
|
|
13671
|
+
border: var(--border-width-regular) solid var(--color-border-default);
|
|
13672
|
+
border-radius: var(--radius-md);
|
|
13673
|
+
overflow: hidden;
|
|
13573
13674
|
}
|
|
13574
13675
|
|
|
13575
|
-
.muka-chat-
|
|
13576
|
-
|
|
13577
|
-
font-weight: var(--text-body-base-bold-fontWeight);
|
|
13578
|
-
font-size: var(--text-body-base-bold-fontSize);
|
|
13579
|
-
line-height: var(--text-body-base-bold-lineHeight);
|
|
13676
|
+
.muka-chat-attachment-chip--uploading {
|
|
13677
|
+
padding-bottom: calc(var(--spacing-2) + 2px);
|
|
13580
13678
|
}
|
|
13581
13679
|
|
|
13582
|
-
.muka-chat-
|
|
13583
|
-
|
|
13584
|
-
color: inherit;
|
|
13585
|
-
font-family: var(--text-body-base-regular-fontFamily);
|
|
13586
|
-
font-weight: var(--text-body-base-regular-fontWeight);
|
|
13587
|
-
font-size: var(--text-body-base-regular-fontSize);
|
|
13588
|
-
line-height: var(--text-body-base-regular-lineHeight);
|
|
13680
|
+
.muka-chat-attachment-chip--error {
|
|
13681
|
+
border-color: var(--color-state-error-default, var(--color-text-default-default));
|
|
13589
13682
|
}
|
|
13590
13683
|
|
|
13591
|
-
.muka-chat-
|
|
13684
|
+
.muka-chat-attachment-chip--disabled {
|
|
13685
|
+
opacity: 0.5;
|
|
13686
|
+
pointer-events: none;
|
|
13687
|
+
}
|
|
13688
|
+
|
|
13689
|
+
/* ─── Body (icon + text) ───────────────────────────────── */
|
|
13690
|
+
|
|
13691
|
+
.muka-chat-attachment-chip__body {
|
|
13592
13692
|
display: inline-flex;
|
|
13593
13693
|
align-items: center;
|
|
13694
|
+
gap: var(--spacing-2);
|
|
13695
|
+
min-width: 0;
|
|
13696
|
+
flex: 1 1 auto;
|
|
13697
|
+
background: none;
|
|
13698
|
+
border: none;
|
|
13699
|
+
padding: 0;
|
|
13700
|
+
margin: 0;
|
|
13701
|
+
text-align: left;
|
|
13702
|
+
color: inherit;
|
|
13703
|
+
font: inherit;
|
|
13704
|
+
cursor: default;
|
|
13705
|
+
-webkit-tap-highlight-color: transparent;
|
|
13594
13706
|
}
|
|
13595
13707
|
|
|
13596
|
-
|
|
13597
|
-
|
|
13598
|
-
* button in the bubble's top-right corner.
|
|
13599
|
-
*/
|
|
13600
|
-
.muka-chat-message--has-menu .muka-chat-message__header,
|
|
13601
|
-
.muka-chat-message--has-menu.muka-chat-message--no-header .muka-chat-message__message {
|
|
13602
|
-
padding-right: var(--spacing-10);
|
|
13708
|
+
.muka-chat-attachment-chip--interactive .muka-chat-attachment-chip__body {
|
|
13709
|
+
cursor: pointer;
|
|
13603
13710
|
}
|
|
13604
13711
|
|
|
13605
|
-
|
|
13606
|
-
|
|
13607
|
-
|
|
13712
|
+
.muka-chat-attachment-chip--interactive .muka-chat-attachment-chip__body:focus-visible {
|
|
13713
|
+
outline: 2px solid var(--color-action-default);
|
|
13714
|
+
outline-offset: 2px;
|
|
13715
|
+
border-radius: var(--radius-sm);
|
|
13608
13716
|
}
|
|
13609
13717
|
|
|
13610
|
-
|
|
13718
|
+
.muka-chat-attachment-chip__icon {
|
|
13719
|
+
display: inline-flex;
|
|
13720
|
+
align-items: center;
|
|
13721
|
+
justify-content: center;
|
|
13722
|
+
flex-shrink: 0;
|
|
13723
|
+
color: var(--color-text-subtle-default);
|
|
13724
|
+
}
|
|
13611
13725
|
|
|
13612
|
-
.muka-chat-
|
|
13726
|
+
.muka-chat-attachment-chip__text {
|
|
13613
13727
|
display: flex;
|
|
13614
13728
|
flex-direction: column;
|
|
13615
|
-
gap: var(--chatbubble-gap);
|
|
13616
13729
|
min-width: 0;
|
|
13730
|
+
flex: 1 1 auto;
|
|
13617
13731
|
}
|
|
13618
13732
|
|
|
13619
|
-
.muka-chat-
|
|
13620
|
-
|
|
13733
|
+
.muka-chat-attachment-chip__name {
|
|
13734
|
+
color: var(--color-text-default-default);
|
|
13735
|
+
font-family: var(--text-body-sm-regular-fontFamily);
|
|
13736
|
+
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
13737
|
+
font-size: var(--text-body-sm-regular-fontSize);
|
|
13738
|
+
line-height: var(--text-body-sm-regular-lineHeight);
|
|
13739
|
+
white-space: nowrap;
|
|
13740
|
+
overflow: hidden;
|
|
13741
|
+
text-overflow: ellipsis;
|
|
13621
13742
|
}
|
|
13622
13743
|
|
|
13623
|
-
.muka-chat-
|
|
13624
|
-
|
|
13625
|
-
font-
|
|
13626
|
-
font-
|
|
13627
|
-
|
|
13628
|
-
|
|
13629
|
-
|
|
13744
|
+
.muka-chat-attachment-chip__meta {
|
|
13745
|
+
color: var(--color-text-subtle-default);
|
|
13746
|
+
font-family: var(--text-body-sm-regular-fontFamily);
|
|
13747
|
+
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
13748
|
+
font-size: var(--text-body-sm-regular-fontSize);
|
|
13749
|
+
line-height: var(--text-body-sm-regular-lineHeight);
|
|
13750
|
+
white-space: nowrap;
|
|
13751
|
+
overflow: hidden;
|
|
13752
|
+
text-overflow: ellipsis;
|
|
13630
13753
|
}
|
|
13631
13754
|
|
|
13632
|
-
|
|
13633
|
-
|
|
13634
|
-
display: none;
|
|
13755
|
+
.muka-chat-attachment-chip--error .muka-chat-attachment-chip__meta {
|
|
13756
|
+
color: var(--color-state-error-default, var(--color-text-default-default));
|
|
13635
13757
|
}
|
|
13636
13758
|
|
|
13637
|
-
/* ───
|
|
13759
|
+
/* ─── Remove button ────────────────────────────────────── */
|
|
13638
13760
|
|
|
13639
|
-
.muka-chat-
|
|
13640
|
-
|
|
13641
|
-
|
|
13642
|
-
|
|
13643
|
-
|
|
13644
|
-
|
|
13645
|
-
|
|
13646
|
-
|
|
13647
|
-
|
|
13648
|
-
border: var(--
|
|
13761
|
+
.muka-chat-attachment-chip__remove {
|
|
13762
|
+
display: inline-flex;
|
|
13763
|
+
align-items: center;
|
|
13764
|
+
justify-content: center;
|
|
13765
|
+
width: 20px;
|
|
13766
|
+
height: 20px;
|
|
13767
|
+
border: none;
|
|
13768
|
+
background: none;
|
|
13769
|
+
padding: 0;
|
|
13770
|
+
border-radius: var(--radius-sm);
|
|
13771
|
+
cursor: pointer;
|
|
13772
|
+
color: var(--color-text-subtle-default);
|
|
13773
|
+
flex-shrink: 0;
|
|
13774
|
+
-webkit-tap-highlight-color: transparent;
|
|
13649
13775
|
}
|
|
13650
13776
|
|
|
13651
|
-
|
|
13652
|
-
|
|
13653
|
-
|
|
13654
|
-
*/
|
|
13655
|
-
.muka-chat-message--own .muka-chat-message__embed {
|
|
13656
|
-
background-color: var(--chatbubble-embed-color-own-background);
|
|
13657
|
-
border-color: var(--chatbubble-embed-color-own-border);
|
|
13658
|
-
color: var(--chatbubble-embed-color-own-foreground);
|
|
13777
|
+
.muka-chat-attachment-chip__remove:hover:not(:disabled) {
|
|
13778
|
+
color: var(--color-text-default-default);
|
|
13779
|
+
background-color: var(--color-surface-level2);
|
|
13659
13780
|
}
|
|
13660
13781
|
|
|
13661
|
-
.muka-chat-
|
|
13662
|
-
|
|
13663
|
-
|
|
13664
|
-
color: var(--chatbubble-embed-color-peer-foreground);
|
|
13782
|
+
.muka-chat-attachment-chip__remove:focus-visible {
|
|
13783
|
+
outline: 2px solid var(--color-action-default);
|
|
13784
|
+
outline-offset: 2px;
|
|
13665
13785
|
}
|
|
13666
13786
|
|
|
13667
|
-
.muka-chat-
|
|
13668
|
-
|
|
13669
|
-
|
|
13670
|
-
color: var(--chatbubble-embed-color-agent-foreground);
|
|
13787
|
+
.muka-chat-attachment-chip__remove:disabled {
|
|
13788
|
+
cursor: not-allowed;
|
|
13789
|
+
opacity: 0.5;
|
|
13671
13790
|
}
|
|
13672
13791
|
|
|
13673
|
-
|
|
13674
|
-
|
|
13675
|
-
|
|
13676
|
-
|
|
13677
|
-
|
|
13792
|
+
/* ─── Progress bar ─────────────────────────────────────── */
|
|
13793
|
+
|
|
13794
|
+
.muka-chat-attachment-chip__progress {
|
|
13795
|
+
position: absolute;
|
|
13796
|
+
left: 0;
|
|
13797
|
+
right: 0;
|
|
13798
|
+
bottom: 0;
|
|
13799
|
+
height: 2px;
|
|
13800
|
+
background-color: var(--color-surface-level2);
|
|
13801
|
+
overflow: hidden;
|
|
13802
|
+
}
|
|
13803
|
+
|
|
13804
|
+
.muka-chat-attachment-chip__progress-fill {
|
|
13805
|
+
display: block;
|
|
13806
|
+
height: 100%;
|
|
13807
|
+
background-color: var(--color-action-default);
|
|
13808
|
+
transition: width 0.16s ease;
|
|
13809
|
+
}
|
|
13810
|
+
|
|
13811
|
+
.muka-chat-attachment-chip--error .muka-chat-attachment-chip__progress-fill {
|
|
13812
|
+
background-color: var(--color-state-error-default, var(--color-text-default-default));
|
|
13813
|
+
}
|
|
13814
|
+
|
|
13815
|
+
|
|
13816
|
+
/* Card */
|
|
13817
|
+
/* Card Component Styles - Using Muka Design Tokens */
|
|
13818
|
+
|
|
13819
|
+
.muka-card {
|
|
13820
|
+
background-color: var(--card-color-default-background);
|
|
13821
|
+
color: var(--card-color-default-foreground);
|
|
13822
|
+
border: var(--border-width-regular) solid var(--card-color-default-border);
|
|
13823
|
+
box-shadow: var(--card-shadow-default);
|
|
13824
|
+
transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
|
|
13825
|
+
overflow: hidden;
|
|
13678
13826
|
}
|
|
13679
13827
|
|
|
13680
|
-
|
|
13681
|
-
|
|
13682
|
-
|
|
13683
|
-
right: var(--chatbubble-embed-padding-inline);
|
|
13828
|
+
/* Padding variants */
|
|
13829
|
+
.muka-card--padding-none {
|
|
13830
|
+
padding: 0;
|
|
13684
13831
|
}
|
|
13685
13832
|
|
|
13686
|
-
|
|
13833
|
+
.muka-card--padding-sm {
|
|
13834
|
+
padding: var(--card-padding-sm);
|
|
13835
|
+
}
|
|
13687
13836
|
|
|
13688
|
-
.muka-
|
|
13689
|
-
|
|
13690
|
-
flex-direction: column;
|
|
13691
|
-
gap: var(--chatbubble-action-stack-gap);
|
|
13837
|
+
.muka-card--padding-md {
|
|
13838
|
+
padding: var(--card-padding-md);
|
|
13692
13839
|
}
|
|
13693
13840
|
|
|
13694
|
-
|
|
13841
|
+
.muka-card--padding-lg {
|
|
13842
|
+
padding: var(--card-padding-lg);
|
|
13843
|
+
}
|
|
13695
13844
|
|
|
13696
|
-
/*
|
|
13697
|
-
|
|
13698
|
-
|
|
13699
|
-
|
|
13845
|
+
/* Radius variants */
|
|
13846
|
+
.muka-card--radius-sm {
|
|
13847
|
+
border-radius: var(--card-radius-sm);
|
|
13848
|
+
}
|
|
13700
13849
|
|
|
13701
|
-
.muka-
|
|
13702
|
-
|
|
13703
|
-
font-family: var(--text-body-xs-regular-fontFamily);
|
|
13704
|
-
font-weight: var(--text-body-xs-regular-fontWeight);
|
|
13705
|
-
font-size: var(--text-body-xs-regular-fontSize);
|
|
13706
|
-
line-height: var(--text-body-xs-regular-lineHeight);
|
|
13707
|
-
white-space: nowrap;
|
|
13850
|
+
.muka-card--radius-md {
|
|
13851
|
+
border-radius: var(--card-radius-md);
|
|
13708
13852
|
}
|
|
13709
13853
|
|
|
13710
|
-
|
|
13711
|
-
|
|
13712
|
-
* message stays one line tall. The message reserves the width it needs.
|
|
13713
|
-
*/
|
|
13714
|
-
.muka-chat-message__timestamp--inset {
|
|
13715
|
-
position: absolute;
|
|
13716
|
-
right: var(--spacing-2);
|
|
13717
|
-
bottom: var(--spacing-1);
|
|
13854
|
+
.muka-card--radius-lg {
|
|
13855
|
+
border-radius: var(--card-radius-lg);
|
|
13718
13856
|
}
|
|
13719
13857
|
|
|
13720
|
-
/*
|
|
13721
|
-
|
|
13722
|
-
|
|
13723
|
-
|
|
13724
|
-
* `__message` padding-right above), so it needs no extra bottom space.
|
|
13725
|
-
*/
|
|
13726
|
-
.muka-chat-message--has-timestamp.muka-chat-message--trailing-block .muka-chat-message__body {
|
|
13727
|
-
padding-bottom: var(--text-body-xs-regular-lineHeight);
|
|
13858
|
+
/* Interactive variant */
|
|
13859
|
+
.muka-card--interactive {
|
|
13860
|
+
cursor: pointer;
|
|
13861
|
+
user-select: none;
|
|
13728
13862
|
}
|
|
13729
13863
|
|
|
13730
|
-
|
|
13864
|
+
.muka-card--interactive:hover {
|
|
13865
|
+
background-color: var(--card-color-hover-background);
|
|
13866
|
+
border-color: var(--card-color-hover-border);
|
|
13867
|
+
box-shadow: var(--card-shadow-hover);
|
|
13868
|
+
}
|
|
13731
13869
|
|
|
13732
|
-
|
|
13733
|
-
|
|
13734
|
-
|
|
13735
|
-
|
|
13736
|
-
|
|
13737
|
-
.muka-chat-message__menu {
|
|
13738
|
-
position: absolute;
|
|
13739
|
-
top: var(--spacing-1);
|
|
13740
|
-
right: var(--spacing-1);
|
|
13741
|
-
opacity: 0;
|
|
13742
|
-
pointer-events: none;
|
|
13870
|
+
.muka-card--interactive:active,
|
|
13871
|
+
.muka-card--interactive.muka-card--pressed {
|
|
13872
|
+
background-color: var(--card-color-pressed-background);
|
|
13873
|
+
border-color: var(--card-color-pressed-border);
|
|
13874
|
+
box-shadow: var(--card-shadow-pressed);
|
|
13743
13875
|
}
|
|
13744
13876
|
|
|
13745
|
-
.muka-
|
|
13746
|
-
|
|
13747
|
-
|
|
13748
|
-
pointer-events: auto;
|
|
13877
|
+
.muka-card--interactive:focus-visible {
|
|
13878
|
+
outline: 2px solid var(--color-border-focus);
|
|
13879
|
+
outline-offset: 2px;
|
|
13749
13880
|
}
|
|
13750
13881
|
|
|
13751
|
-
|
|
13752
|
-
|
|
13753
|
-
|
|
13754
|
-
|
|
13755
|
-
|
|
13882
|
+
/* Selected variant */
|
|
13883
|
+
.muka-card--selected {
|
|
13884
|
+
background-color: var(--card-color-selected-background);
|
|
13885
|
+
border-color: var(--card-color-selected-border);
|
|
13886
|
+
border-width: var(--border-width-bold);
|
|
13887
|
+
box-shadow: var(--card-shadow-selected);
|
|
13756
13888
|
}
|
|
13757
13889
|
|
|
13758
|
-
/*
|
|
13759
|
-
|
|
13760
|
-
|
|
13761
|
-
-webkit-touch-callout: none;
|
|
13762
|
-
}
|
|
13890
|
+
/* Optional header (title + description) */
|
|
13891
|
+
.muka-card__header {
|
|
13892
|
+
margin-bottom: var(--spacing-4);
|
|
13763
13893
|
}
|
|
13764
13894
|
|
|
13765
|
-
|
|
13895
|
+
.muka-card__title {
|
|
13896
|
+
margin: 0;
|
|
13897
|
+
color: var(--color-text-default-default);
|
|
13898
|
+
font-family: var(--text-heading-xs-fontFamily);
|
|
13899
|
+
font-weight: var(--text-heading-xs-fontWeight);
|
|
13900
|
+
font-size: var(--text-heading-xs-fontSize);
|
|
13901
|
+
line-height: var(--text-heading-xs-lineHeight);
|
|
13902
|
+
letter-spacing: var(--text-heading-xs-letterSpacing);
|
|
13903
|
+
}
|
|
13766
13904
|
|
|
13767
|
-
|
|
13768
|
-
|
|
13769
|
-
|
|
13770
|
-
|
|
13771
|
-
|
|
13772
|
-
|
|
13773
|
-
|
|
13905
|
+
.muka-card__description {
|
|
13906
|
+
margin: var(--spacing-1) 0 0;
|
|
13907
|
+
color: var(--color-text-subtle-default);
|
|
13908
|
+
font-family: var(--text-body-sm-regular-fontFamily);
|
|
13909
|
+
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
13910
|
+
font-size: var(--text-body-sm-regular-fontSize);
|
|
13911
|
+
line-height: var(--text-body-sm-regular-lineHeight);
|
|
13912
|
+
}
|
|
13774
13913
|
|
|
13775
|
-
|
|
13776
|
-
|
|
13777
|
-
|
|
13778
|
-
|
|
13779
|
-
}
|
|
13914
|
+
/* Hide divider on last list item inside card */
|
|
13915
|
+
.muka-card > .muka-listitem:last-child > .muka-listitem__divider {
|
|
13916
|
+
display: none;
|
|
13917
|
+
}
|
|
13780
13918
|
|
|
13781
|
-
|
|
13782
|
-
|
|
13783
|
-
.
|
|
13784
|
-
|
|
13785
|
-
|
|
13919
|
+
/* Disabled state */
|
|
13920
|
+
.muka-card--disabled {
|
|
13921
|
+
opacity: 0.5;
|
|
13922
|
+
cursor: not-allowed;
|
|
13923
|
+
pointer-events: none;
|
|
13786
13924
|
}
|
|
13787
13925
|
|
|
13788
13926
|
|
|
@@ -14112,25 +14250,139 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14112
14250
|
align-items: center;
|
|
14113
14251
|
}
|
|
14114
14252
|
|
|
14115
|
-
/* Icon-only buttons - square, sized to the button height per size */
|
|
14116
|
-
.muka-button--icon-only {
|
|
14117
|
-
padding: 0;
|
|
14253
|
+
/* Icon-only buttons - square, sized to the button height per size */
|
|
14254
|
+
.muka-button--icon-only {
|
|
14255
|
+
padding: 0;
|
|
14256
|
+
}
|
|
14257
|
+
|
|
14258
|
+
.muka-button--icon-only.muka-button--sm {
|
|
14259
|
+
width: 32px;
|
|
14260
|
+
}
|
|
14261
|
+
|
|
14262
|
+
.muka-button--icon-only.muka-button--md {
|
|
14263
|
+
width: 40px;
|
|
14264
|
+
}
|
|
14265
|
+
|
|
14266
|
+
.muka-button--icon-only.muka-button--lg {
|
|
14267
|
+
width: 48px;
|
|
14268
|
+
}
|
|
14269
|
+
|
|
14270
|
+
.muka-button--icon-only.muka-button--xl {
|
|
14271
|
+
width: 64px;
|
|
14272
|
+
}
|
|
14273
|
+
|
|
14274
|
+
|
|
14275
|
+
/* Breadcrumb */
|
|
14276
|
+
/* Breadcrumb Component Styles */
|
|
14277
|
+
|
|
14278
|
+
.muka-breadcrumb__list {
|
|
14279
|
+
display: flex;
|
|
14280
|
+
align-items: center;
|
|
14281
|
+
flex-wrap: wrap;
|
|
14282
|
+
list-style: none;
|
|
14283
|
+
margin: 0;
|
|
14284
|
+
padding: 0;
|
|
14285
|
+
gap: var(--spacing-1);
|
|
14286
|
+
}
|
|
14287
|
+
|
|
14288
|
+
.muka-breadcrumb__item {
|
|
14289
|
+
display: inline-flex;
|
|
14290
|
+
align-items: center;
|
|
14291
|
+
gap: var(--spacing-1);
|
|
14292
|
+
}
|
|
14293
|
+
|
|
14294
|
+
.muka-breadcrumb__item:has(.muka-breadcrumb__icon) {
|
|
14295
|
+
padding-left: var(--spacing-1);
|
|
14296
|
+
}
|
|
14297
|
+
|
|
14298
|
+
.muka-breadcrumb__icon {
|
|
14299
|
+
display: inline-flex;
|
|
14300
|
+
align-items: center;
|
|
14301
|
+
color: var(--color-text-subtle-default);
|
|
14302
|
+
}
|
|
14303
|
+
|
|
14304
|
+
.muka-breadcrumb__icon .muka-icon {
|
|
14305
|
+
color: inherit;
|
|
14306
|
+
}
|
|
14307
|
+
|
|
14308
|
+
.muka-breadcrumb__item:has(.muka-breadcrumb__current) .muka-breadcrumb__icon {
|
|
14309
|
+
color: var(--color-text-default-default);
|
|
14310
|
+
}
|
|
14311
|
+
|
|
14312
|
+
.muka-breadcrumb__item:has(.muka-breadcrumb__link:hover) .muka-breadcrumb__icon {
|
|
14313
|
+
color: var(--color-text-action-default);
|
|
14314
|
+
}
|
|
14315
|
+
|
|
14316
|
+
/* Link styles */
|
|
14317
|
+
.muka-breadcrumb__link {
|
|
14318
|
+
color: var(--color-text-subtle-default);
|
|
14319
|
+
text-decoration: none;
|
|
14320
|
+
border: none;
|
|
14321
|
+
background: none;
|
|
14322
|
+
padding-inline: var(--spacing-2);
|
|
14323
|
+
padding-block: 0;
|
|
14324
|
+
cursor: pointer;
|
|
14325
|
+
font: inherit;
|
|
14326
|
+
transition: color 0.15s ease;
|
|
14327
|
+
}
|
|
14328
|
+
|
|
14329
|
+
.muka-breadcrumb__link:hover {
|
|
14330
|
+
color: var(--color-text-action-default);
|
|
14331
|
+
text-decoration: underline;
|
|
14332
|
+
}
|
|
14333
|
+
|
|
14334
|
+
/* Tighter gap after leading icon */
|
|
14335
|
+
.muka-breadcrumb__item:has(.muka-breadcrumb__icon) .muka-breadcrumb__link,
|
|
14336
|
+
.muka-breadcrumb__item:has(.muka-breadcrumb__icon) .muka-breadcrumb__current {
|
|
14337
|
+
padding-left: var(--spacing-1);
|
|
14338
|
+
}
|
|
14339
|
+
|
|
14340
|
+
/* Current page (last item, no context switcher) */
|
|
14341
|
+
.muka-breadcrumb__current {
|
|
14342
|
+
color: var(--color-text-default-default);
|
|
14343
|
+
font-weight: 600;
|
|
14344
|
+
padding-inline: var(--spacing-2);
|
|
14345
|
+
}
|
|
14346
|
+
|
|
14347
|
+
/* Separator */
|
|
14348
|
+
.muka-breadcrumb__separator {
|
|
14349
|
+
color: var(--color-text-subtle-default);
|
|
14350
|
+
user-select: none;
|
|
14351
|
+
}
|
|
14352
|
+
|
|
14353
|
+
.muka-breadcrumb__item--context {
|
|
14354
|
+
gap: 0;
|
|
14355
|
+
}
|
|
14356
|
+
|
|
14357
|
+
.muka-breadcrumb__list:has(.muka-breadcrumb__item--context) {
|
|
14358
|
+
gap: 0;
|
|
14118
14359
|
}
|
|
14119
14360
|
|
|
14120
|
-
.muka-
|
|
14121
|
-
|
|
14361
|
+
.muka-breadcrumb__item--context .muka-breadcrumb__separator {
|
|
14362
|
+
margin: 0;
|
|
14363
|
+
padding-inline: var(--spacing-1, 4px);
|
|
14122
14364
|
}
|
|
14123
14365
|
|
|
14124
|
-
|
|
14125
|
-
|
|
14366
|
+
/* Size variants */
|
|
14367
|
+
.muka-breadcrumb--sm {
|
|
14368
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
14369
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
14370
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
14371
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
14126
14372
|
}
|
|
14127
14373
|
|
|
14128
|
-
.muka-
|
|
14129
|
-
|
|
14374
|
+
.muka-breadcrumb--md {
|
|
14375
|
+
font-family: var(--text-label-md-regular-fontFamily);
|
|
14376
|
+
font-weight: var(--text-label-md-regular-fontWeight);
|
|
14377
|
+
font-size: var(--text-label-md-regular-fontSize);
|
|
14378
|
+
line-height: var(--text-label-md-regular-lineHeight);
|
|
14130
14379
|
}
|
|
14131
14380
|
|
|
14132
|
-
.muka-
|
|
14133
|
-
|
|
14381
|
+
.muka-breadcrumb--lg {
|
|
14382
|
+
font-family: var(--text-label-lg-regular-fontFamily);
|
|
14383
|
+
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
14384
|
+
font-size: var(--text-label-lg-regular-fontSize);
|
|
14385
|
+
line-height: var(--text-label-lg-regular-lineHeight);
|
|
14134
14386
|
}
|
|
14135
14387
|
|
|
14136
14388
|
|
|
@@ -14356,319 +14608,97 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14356
14608
|
|
|
14357
14609
|
.muka-bottombar--desktop-sidebar .muka-bottombar__tab:hover {
|
|
14358
14610
|
background-color: var(--color-surface-level2);
|
|
14359
|
-
}
|
|
14360
|
-
|
|
14361
|
-
.muka-bottombar--desktop-sidebar .muka-bottombar__tab-label {
|
|
14362
|
-
font-family: var(--text-label-md-regular-fontFamily);
|
|
14363
|
-
font-weight: var(--text-label-md-regular-fontWeight);
|
|
14364
|
-
font-size: var(--text-label-md-regular-fontSize);
|
|
14365
|
-
line-height: var(--text-label-md-regular-lineHeight);
|
|
14366
|
-
}
|
|
14367
|
-
|
|
14368
|
-
/* When floating and sidebar, remove the floating card styles */
|
|
14369
|
-
.muka-bottombar--desktop-sidebar.muka-bottombar--floating {
|
|
14370
|
-
padding: 0;
|
|
14371
|
-
}
|
|
14372
|
-
|
|
14373
|
-
.muka-bottombar--desktop-sidebar.muka-bottombar--floating .muka-bottombar__content {
|
|
14374
|
-
background-color: transparent;
|
|
14375
|
-
border-radius: 0;
|
|
14376
|
-
box-shadow: none;
|
|
14377
|
-
}
|
|
14378
|
-
}
|
|
14379
|
-
|
|
14380
|
-
/* ─── Desktop: Top Navigation transformation ──────────── */
|
|
14381
|
-
|
|
14382
|
-
@media (min-width: 1024px) {
|
|
14383
|
-
.muka-bottombar--desktop-topnav {
|
|
14384
|
-
position: fixed;
|
|
14385
|
-
top: 0;
|
|
14386
|
-
left: 0;
|
|
14387
|
-
right: 0;
|
|
14388
|
-
width: 100%;
|
|
14389
|
-
height: auto;
|
|
14390
|
-
background-color: var(--bottombar-color-background);
|
|
14391
|
-
border-bottom: var(--border-width-regular) solid var(--bottombar-color-border);
|
|
14392
|
-
z-index: 10;
|
|
14393
|
-
}
|
|
14394
|
-
|
|
14395
|
-
.muka-bottombar--desktop-topnav .muka-bottombar__divider {
|
|
14396
|
-
display: none;
|
|
14397
|
-
}
|
|
14398
|
-
|
|
14399
|
-
.muka-bottombar--desktop-topnav .muka-bottombar__content {
|
|
14400
|
-
flex-direction: row;
|
|
14401
|
-
justify-content: center;
|
|
14402
|
-
gap: var(--spacing-1);
|
|
14403
|
-
padding: 0 var(--spacing-4);
|
|
14404
|
-
max-width: var(--container-max-width-large, 1200px);
|
|
14405
|
-
margin: 0 auto;
|
|
14406
|
-
}
|
|
14407
|
-
|
|
14408
|
-
.muka-bottombar--desktop-topnav .muka-bottombar__tab {
|
|
14409
|
-
flex: 0 0 auto;
|
|
14410
|
-
flex-direction: row;
|
|
14411
|
-
gap: var(--spacing-2);
|
|
14412
|
-
padding: var(--spacing-3) var(--spacing-4);
|
|
14413
|
-
border-radius: 0;
|
|
14414
|
-
border-bottom: 2px solid transparent;
|
|
14415
|
-
}
|
|
14416
|
-
|
|
14417
|
-
.muka-bottombar--desktop-topnav .muka-bottombar__tab--active {
|
|
14418
|
-
border-bottom-color: var(--color-action-default);
|
|
14419
|
-
}
|
|
14420
|
-
|
|
14421
|
-
.muka-bottombar--desktop-topnav .muka-bottombar__tab:hover {
|
|
14422
|
-
background-color: var(--color-surface-level2);
|
|
14423
|
-
}
|
|
14424
|
-
|
|
14425
|
-
.muka-bottombar--desktop-topnav .muka-bottombar__tab-label {
|
|
14426
|
-
font-family: var(--text-label-md-regular-fontFamily);
|
|
14427
|
-
font-weight: var(--text-label-md-regular-fontWeight);
|
|
14428
|
-
font-size: var(--text-label-md-regular-fontSize);
|
|
14429
|
-
line-height: var(--text-label-md-regular-lineHeight);
|
|
14430
|
-
}
|
|
14431
|
-
|
|
14432
|
-
/* When floating and topnav, remove the floating card styles */
|
|
14433
|
-
.muka-bottombar--desktop-topnav.muka-bottombar--floating {
|
|
14434
|
-
padding: 0;
|
|
14435
|
-
}
|
|
14436
|
-
|
|
14437
|
-
.muka-bottombar--desktop-topnav.muka-bottombar--floating .muka-bottombar__content {
|
|
14438
|
-
background-color: transparent;
|
|
14439
|
-
border-radius: 0;
|
|
14440
|
-
box-shadow: none;
|
|
14441
|
-
}
|
|
14442
|
-
}
|
|
14443
|
-
|
|
14444
|
-
/* ─── Print ────────────────────────────────────────────── */
|
|
14445
|
-
|
|
14446
|
-
@media print {
|
|
14447
|
-
.muka-bottombar {
|
|
14448
|
-
display: none;
|
|
14449
|
-
}
|
|
14450
|
-
}
|
|
14451
|
-
|
|
14452
|
-
|
|
14453
|
-
/* BadgeNumber */
|
|
14454
|
-
/* BadgeNumber Component Styles - Using Muka Design Tokens */
|
|
14455
|
-
|
|
14456
|
-
.muka-badge-number {
|
|
14457
|
-
display: inline-flex;
|
|
14458
|
-
align-items: center;
|
|
14459
|
-
justify-content: center;
|
|
14460
|
-
border-radius: var(--border-radius-full);
|
|
14461
|
-
white-space: nowrap;
|
|
14462
|
-
user-select: none;
|
|
14463
|
-
box-sizing: border-box;
|
|
14464
|
-
}
|
|
14465
|
-
|
|
14466
|
-
/*
|
|
14467
|
-
* Sizes — fixed height, matching min-width (so a single digit renders as a
|
|
14468
|
-
* circle), horizontal padding, and bold label typography. Vertical centering
|
|
14469
|
-
* is handled by the fixed height + align-items: center.
|
|
14470
|
-
*/
|
|
14471
|
-
.muka-badge-number--2xs {
|
|
14472
|
-
height: var(--badge-number-size-2xs);
|
|
14473
|
-
min-width: var(--badge-number-size-2xs);
|
|
14474
|
-
padding: 0 var(--badge-number-padding-2xs);
|
|
14475
|
-
font-family: var(--text-label-xs-bold-fontFamily);
|
|
14476
|
-
font-weight: var(--text-label-xs-bold-fontWeight);
|
|
14477
|
-
font-size: var(--text-label-xs-bold-fontSize);
|
|
14478
|
-
line-height: var(--text-label-xs-bold-lineHeight);
|
|
14479
|
-
}
|
|
14480
|
-
|
|
14481
|
-
.muka-badge-number--xs {
|
|
14482
|
-
height: var(--badge-number-size-xs);
|
|
14483
|
-
min-width: var(--badge-number-size-xs);
|
|
14484
|
-
padding: 0 var(--badge-number-padding-xs);
|
|
14485
|
-
font-family: var(--text-label-sm-bold-fontFamily);
|
|
14486
|
-
font-weight: var(--text-label-sm-bold-fontWeight);
|
|
14487
|
-
font-size: var(--text-label-sm-bold-fontSize);
|
|
14488
|
-
line-height: var(--text-label-sm-bold-lineHeight);
|
|
14489
|
-
}
|
|
14490
|
-
|
|
14491
|
-
.muka-badge-number--sm {
|
|
14492
|
-
height: var(--badge-number-size-sm);
|
|
14493
|
-
min-width: var(--badge-number-size-sm);
|
|
14494
|
-
padding: 0 var(--badge-number-padding-sm);
|
|
14495
|
-
font-family: var(--text-label-md-bold-fontFamily);
|
|
14496
|
-
font-weight: var(--text-label-md-bold-fontWeight);
|
|
14497
|
-
font-size: var(--text-label-md-bold-fontSize);
|
|
14498
|
-
line-height: var(--text-label-md-bold-lineHeight);
|
|
14499
|
-
}
|
|
14500
|
-
|
|
14501
|
-
.muka-badge-number--md {
|
|
14502
|
-
height: var(--badge-number-size-md);
|
|
14503
|
-
min-width: var(--badge-number-size-md);
|
|
14504
|
-
padding: 0 var(--badge-number-padding-md);
|
|
14505
|
-
font-family: var(--text-label-lg-bold-fontFamily);
|
|
14506
|
-
font-weight: var(--text-label-lg-bold-fontWeight);
|
|
14507
|
-
font-size: var(--text-label-lg-bold-fontSize);
|
|
14508
|
-
line-height: var(--text-label-lg-bold-lineHeight);
|
|
14509
|
-
}
|
|
14510
|
-
|
|
14511
|
-
.muka-badge-number--lg {
|
|
14512
|
-
height: var(--badge-number-size-lg);
|
|
14513
|
-
min-width: var(--badge-number-size-lg);
|
|
14514
|
-
padding: 0 var(--badge-number-padding-lg);
|
|
14515
|
-
font-family: var(--text-label-2xl-bold-fontFamily);
|
|
14516
|
-
font-weight: var(--text-label-2xl-bold-fontWeight);
|
|
14517
|
-
font-size: var(--text-label-2xl-bold-fontSize);
|
|
14518
|
-
line-height: var(--text-label-2xl-bold-lineHeight);
|
|
14519
|
-
}
|
|
14520
|
-
|
|
14521
|
-
.muka-badge-number__label {
|
|
14522
|
-
/*
|
|
14523
|
-
* The badge sets a tight line-height for compact sizing, which would clip
|
|
14524
|
-
* glyph descenders; give the label a roomier line-height. Vertical centering
|
|
14525
|
-
* is unaffected because the badge height is fixed and content is centered.
|
|
14526
|
-
*/
|
|
14527
|
-
line-height: normal;
|
|
14528
|
-
}
|
|
14529
|
-
|
|
14530
|
-
/* Neutral variant */
|
|
14531
|
-
.muka-badge-number--neutral {
|
|
14532
|
-
background-color: var(--color-surface-level1);
|
|
14533
|
-
color: var(--color-text-default-default);
|
|
14534
|
-
}
|
|
14535
|
-
|
|
14536
|
-
/* Info variant */
|
|
14537
|
-
.muka-badge-number--info {
|
|
14538
|
-
background-color: var(--color-state-info-contrast);
|
|
14539
|
-
color: var(--color-text-default-inverse);
|
|
14540
|
-
}
|
|
14541
|
-
|
|
14542
|
-
/* Success variant */
|
|
14543
|
-
.muka-badge-number--success {
|
|
14544
|
-
background-color: var(--color-state-success-contrast);
|
|
14545
|
-
color: var(--color-text-default-inverse);
|
|
14546
|
-
}
|
|
14547
|
-
|
|
14548
|
-
/* Warning variant */
|
|
14549
|
-
.muka-badge-number--warning {
|
|
14550
|
-
background-color: var(--color-state-warning-contrast);
|
|
14551
|
-
color: var(--color-text-default-inverse);
|
|
14552
|
-
}
|
|
14553
|
-
|
|
14554
|
-
/* Error variant */
|
|
14555
|
-
.muka-badge-number--error {
|
|
14556
|
-
background-color: var(--color-state-error-contrast);
|
|
14557
|
-
color: var(--color-text-default-inverse);
|
|
14558
|
-
}
|
|
14559
|
-
|
|
14560
|
-
|
|
14561
|
-
/* Breadcrumb */
|
|
14562
|
-
/* Breadcrumb Component Styles */
|
|
14563
|
-
|
|
14564
|
-
.muka-breadcrumb__list {
|
|
14565
|
-
display: flex;
|
|
14566
|
-
align-items: center;
|
|
14567
|
-
flex-wrap: wrap;
|
|
14568
|
-
list-style: none;
|
|
14569
|
-
margin: 0;
|
|
14570
|
-
padding: 0;
|
|
14571
|
-
gap: var(--spacing-1);
|
|
14572
|
-
}
|
|
14573
|
-
|
|
14574
|
-
.muka-breadcrumb__item {
|
|
14575
|
-
display: inline-flex;
|
|
14576
|
-
align-items: center;
|
|
14577
|
-
gap: var(--spacing-1);
|
|
14578
|
-
}
|
|
14579
|
-
|
|
14580
|
-
.muka-breadcrumb__item:has(.muka-breadcrumb__icon) {
|
|
14581
|
-
padding-left: var(--spacing-1);
|
|
14582
|
-
}
|
|
14611
|
+
}
|
|
14583
14612
|
|
|
14584
|
-
.muka-
|
|
14585
|
-
|
|
14586
|
-
|
|
14587
|
-
|
|
14588
|
-
|
|
14613
|
+
.muka-bottombar--desktop-sidebar .muka-bottombar__tab-label {
|
|
14614
|
+
font-family: var(--text-label-md-regular-fontFamily);
|
|
14615
|
+
font-weight: var(--text-label-md-regular-fontWeight);
|
|
14616
|
+
font-size: var(--text-label-md-regular-fontSize);
|
|
14617
|
+
line-height: var(--text-label-md-regular-lineHeight);
|
|
14618
|
+
}
|
|
14589
14619
|
|
|
14590
|
-
|
|
14591
|
-
|
|
14592
|
-
|
|
14620
|
+
/* When floating and sidebar, remove the floating card styles */
|
|
14621
|
+
.muka-bottombar--desktop-sidebar.muka-bottombar--floating {
|
|
14622
|
+
padding: 0;
|
|
14623
|
+
}
|
|
14593
14624
|
|
|
14594
|
-
.muka-
|
|
14595
|
-
|
|
14625
|
+
.muka-bottombar--desktop-sidebar.muka-bottombar--floating .muka-bottombar__content {
|
|
14626
|
+
background-color: transparent;
|
|
14627
|
+
border-radius: 0;
|
|
14628
|
+
box-shadow: none;
|
|
14629
|
+
}
|
|
14596
14630
|
}
|
|
14597
14631
|
|
|
14598
|
-
|
|
14599
|
-
color: var(--color-text-action-default);
|
|
14600
|
-
}
|
|
14632
|
+
/* ─── Desktop: Top Navigation transformation ──────────── */
|
|
14601
14633
|
|
|
14602
|
-
|
|
14603
|
-
.muka-
|
|
14604
|
-
|
|
14605
|
-
|
|
14606
|
-
|
|
14607
|
-
|
|
14608
|
-
|
|
14609
|
-
|
|
14610
|
-
|
|
14611
|
-
|
|
14612
|
-
|
|
14613
|
-
}
|
|
14634
|
+
@media (min-width: 1024px) {
|
|
14635
|
+
.muka-bottombar--desktop-topnav {
|
|
14636
|
+
position: fixed;
|
|
14637
|
+
top: 0;
|
|
14638
|
+
left: 0;
|
|
14639
|
+
right: 0;
|
|
14640
|
+
width: 100%;
|
|
14641
|
+
height: auto;
|
|
14642
|
+
background-color: var(--bottombar-color-background);
|
|
14643
|
+
border-bottom: var(--border-width-regular) solid var(--bottombar-color-border);
|
|
14644
|
+
z-index: 10;
|
|
14645
|
+
}
|
|
14614
14646
|
|
|
14615
|
-
.muka-
|
|
14616
|
-
|
|
14617
|
-
|
|
14618
|
-
}
|
|
14647
|
+
.muka-bottombar--desktop-topnav .muka-bottombar__divider {
|
|
14648
|
+
display: none;
|
|
14649
|
+
}
|
|
14619
14650
|
|
|
14620
|
-
|
|
14621
|
-
|
|
14622
|
-
|
|
14623
|
-
|
|
14624
|
-
|
|
14651
|
+
.muka-bottombar--desktop-topnav .muka-bottombar__content {
|
|
14652
|
+
flex-direction: row;
|
|
14653
|
+
justify-content: center;
|
|
14654
|
+
gap: var(--spacing-1);
|
|
14655
|
+
padding: 0 var(--spacing-4);
|
|
14656
|
+
max-width: var(--container-max-width-large, 1200px);
|
|
14657
|
+
margin: 0 auto;
|
|
14658
|
+
}
|
|
14625
14659
|
|
|
14626
|
-
|
|
14627
|
-
|
|
14628
|
-
|
|
14629
|
-
|
|
14630
|
-
|
|
14631
|
-
|
|
14660
|
+
.muka-bottombar--desktop-topnav .muka-bottombar__tab {
|
|
14661
|
+
flex: 0 0 auto;
|
|
14662
|
+
flex-direction: row;
|
|
14663
|
+
gap: var(--spacing-2);
|
|
14664
|
+
padding: var(--spacing-3) var(--spacing-4);
|
|
14665
|
+
border-radius: 0;
|
|
14666
|
+
border-bottom: 2px solid transparent;
|
|
14667
|
+
}
|
|
14632
14668
|
|
|
14633
|
-
|
|
14634
|
-
|
|
14635
|
-
|
|
14636
|
-
user-select: none;
|
|
14637
|
-
}
|
|
14669
|
+
.muka-bottombar--desktop-topnav .muka-bottombar__tab--active {
|
|
14670
|
+
border-bottom-color: var(--color-action-default);
|
|
14671
|
+
}
|
|
14638
14672
|
|
|
14639
|
-
.muka-
|
|
14640
|
-
|
|
14641
|
-
}
|
|
14673
|
+
.muka-bottombar--desktop-topnav .muka-bottombar__tab:hover {
|
|
14674
|
+
background-color: var(--color-surface-level2);
|
|
14675
|
+
}
|
|
14642
14676
|
|
|
14643
|
-
.muka-
|
|
14644
|
-
|
|
14645
|
-
|
|
14677
|
+
.muka-bottombar--desktop-topnav .muka-bottombar__tab-label {
|
|
14678
|
+
font-family: var(--text-label-md-regular-fontFamily);
|
|
14679
|
+
font-weight: var(--text-label-md-regular-fontWeight);
|
|
14680
|
+
font-size: var(--text-label-md-regular-fontSize);
|
|
14681
|
+
line-height: var(--text-label-md-regular-lineHeight);
|
|
14682
|
+
}
|
|
14646
14683
|
|
|
14647
|
-
|
|
14648
|
-
|
|
14649
|
-
|
|
14650
|
-
}
|
|
14684
|
+
/* When floating and topnav, remove the floating card styles */
|
|
14685
|
+
.muka-bottombar--desktop-topnav.muka-bottombar--floating {
|
|
14686
|
+
padding: 0;
|
|
14687
|
+
}
|
|
14651
14688
|
|
|
14652
|
-
|
|
14653
|
-
|
|
14654
|
-
|
|
14655
|
-
|
|
14656
|
-
|
|
14657
|
-
line-height: var(--text-label-sm-regular-lineHeight);
|
|
14689
|
+
.muka-bottombar--desktop-topnav.muka-bottombar--floating .muka-bottombar__content {
|
|
14690
|
+
background-color: transparent;
|
|
14691
|
+
border-radius: 0;
|
|
14692
|
+
box-shadow: none;
|
|
14693
|
+
}
|
|
14658
14694
|
}
|
|
14659
14695
|
|
|
14660
|
-
|
|
14661
|
-
font-family: var(--text-label-md-regular-fontFamily);
|
|
14662
|
-
font-weight: var(--text-label-md-regular-fontWeight);
|
|
14663
|
-
font-size: var(--text-label-md-regular-fontSize);
|
|
14664
|
-
line-height: var(--text-label-md-regular-lineHeight);
|
|
14665
|
-
}
|
|
14696
|
+
/* ─── Print ────────────────────────────────────────────── */
|
|
14666
14697
|
|
|
14667
|
-
|
|
14668
|
-
|
|
14669
|
-
|
|
14670
|
-
|
|
14671
|
-
line-height: var(--text-label-lg-regular-lineHeight);
|
|
14698
|
+
@media print {
|
|
14699
|
+
.muka-bottombar {
|
|
14700
|
+
display: none;
|
|
14701
|
+
}
|
|
14672
14702
|
}
|
|
14673
14703
|
|
|
14674
14704
|
|
|
@@ -15263,41 +15293,137 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
15263
15293
|
z-index: 1;
|
|
15264
15294
|
}
|
|
15265
15295
|
|
|
15266
|
-
/* Figma: the menu is as wide as the field (never below the menu min-width token). */
|
|
15267
|
-
.muka-autocomplete__menu {
|
|
15268
|
-
width: var(--radix-dropdown-menu-trigger-width);
|
|
15269
|
-
max-width: calc(100vw - 2rem);
|
|
15296
|
+
/* Figma: the menu is as wide as the field (never below the menu min-width token). */
|
|
15297
|
+
.muka-autocomplete__menu {
|
|
15298
|
+
width: var(--radix-dropdown-menu-trigger-width);
|
|
15299
|
+
max-width: calc(100vw - 2rem);
|
|
15300
|
+
}
|
|
15301
|
+
|
|
15302
|
+
/* Suggestions are single-line; long labels truncate. */
|
|
15303
|
+
.muka-autocomplete__menu .muka-menu__item-label {
|
|
15304
|
+
overflow: hidden;
|
|
15305
|
+
text-overflow: ellipsis;
|
|
15306
|
+
}
|
|
15307
|
+
|
|
15308
|
+
/* Loading and empty rows: menu-row geometry, not selectable. */
|
|
15309
|
+
.muka-autocomplete__status {
|
|
15310
|
+
display: flex;
|
|
15311
|
+
align-items: center;
|
|
15312
|
+
gap: var(--menu-item-gap);
|
|
15313
|
+
min-height: var(--menu-item-height);
|
|
15314
|
+
padding: var(--menu-item-padding-y) var(--menu-item-padding-x);
|
|
15315
|
+
color: var(--color-text-subtle-default);
|
|
15316
|
+
font-family: var(--text-label-md-regular-fontFamily);
|
|
15317
|
+
font-size: var(--text-label-md-regular-fontSize);
|
|
15318
|
+
font-weight: var(--text-label-md-regular-fontWeight);
|
|
15319
|
+
line-height: var(--text-label-md-regular-lineHeight);
|
|
15320
|
+
}
|
|
15321
|
+
|
|
15322
|
+
.muka-autocomplete__footer {
|
|
15323
|
+
flex-shrink: 0;
|
|
15324
|
+
padding: var(--spacing-2) var(--spacing-3);
|
|
15325
|
+
border-top: var(--border-width-regular) solid var(--color-border-default);
|
|
15326
|
+
color: var(--color-text-subtle-default);
|
|
15327
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
15328
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
15329
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
15330
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
15331
|
+
}
|
|
15332
|
+
|
|
15333
|
+
|
|
15334
|
+
/* AppShell */
|
|
15335
|
+
/* AppShell Component Styles */
|
|
15336
|
+
|
|
15337
|
+
/*
|
|
15338
|
+
* Layout wrapper for a persistent left navigation rail + main view area, with an
|
|
15339
|
+
* optional full-width top app bar. The rail itself is styled by the BottomBar
|
|
15340
|
+
* `desktopAs="sidebar"` rules (fixed 240px left rail at ≥1024px); AppShell shows/
|
|
15341
|
+
* hides the sidebar + app-bar slots and offsets the main area to match. Both
|
|
15342
|
+
* appear at the large tier — responsively (no `size`, scoped with
|
|
15343
|
+
* `:not([data-size])`) or forced via `[data-size="lg"]`.
|
|
15344
|
+
*/
|
|
15345
|
+
.muka-app-shell {
|
|
15346
|
+
position: relative;
|
|
15347
|
+
/* Reserved width for the rail; matches BottomBar's desktop-sidebar width. */
|
|
15348
|
+
--app-shell-sidebar-width: 240px;
|
|
15349
|
+
/* Height of the optional top app bar. */
|
|
15350
|
+
--app-shell-appbar-height: 64px;
|
|
15351
|
+
}
|
|
15352
|
+
|
|
15353
|
+
/* Sidebar slot: hidden below the large tier (per-view nav handles small/medium). */
|
|
15354
|
+
.muka-app-shell__sidebar {
|
|
15355
|
+
display: none;
|
|
15356
|
+
}
|
|
15357
|
+
|
|
15358
|
+
.muka-app-shell__main {
|
|
15359
|
+
min-height: 100dvh;
|
|
15360
|
+
}
|
|
15361
|
+
|
|
15362
|
+
/*
|
|
15363
|
+
* App bar: full-width top strip. Intrinsic styling lives here (harmless while
|
|
15364
|
+
* hidden); it is revealed only at the large tier. Sits above the sidebar rail.
|
|
15365
|
+
*/
|
|
15366
|
+
.muka-app-shell__appbar {
|
|
15367
|
+
display: none;
|
|
15368
|
+
align-items: center;
|
|
15369
|
+
justify-content: space-between;
|
|
15370
|
+
gap: var(--spacing-4);
|
|
15371
|
+
position: fixed;
|
|
15372
|
+
top: 0;
|
|
15373
|
+
left: 0;
|
|
15374
|
+
right: 0;
|
|
15375
|
+
height: var(--app-shell-appbar-height);
|
|
15376
|
+
padding-inline: var(--spacing-4);
|
|
15377
|
+
background-color: var(--color-surface-level3);
|
|
15378
|
+
border-bottom: var(--border-width-regular) solid var(--color-border-default);
|
|
15379
|
+
z-index: 11; /* above the sidebar rail (z-index 10) */
|
|
15380
|
+
}
|
|
15381
|
+
|
|
15382
|
+
/* ─── Large tier (responsive) ─── */
|
|
15383
|
+
@media (min-width: 1024px) {
|
|
15384
|
+
.muka-app-shell:not([data-size]) .muka-app-shell__sidebar {
|
|
15385
|
+
display: block;
|
|
15386
|
+
}
|
|
15387
|
+
.muka-app-shell:not([data-size]) .muka-app-shell__main {
|
|
15388
|
+
padding-left: var(--app-shell-sidebar-width);
|
|
15389
|
+
}
|
|
15390
|
+
.muka-app-shell:not([data-size]) .muka-app-shell__appbar {
|
|
15391
|
+
display: flex;
|
|
15392
|
+
}
|
|
15393
|
+
/* When an app bar is present, drop the rail + content below it so nothing overlaps. */
|
|
15394
|
+
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-app-shell__main {
|
|
15395
|
+
padding-top: var(--app-shell-appbar-height);
|
|
15396
|
+
}
|
|
15397
|
+
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-bottombar--desktop-sidebar {
|
|
15398
|
+
top: var(--app-shell-appbar-height);
|
|
15399
|
+
height: calc(100vh - var(--app-shell-appbar-height));
|
|
15400
|
+
}
|
|
15401
|
+
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-view,
|
|
15402
|
+
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-nav-transition {
|
|
15403
|
+
height: calc(100dvh - var(--app-shell-appbar-height));
|
|
15404
|
+
}
|
|
15405
|
+
}
|
|
15406
|
+
|
|
15407
|
+
/* ─── Large tier (forced via size="lg") ─── */
|
|
15408
|
+
.muka-app-shell[data-size='lg'] .muka-app-shell__sidebar {
|
|
15409
|
+
display: block;
|
|
15270
15410
|
}
|
|
15271
|
-
|
|
15272
|
-
|
|
15273
|
-
.muka-autocomplete__menu .muka-menu__item-label {
|
|
15274
|
-
overflow: hidden;
|
|
15275
|
-
text-overflow: ellipsis;
|
|
15411
|
+
.muka-app-shell[data-size='lg'] .muka-app-shell__main {
|
|
15412
|
+
padding-left: var(--app-shell-sidebar-width);
|
|
15276
15413
|
}
|
|
15277
|
-
|
|
15278
|
-
/* Loading and empty rows: menu-row geometry, not selectable. */
|
|
15279
|
-
.muka-autocomplete__status {
|
|
15414
|
+
.muka-app-shell[data-size='lg'] .muka-app-shell__appbar {
|
|
15280
15415
|
display: flex;
|
|
15281
|
-
align-items: center;
|
|
15282
|
-
gap: var(--menu-item-gap);
|
|
15283
|
-
min-height: var(--menu-item-height);
|
|
15284
|
-
padding: var(--menu-item-padding-y) var(--menu-item-padding-x);
|
|
15285
|
-
color: var(--color-text-subtle-default);
|
|
15286
|
-
font-family: var(--text-label-md-regular-fontFamily);
|
|
15287
|
-
font-size: var(--text-label-md-regular-fontSize);
|
|
15288
|
-
font-weight: var(--text-label-md-regular-fontWeight);
|
|
15289
|
-
line-height: var(--text-label-md-regular-lineHeight);
|
|
15290
15416
|
}
|
|
15291
|
-
|
|
15292
|
-
|
|
15293
|
-
|
|
15294
|
-
|
|
15295
|
-
|
|
15296
|
-
|
|
15297
|
-
|
|
15298
|
-
|
|
15299
|
-
|
|
15300
|
-
|
|
15417
|
+
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-app-shell__main {
|
|
15418
|
+
padding-top: var(--app-shell-appbar-height);
|
|
15419
|
+
}
|
|
15420
|
+
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-bottombar--desktop-sidebar {
|
|
15421
|
+
top: var(--app-shell-appbar-height);
|
|
15422
|
+
height: calc(100vh - var(--app-shell-appbar-height));
|
|
15423
|
+
}
|
|
15424
|
+
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-view,
|
|
15425
|
+
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-nav-transition {
|
|
15426
|
+
height: calc(100dvh - var(--app-shell-appbar-height));
|
|
15301
15427
|
}
|
|
15302
15428
|
|
|
15303
15429
|
|
|
@@ -15453,6 +15579,14 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
15453
15579
|
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
15454
15580
|
font-size: var(--text-body-sm-regular-fontSize);
|
|
15455
15581
|
line-height: var(--text-body-sm-regular-lineHeight);
|
|
15582
|
+
/* Beat ambient docs/page text colors (e.g. Storybook sbdocs) so variant
|
|
15583
|
+
foreground stays readable in light and dark themes. */
|
|
15584
|
+
color: inherit;
|
|
15585
|
+
}
|
|
15586
|
+
|
|
15587
|
+
.muka-alert .muka-alert__message,
|
|
15588
|
+
.muka-alert .muka-alert__message * {
|
|
15589
|
+
color: inherit;
|
|
15456
15590
|
}
|
|
15457
15591
|
|
|
15458
15592
|
.muka-alert--lg .muka-alert__message {
|
|
@@ -15504,102 +15638,6 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
15504
15638
|
}
|
|
15505
15639
|
|
|
15506
15640
|
|
|
15507
|
-
/* AppShell */
|
|
15508
|
-
/* AppShell Component Styles */
|
|
15509
|
-
|
|
15510
|
-
/*
|
|
15511
|
-
* Layout wrapper for a persistent left navigation rail + main view area, with an
|
|
15512
|
-
* optional full-width top app bar. The rail itself is styled by the BottomBar
|
|
15513
|
-
* `desktopAs="sidebar"` rules (fixed 240px left rail at ≥1024px); AppShell shows/
|
|
15514
|
-
* hides the sidebar + app-bar slots and offsets the main area to match. Both
|
|
15515
|
-
* appear at the large tier — responsively (no `size`, scoped with
|
|
15516
|
-
* `:not([data-size])`) or forced via `[data-size="lg"]`.
|
|
15517
|
-
*/
|
|
15518
|
-
.muka-app-shell {
|
|
15519
|
-
position: relative;
|
|
15520
|
-
/* Reserved width for the rail; matches BottomBar's desktop-sidebar width. */
|
|
15521
|
-
--app-shell-sidebar-width: 240px;
|
|
15522
|
-
/* Height of the optional top app bar. */
|
|
15523
|
-
--app-shell-appbar-height: 64px;
|
|
15524
|
-
}
|
|
15525
|
-
|
|
15526
|
-
/* Sidebar slot: hidden below the large tier (per-view nav handles small/medium). */
|
|
15527
|
-
.muka-app-shell__sidebar {
|
|
15528
|
-
display: none;
|
|
15529
|
-
}
|
|
15530
|
-
|
|
15531
|
-
.muka-app-shell__main {
|
|
15532
|
-
min-height: 100dvh;
|
|
15533
|
-
}
|
|
15534
|
-
|
|
15535
|
-
/*
|
|
15536
|
-
* App bar: full-width top strip. Intrinsic styling lives here (harmless while
|
|
15537
|
-
* hidden); it is revealed only at the large tier. Sits above the sidebar rail.
|
|
15538
|
-
*/
|
|
15539
|
-
.muka-app-shell__appbar {
|
|
15540
|
-
display: none;
|
|
15541
|
-
align-items: center;
|
|
15542
|
-
justify-content: space-between;
|
|
15543
|
-
gap: var(--spacing-4);
|
|
15544
|
-
position: fixed;
|
|
15545
|
-
top: 0;
|
|
15546
|
-
left: 0;
|
|
15547
|
-
right: 0;
|
|
15548
|
-
height: var(--app-shell-appbar-height);
|
|
15549
|
-
padding-inline: var(--spacing-4);
|
|
15550
|
-
background-color: var(--color-surface-level3);
|
|
15551
|
-
border-bottom: var(--border-width-regular) solid var(--color-border-default);
|
|
15552
|
-
z-index: 11; /* above the sidebar rail (z-index 10) */
|
|
15553
|
-
}
|
|
15554
|
-
|
|
15555
|
-
/* ─── Large tier (responsive) ─── */
|
|
15556
|
-
@media (min-width: 1024px) {
|
|
15557
|
-
.muka-app-shell:not([data-size]) .muka-app-shell__sidebar {
|
|
15558
|
-
display: block;
|
|
15559
|
-
}
|
|
15560
|
-
.muka-app-shell:not([data-size]) .muka-app-shell__main {
|
|
15561
|
-
padding-left: var(--app-shell-sidebar-width);
|
|
15562
|
-
}
|
|
15563
|
-
.muka-app-shell:not([data-size]) .muka-app-shell__appbar {
|
|
15564
|
-
display: flex;
|
|
15565
|
-
}
|
|
15566
|
-
/* When an app bar is present, drop the rail + content below it so nothing overlaps. */
|
|
15567
|
-
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-app-shell__main {
|
|
15568
|
-
padding-top: var(--app-shell-appbar-height);
|
|
15569
|
-
}
|
|
15570
|
-
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-bottombar--desktop-sidebar {
|
|
15571
|
-
top: var(--app-shell-appbar-height);
|
|
15572
|
-
height: calc(100vh - var(--app-shell-appbar-height));
|
|
15573
|
-
}
|
|
15574
|
-
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-view,
|
|
15575
|
-
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-nav-transition {
|
|
15576
|
-
height: calc(100dvh - var(--app-shell-appbar-height));
|
|
15577
|
-
}
|
|
15578
|
-
}
|
|
15579
|
-
|
|
15580
|
-
/* ─── Large tier (forced via size="lg") ─── */
|
|
15581
|
-
.muka-app-shell[data-size='lg'] .muka-app-shell__sidebar {
|
|
15582
|
-
display: block;
|
|
15583
|
-
}
|
|
15584
|
-
.muka-app-shell[data-size='lg'] .muka-app-shell__main {
|
|
15585
|
-
padding-left: var(--app-shell-sidebar-width);
|
|
15586
|
-
}
|
|
15587
|
-
.muka-app-shell[data-size='lg'] .muka-app-shell__appbar {
|
|
15588
|
-
display: flex;
|
|
15589
|
-
}
|
|
15590
|
-
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-app-shell__main {
|
|
15591
|
-
padding-top: var(--app-shell-appbar-height);
|
|
15592
|
-
}
|
|
15593
|
-
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-bottombar--desktop-sidebar {
|
|
15594
|
-
top: var(--app-shell-appbar-height);
|
|
15595
|
-
height: calc(100vh - var(--app-shell-appbar-height));
|
|
15596
|
-
}
|
|
15597
|
-
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-view,
|
|
15598
|
-
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-nav-transition {
|
|
15599
|
-
height: calc(100dvh - var(--app-shell-appbar-height));
|
|
15600
|
-
}
|
|
15601
|
-
|
|
15602
|
-
|
|
15603
15641
|
/* AgentTaskList */
|
|
15604
15642
|
/* AgentTaskList Component Styles */
|
|
15605
15643
|
|
|
@@ -16041,3 +16079,111 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
16041
16079
|
border-bottom: none;
|
|
16042
16080
|
}
|
|
16043
16081
|
|
|
16082
|
+
|
|
16083
|
+
/* BadgeNumber */
|
|
16084
|
+
/* BadgeNumber Component Styles - Using Muka Design Tokens */
|
|
16085
|
+
|
|
16086
|
+
.muka-badge-number {
|
|
16087
|
+
display: inline-flex;
|
|
16088
|
+
align-items: center;
|
|
16089
|
+
justify-content: center;
|
|
16090
|
+
border-radius: var(--border-radius-full);
|
|
16091
|
+
white-space: nowrap;
|
|
16092
|
+
user-select: none;
|
|
16093
|
+
box-sizing: border-box;
|
|
16094
|
+
}
|
|
16095
|
+
|
|
16096
|
+
/*
|
|
16097
|
+
* Sizes — fixed height, matching min-width (so a single digit renders as a
|
|
16098
|
+
* circle), horizontal padding, and bold label typography. Vertical centering
|
|
16099
|
+
* is handled by the fixed height + align-items: center.
|
|
16100
|
+
*/
|
|
16101
|
+
.muka-badge-number--2xs {
|
|
16102
|
+
height: var(--badge-number-size-2xs);
|
|
16103
|
+
min-width: var(--badge-number-size-2xs);
|
|
16104
|
+
padding: 0 var(--badge-number-padding-2xs);
|
|
16105
|
+
font-family: var(--text-label-xs-bold-fontFamily);
|
|
16106
|
+
font-weight: var(--text-label-xs-bold-fontWeight);
|
|
16107
|
+
font-size: var(--text-label-xs-bold-fontSize);
|
|
16108
|
+
line-height: var(--text-label-xs-bold-lineHeight);
|
|
16109
|
+
}
|
|
16110
|
+
|
|
16111
|
+
.muka-badge-number--xs {
|
|
16112
|
+
height: var(--badge-number-size-xs);
|
|
16113
|
+
min-width: var(--badge-number-size-xs);
|
|
16114
|
+
padding: 0 var(--badge-number-padding-xs);
|
|
16115
|
+
font-family: var(--text-label-sm-bold-fontFamily);
|
|
16116
|
+
font-weight: var(--text-label-sm-bold-fontWeight);
|
|
16117
|
+
font-size: var(--text-label-sm-bold-fontSize);
|
|
16118
|
+
line-height: var(--text-label-sm-bold-lineHeight);
|
|
16119
|
+
}
|
|
16120
|
+
|
|
16121
|
+
.muka-badge-number--sm {
|
|
16122
|
+
height: var(--badge-number-size-sm);
|
|
16123
|
+
min-width: var(--badge-number-size-sm);
|
|
16124
|
+
padding: 0 var(--badge-number-padding-sm);
|
|
16125
|
+
font-family: var(--text-label-md-bold-fontFamily);
|
|
16126
|
+
font-weight: var(--text-label-md-bold-fontWeight);
|
|
16127
|
+
font-size: var(--text-label-md-bold-fontSize);
|
|
16128
|
+
line-height: var(--text-label-md-bold-lineHeight);
|
|
16129
|
+
}
|
|
16130
|
+
|
|
16131
|
+
.muka-badge-number--md {
|
|
16132
|
+
height: var(--badge-number-size-md);
|
|
16133
|
+
min-width: var(--badge-number-size-md);
|
|
16134
|
+
padding: 0 var(--badge-number-padding-md);
|
|
16135
|
+
font-family: var(--text-label-lg-bold-fontFamily);
|
|
16136
|
+
font-weight: var(--text-label-lg-bold-fontWeight);
|
|
16137
|
+
font-size: var(--text-label-lg-bold-fontSize);
|
|
16138
|
+
line-height: var(--text-label-lg-bold-lineHeight);
|
|
16139
|
+
}
|
|
16140
|
+
|
|
16141
|
+
.muka-badge-number--lg {
|
|
16142
|
+
height: var(--badge-number-size-lg);
|
|
16143
|
+
min-width: var(--badge-number-size-lg);
|
|
16144
|
+
padding: 0 var(--badge-number-padding-lg);
|
|
16145
|
+
font-family: var(--text-label-2xl-bold-fontFamily);
|
|
16146
|
+
font-weight: var(--text-label-2xl-bold-fontWeight);
|
|
16147
|
+
font-size: var(--text-label-2xl-bold-fontSize);
|
|
16148
|
+
line-height: var(--text-label-2xl-bold-lineHeight);
|
|
16149
|
+
}
|
|
16150
|
+
|
|
16151
|
+
.muka-badge-number__label {
|
|
16152
|
+
/*
|
|
16153
|
+
* The badge sets a tight line-height for compact sizing, which would clip
|
|
16154
|
+
* glyph descenders; give the label a roomier line-height. Vertical centering
|
|
16155
|
+
* is unaffected because the badge height is fixed and content is centered.
|
|
16156
|
+
*/
|
|
16157
|
+
line-height: normal;
|
|
16158
|
+
}
|
|
16159
|
+
|
|
16160
|
+
/* Neutral variant */
|
|
16161
|
+
.muka-badge-number--neutral {
|
|
16162
|
+
background-color: var(--color-surface-level1);
|
|
16163
|
+
color: var(--color-text-default-default);
|
|
16164
|
+
}
|
|
16165
|
+
|
|
16166
|
+
/* Info variant */
|
|
16167
|
+
.muka-badge-number--info {
|
|
16168
|
+
background-color: var(--color-state-info-contrast);
|
|
16169
|
+
color: var(--color-text-default-inverse);
|
|
16170
|
+
}
|
|
16171
|
+
|
|
16172
|
+
/* Success variant */
|
|
16173
|
+
.muka-badge-number--success {
|
|
16174
|
+
background-color: var(--color-state-success-contrast);
|
|
16175
|
+
color: var(--color-text-default-inverse);
|
|
16176
|
+
}
|
|
16177
|
+
|
|
16178
|
+
/* Warning variant */
|
|
16179
|
+
.muka-badge-number--warning {
|
|
16180
|
+
background-color: var(--color-state-warning-contrast);
|
|
16181
|
+
color: var(--color-text-default-inverse);
|
|
16182
|
+
}
|
|
16183
|
+
|
|
16184
|
+
/* Error variant */
|
|
16185
|
+
.muka-badge-number--error {
|
|
16186
|
+
background-color: var(--color-state-error-contrast);
|
|
16187
|
+
color: var(--color-text-default-inverse);
|
|
16188
|
+
}
|
|
16189
|
+
|