@revikornmann/muka-ui 0.28.0 → 0.29.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 +4 -3
- package/dist/cjs/components/Alert/Alert.js +1 -1
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/Badge/Badge.css +27 -0
- package/dist/cjs/components/Badge/Badge.js +14 -5
- package/dist/cjs/components/Badge/Badge.js.map +1 -1
- package/dist/cjs/components/MediaViewer/MediaViewer.css +4 -1
- package/dist/cjs/components/MediaViewer/MediaViewer.js +2 -0
- package/dist/cjs/components/MediaViewer/MediaViewer.js.map +1 -1
- package/dist/cjs/components/PhotoUploader/PhotoUploader.css +6 -18
- package/dist/cjs/components/PhotoUploader/PhotoUploader.js +15 -16
- package/dist/cjs/components/PhotoUploader/PhotoUploader.js.map +1 -1
- package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.css +26 -12
- package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.js +49 -40
- package/dist/cjs/components/ProgressAccordeon/ProgressAccordeon.js.map +1 -1
- package/dist/esm/components/Alert/Alert.css +4 -3
- package/dist/esm/components/Alert/Alert.js +1 -1
- package/dist/esm/components/Alert/Alert.js.map +1 -1
- package/dist/esm/components/Badge/Badge.css +27 -0
- package/dist/esm/components/Badge/Badge.js +14 -5
- package/dist/esm/components/Badge/Badge.js.map +1 -1
- package/dist/esm/components/MediaViewer/MediaViewer.css +4 -1
- package/dist/esm/components/MediaViewer/MediaViewer.js +2 -0
- package/dist/esm/components/MediaViewer/MediaViewer.js.map +1 -1
- package/dist/esm/components/PhotoUploader/PhotoUploader.css +6 -18
- package/dist/esm/components/PhotoUploader/PhotoUploader.js +15 -16
- package/dist/esm/components/PhotoUploader/PhotoUploader.js.map +1 -1
- package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.css +26 -12
- package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.js +49 -40
- package/dist/esm/components/ProgressAccordeon/ProgressAccordeon.js.map +1 -1
- package/dist/styles/components/Alert.css +4 -3
- package/dist/styles/components/Badge.css +27 -0
- package/dist/styles/components/MediaViewer.css +4 -1
- package/dist/styles/components/PhotoUploader.css +6 -18
- package/dist/styles/components/ProgressAccordeon.css +26 -12
- package/dist/styles/index.css +1549 -1516
- package/dist/styles/muka-dark.css +1549 -1516
- package/dist/styles/muka-light.css +1549 -1516
- package/dist/styles/wireframe-dark.css +1549 -1516
- package/dist/styles/wireframe-light.css +1549 -1516
- 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/Badge/Badge.d.ts +7 -5
- package/dist/types/components/Badge/Badge.d.ts.map +1 -1
- package/dist/types/components/MediaViewer/MediaViewer.d.ts +2 -0
- package/dist/types/components/MediaViewer/MediaViewer.d.ts.map +1 -1
- package/dist/types/components/PhotoUploader/PhotoUploader.d.ts +8 -8
- package/dist/types/components/PhotoUploader/PhotoUploader.d.ts.map +1 -1
- package/dist/types/components/ProgressAccordeon/ProgressAccordeon.d.ts +36 -29
- package/dist/types/components/ProgressAccordeon/ProgressAccordeon.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/styles/index.css
CHANGED
|
@@ -5264,81 +5264,6 @@ 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
|
-
|
|
5342
5267
|
/* Sheet */
|
|
5343
5268
|
/* Sheet Component Styles */
|
|
5344
5269
|
|
|
@@ -5419,6 +5344,81 @@ body {
|
|
|
5419
5344
|
}
|
|
5420
5345
|
|
|
5421
5346
|
|
|
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
|
|
|
@@ -7153,6 +7153,7 @@ body {
|
|
|
7153
7153
|
|
|
7154
7154
|
/* Per-state gap: content-bearing steps are tighter, header-only steps looser */
|
|
7155
7155
|
.muka-progress-accordeon--current,
|
|
7156
|
+
.muka-progress-accordeon--current.muka-progress-accordeon--expanded,
|
|
7156
7157
|
.muka-progress-accordeon--past.muka-progress-accordeon--expanded,
|
|
7157
7158
|
.muka-progress-accordeon--upcoming.muka-progress-accordeon--expanded {
|
|
7158
7159
|
gap: var(--spacing-6);
|
|
@@ -7160,7 +7161,8 @@ body {
|
|
|
7160
7161
|
|
|
7161
7162
|
.muka-progress-accordeon--upcoming,
|
|
7162
7163
|
.muka-progress-accordeon--past.muka-progress-accordeon--collapsed,
|
|
7163
|
-
.muka-progress-accordeon--upcoming.muka-progress-accordeon--collapsed
|
|
7164
|
+
.muka-progress-accordeon--upcoming.muka-progress-accordeon--collapsed,
|
|
7165
|
+
.muka-progress-accordeon--current.muka-progress-accordeon--collapsed {
|
|
7164
7166
|
gap: var(--spacing-8);
|
|
7165
7167
|
}
|
|
7166
7168
|
|
|
@@ -7305,32 +7307,44 @@ body {
|
|
|
7305
7307
|
width: 100%;
|
|
7306
7308
|
}
|
|
7307
7309
|
|
|
7308
|
-
/* ─── Collapse/expand animation (
|
|
7309
|
-
|
|
7310
|
-
intrinsic
|
|
7311
|
-
--motion-duration-view
|
|
7312
|
-
.muka-progress-
|
|
7310
|
+
/* ─── Collapse/expand animation (any expandable step) ──────
|
|
7311
|
+
Animates grid-template-rows 1fr ↔ 0fr so the panel (slot + actions) grows and
|
|
7312
|
+
shrinks to its intrinsic height. Opacity fades with the same duration.
|
|
7313
|
+
Under prefers-reduced-motion, --motion-duration-view is 0ms. */
|
|
7314
|
+
.muka-progress-accordeon__panel-wrapper {
|
|
7313
7315
|
display: grid;
|
|
7314
7316
|
grid-template-rows: 1fr;
|
|
7315
|
-
|
|
7317
|
+
opacity: 1;
|
|
7318
|
+
transition:
|
|
7319
|
+
grid-template-rows var(--motion-duration-view) var(--motion-easing-enter),
|
|
7320
|
+
opacity var(--motion-duration-view) var(--motion-easing-enter);
|
|
7316
7321
|
}
|
|
7317
7322
|
|
|
7318
|
-
.muka-progress-
|
|
7323
|
+
.muka-progress-accordeon__panel-wrapper--collapsed {
|
|
7319
7324
|
grid-template-rows: 0fr;
|
|
7325
|
+
opacity: 0;
|
|
7326
|
+
transition:
|
|
7327
|
+
grid-template-rows var(--motion-duration-view) var(--motion-easing-exit),
|
|
7328
|
+
opacity calc(var(--motion-duration-view) * 0.6) var(--motion-easing-exit);
|
|
7320
7329
|
}
|
|
7321
7330
|
|
|
7322
7331
|
/* The direct grid child clips and must have NO padding/border of its own —
|
|
7323
7332
|
min-height:0 lets it shrink, and with no padding the 0fr track reaches a true
|
|
7324
7333
|
0 height (padding on the item would leave a residual gap when collapsed). */
|
|
7325
|
-
.muka-progress-
|
|
7334
|
+
.muka-progress-accordeon__panel-clip {
|
|
7326
7335
|
overflow: hidden;
|
|
7327
7336
|
min-height: 0;
|
|
7328
7337
|
}
|
|
7329
7338
|
|
|
7330
|
-
/*
|
|
7331
|
-
|
|
7332
|
-
.muka-progress-
|
|
7339
|
+
/* Header↔content spacing + slot/actions gap live inside the clip so they
|
|
7340
|
+
collapse together with the panel. */
|
|
7341
|
+
.muka-progress-accordeon__panel {
|
|
7342
|
+
display: flex;
|
|
7343
|
+
flex-direction: column;
|
|
7344
|
+
align-items: stretch;
|
|
7345
|
+
gap: var(--spacing-6);
|
|
7333
7346
|
padding-top: var(--spacing-4);
|
|
7347
|
+
width: 100%;
|
|
7334
7348
|
}
|
|
7335
7349
|
|
|
7336
7350
|
/* ─── Action buttons (current state) ─────────────────────── */
|
|
@@ -7381,72 +7395,244 @@ body {
|
|
|
7381
7395
|
}
|
|
7382
7396
|
|
|
7383
7397
|
|
|
7384
|
-
/*
|
|
7385
|
-
/*
|
|
7398
|
+
/* Progress */
|
|
7399
|
+
/* Progress Component Styles - Using Muka Design Tokens */
|
|
7386
7400
|
|
|
7387
|
-
|
|
7388
|
-
|
|
7401
|
+
/* ========================================
|
|
7402
|
+
BAR VARIANT
|
|
7403
|
+
======================================== */
|
|
7404
|
+
|
|
7405
|
+
.muka-progress--bar {
|
|
7406
|
+
display: flex;
|
|
7389
7407
|
align-items: center;
|
|
7390
|
-
|
|
7408
|
+
gap: var(--spacing-2);
|
|
7409
|
+
width: 100%;
|
|
7391
7410
|
}
|
|
7392
7411
|
|
|
7393
|
-
|
|
7394
|
-
|
|
7395
|
-
|
|
7412
|
+
.muka-progress--bar .muka-progress__track {
|
|
7413
|
+
flex: 1;
|
|
7414
|
+
background-color: var(--color-surface-level1);
|
|
7415
|
+
border-radius: var(--border-radius-full);
|
|
7416
|
+
overflow: hidden;
|
|
7396
7417
|
}
|
|
7397
7418
|
|
|
7398
|
-
.muka-
|
|
7399
|
-
|
|
7419
|
+
.muka-progress--bar.muka-progress--sm .muka-progress__track {
|
|
7420
|
+
height: var(--progress-size-bar-height-sm);
|
|
7400
7421
|
}
|
|
7401
7422
|
|
|
7402
|
-
.muka-
|
|
7403
|
-
|
|
7423
|
+
.muka-progress--bar.muka-progress--md .muka-progress__track {
|
|
7424
|
+
height: var(--progress-size-bar-height-md);
|
|
7404
7425
|
}
|
|
7405
7426
|
|
|
7406
|
-
|
|
7407
|
-
|
|
7408
|
-
display: flex;
|
|
7409
|
-
flex-direction: column;
|
|
7410
|
-
align-items: flex-start;
|
|
7411
|
-
min-width: 0;
|
|
7427
|
+
.muka-progress--bar.muka-progress--lg .muka-progress__track {
|
|
7428
|
+
height: var(--progress-size-bar-height-lg);
|
|
7412
7429
|
}
|
|
7413
7430
|
|
|
7414
|
-
.muka-
|
|
7415
|
-
|
|
7416
|
-
|
|
7417
|
-
|
|
7418
|
-
|
|
7419
|
-
color: var(--color-text-default-default);
|
|
7431
|
+
.muka-progress--bar .muka-progress__fill {
|
|
7432
|
+
height: 100%;
|
|
7433
|
+
background-color: var(--color-action-default);
|
|
7434
|
+
border-radius: var(--border-radius-full);
|
|
7435
|
+
transition: width 0.3s ease;
|
|
7420
7436
|
}
|
|
7421
7437
|
|
|
7422
|
-
.muka-
|
|
7423
|
-
|
|
7424
|
-
font-
|
|
7425
|
-
font-weight: var(--text-
|
|
7426
|
-
|
|
7427
|
-
|
|
7438
|
+
.muka-progress--bar .muka-progress__label {
|
|
7439
|
+
flex-shrink: 0;
|
|
7440
|
+
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
7441
|
+
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
7442
|
+
font-size: var(--text-label-sm-semibold-fontSize);
|
|
7443
|
+
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
7444
|
+
color: var(--color-text-default-default);
|
|
7445
|
+
min-width: 3ch;
|
|
7446
|
+
text-align: right;
|
|
7428
7447
|
}
|
|
7429
7448
|
|
|
7430
|
-
/*
|
|
7431
|
-
.muka-
|
|
7432
|
-
|
|
7433
|
-
|
|
7434
|
-
background: none;
|
|
7435
|
-
padding: 0;
|
|
7436
|
-
text-align: left;
|
|
7437
|
-
border-radius: var(--radius-md);
|
|
7438
|
-
transition: opacity 0.2s ease;
|
|
7449
|
+
/* Indeterminate animation for bar */
|
|
7450
|
+
.muka-progress--bar.muka-progress--indeterminate .muka-progress__fill {
|
|
7451
|
+
width: 40%;
|
|
7452
|
+
animation: muka-progress-bar-indeterminate 1.5s ease-in-out infinite;
|
|
7439
7453
|
}
|
|
7440
7454
|
|
|
7441
|
-
|
|
7442
|
-
|
|
7455
|
+
@keyframes muka-progress-bar-indeterminate {
|
|
7456
|
+
0% {
|
|
7457
|
+
transform: translateX(-100%);
|
|
7458
|
+
}
|
|
7459
|
+
100% {
|
|
7460
|
+
transform: translateX(250%);
|
|
7461
|
+
}
|
|
7443
7462
|
}
|
|
7444
7463
|
|
|
7445
|
-
|
|
7446
|
-
|
|
7464
|
+
/* ========================================
|
|
7465
|
+
CIRCLE VARIANT
|
|
7466
|
+
======================================== */
|
|
7467
|
+
|
|
7468
|
+
.muka-progress--circle {
|
|
7469
|
+
position: relative;
|
|
7470
|
+
display: inline-flex;
|
|
7471
|
+
align-items: center;
|
|
7472
|
+
justify-content: center;
|
|
7447
7473
|
}
|
|
7448
7474
|
|
|
7449
|
-
.muka-
|
|
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
|
+
}
|
|
7634
|
+
|
|
7635
|
+
.muka-profile-badge--clickable:focus-visible {
|
|
7450
7636
|
outline: 2px solid var(--color-border-focus);
|
|
7451
7637
|
outline-offset: 2px;
|
|
7452
7638
|
}
|
|
@@ -7549,37 +7735,6 @@ body {
|
|
|
7549
7735
|
}
|
|
7550
7736
|
|
|
7551
7737
|
|
|
7552
|
-
/* Popover */
|
|
7553
|
-
/* Popover Component Styles */
|
|
7554
|
-
|
|
7555
|
-
.muka-popover__content {
|
|
7556
|
-
background-color: var(--color-surface-level3);
|
|
7557
|
-
border: var(--border-width-regular) solid var(--color-border-default);
|
|
7558
|
-
border-radius: var(--radius-md);
|
|
7559
|
-
padding: var(--spacing-4);
|
|
7560
|
-
box-shadow: var(--shadow-level3);
|
|
7561
|
-
max-width: 20rem;
|
|
7562
|
-
z-index: 50;
|
|
7563
|
-
animation: muka-popover-fade-in 150ms ease;
|
|
7564
|
-
}
|
|
7565
|
-
|
|
7566
|
-
@keyframes muka-popover-fade-in {
|
|
7567
|
-
from {
|
|
7568
|
-
opacity: 0;
|
|
7569
|
-
transform: scale(0.96);
|
|
7570
|
-
}
|
|
7571
|
-
to {
|
|
7572
|
-
opacity: 1;
|
|
7573
|
-
transform: scale(1);
|
|
7574
|
-
}
|
|
7575
|
-
}
|
|
7576
|
-
|
|
7577
|
-
/* Arrow */
|
|
7578
|
-
.muka-popover__arrow {
|
|
7579
|
-
fill: var(--color-surface-level3);
|
|
7580
|
-
}
|
|
7581
|
-
|
|
7582
|
-
|
|
7583
7738
|
/* PieChart */
|
|
7584
7739
|
/* PieChart Component Styles - Using Muka Design Tokens */
|
|
7585
7740
|
|
|
@@ -7677,6 +7832,37 @@ body {
|
|
|
7677
7832
|
}
|
|
7678
7833
|
|
|
7679
7834
|
|
|
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
|
+
|
|
7680
7866
|
/* PhotoUploader */
|
|
7681
7867
|
/* PhotoUploader Component Styles - Using Muka Design Tokens */
|
|
7682
7868
|
|
|
@@ -7722,7 +7908,7 @@ body {
|
|
|
7722
7908
|
padding: 0;
|
|
7723
7909
|
}
|
|
7724
7910
|
|
|
7725
|
-
/* ─── Drop zone card
|
|
7911
|
+
/* ─── Drop zone card (button + "or drop here") ────────── */
|
|
7726
7912
|
.muka-photo-uploader__dropzone {
|
|
7727
7913
|
display: flex;
|
|
7728
7914
|
flex-direction: column;
|
|
@@ -7746,24 +7932,12 @@ body {
|
|
|
7746
7932
|
background-color: var(--color-surface-level1);
|
|
7747
7933
|
}
|
|
7748
7934
|
|
|
7749
|
-
.muka-photo-uploader__dropzone:focus-visible {
|
|
7750
|
-
outline: 2px solid var(--color-border-focus);
|
|
7751
|
-
outline-offset: 2px;
|
|
7752
|
-
}
|
|
7753
|
-
|
|
7754
|
-
.muka-photo-uploader__dropzone-icon {
|
|
7755
|
-
display: flex;
|
|
7756
|
-
align-items: center;
|
|
7757
|
-
justify-content: center;
|
|
7758
|
-
color: var(--color-icon-subtle-default);
|
|
7759
|
-
}
|
|
7760
|
-
|
|
7761
7935
|
.muka-photo-uploader__dropzone-text {
|
|
7762
|
-
font-family: var(--text-
|
|
7763
|
-
font-size: var(--text-
|
|
7764
|
-
font-weight: var(--text-
|
|
7765
|
-
line-height: var(--text-
|
|
7766
|
-
color: var(--color-text-
|
|
7936
|
+
font-family: var(--text-subheading-sm-fontFamily);
|
|
7937
|
+
font-size: var(--text-subheading-sm-fontSize);
|
|
7938
|
+
font-weight: var(--text-subheading-sm-fontWeight);
|
|
7939
|
+
line-height: var(--text-subheading-sm-lineHeight);
|
|
7940
|
+
color: var(--color-text-default-default);
|
|
7767
7941
|
}
|
|
7768
7942
|
|
|
7769
7943
|
/* ─── Disabled ────────────────────────────────────────── */
|
|
@@ -7805,187 +7979,15 @@ body {
|
|
|
7805
7979
|
}
|
|
7806
7980
|
|
|
7807
7981
|
|
|
7808
|
-
/*
|
|
7809
|
-
/*
|
|
7810
|
-
|
|
7811
|
-
/* ========================================
|
|
7812
|
-
BAR VARIANT
|
|
7813
|
-
======================================== */
|
|
7982
|
+
/* PhotoDraftStrip */
|
|
7983
|
+
/* PhotoDraftStrip Component Styles */
|
|
7814
7984
|
|
|
7815
|
-
.muka-
|
|
7985
|
+
.muka-photo-draft-strip {
|
|
7816
7986
|
display: flex;
|
|
7817
7987
|
align-items: center;
|
|
7818
|
-
gap: var(--spacing-
|
|
7988
|
+
gap: var(--spacing-3);
|
|
7819
7989
|
width: 100%;
|
|
7820
|
-
|
|
7821
|
-
|
|
7822
|
-
.muka-progress--bar .muka-progress__track {
|
|
7823
|
-
flex: 1;
|
|
7824
|
-
background-color: var(--color-surface-level1);
|
|
7825
|
-
border-radius: var(--border-radius-full);
|
|
7826
|
-
overflow: hidden;
|
|
7827
|
-
}
|
|
7828
|
-
|
|
7829
|
-
.muka-progress--bar.muka-progress--sm .muka-progress__track {
|
|
7830
|
-
height: var(--progress-size-bar-height-sm);
|
|
7831
|
-
}
|
|
7832
|
-
|
|
7833
|
-
.muka-progress--bar.muka-progress--md .muka-progress__track {
|
|
7834
|
-
height: var(--progress-size-bar-height-md);
|
|
7835
|
-
}
|
|
7836
|
-
|
|
7837
|
-
.muka-progress--bar.muka-progress--lg .muka-progress__track {
|
|
7838
|
-
height: var(--progress-size-bar-height-lg);
|
|
7839
|
-
}
|
|
7840
|
-
|
|
7841
|
-
.muka-progress--bar .muka-progress__fill {
|
|
7842
|
-
height: 100%;
|
|
7843
|
-
background-color: var(--color-action-default);
|
|
7844
|
-
border-radius: var(--border-radius-full);
|
|
7845
|
-
transition: width 0.3s ease;
|
|
7846
|
-
}
|
|
7847
|
-
|
|
7848
|
-
.muka-progress--bar .muka-progress__label {
|
|
7849
|
-
flex-shrink: 0;
|
|
7850
|
-
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
7851
|
-
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
7852
|
-
font-size: var(--text-label-sm-semibold-fontSize);
|
|
7853
|
-
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
7854
|
-
color: var(--color-text-default-default);
|
|
7855
|
-
min-width: 3ch;
|
|
7856
|
-
text-align: right;
|
|
7857
|
-
}
|
|
7858
|
-
|
|
7859
|
-
/* Indeterminate animation for bar */
|
|
7860
|
-
.muka-progress--bar.muka-progress--indeterminate .muka-progress__fill {
|
|
7861
|
-
width: 40%;
|
|
7862
|
-
animation: muka-progress-bar-indeterminate 1.5s ease-in-out infinite;
|
|
7863
|
-
}
|
|
7864
|
-
|
|
7865
|
-
@keyframes muka-progress-bar-indeterminate {
|
|
7866
|
-
0% {
|
|
7867
|
-
transform: translateX(-100%);
|
|
7868
|
-
}
|
|
7869
|
-
100% {
|
|
7870
|
-
transform: translateX(250%);
|
|
7871
|
-
}
|
|
7872
|
-
}
|
|
7873
|
-
|
|
7874
|
-
/* ========================================
|
|
7875
|
-
CIRCLE VARIANT
|
|
7876
|
-
======================================== */
|
|
7877
|
-
|
|
7878
|
-
.muka-progress--circle {
|
|
7879
|
-
position: relative;
|
|
7880
|
-
display: inline-flex;
|
|
7881
|
-
align-items: center;
|
|
7882
|
-
justify-content: center;
|
|
7883
|
-
}
|
|
7884
|
-
|
|
7885
|
-
.muka-progress--circle.muka-progress--sm {
|
|
7886
|
-
width: var(--progress-size-circle-diameter-sm);
|
|
7887
|
-
height: var(--progress-size-circle-diameter-sm);
|
|
7888
|
-
}
|
|
7889
|
-
|
|
7890
|
-
.muka-progress--circle.muka-progress--md {
|
|
7891
|
-
width: var(--progress-size-circle-diameter-md);
|
|
7892
|
-
height: var(--progress-size-circle-diameter-md);
|
|
7893
|
-
}
|
|
7894
|
-
|
|
7895
|
-
.muka-progress--circle.muka-progress--lg {
|
|
7896
|
-
width: var(--progress-size-circle-diameter-lg);
|
|
7897
|
-
height: var(--progress-size-circle-diameter-lg);
|
|
7898
|
-
}
|
|
7899
|
-
|
|
7900
|
-
.muka-progress__circle {
|
|
7901
|
-
width: 100%;
|
|
7902
|
-
height: 100%;
|
|
7903
|
-
transform: rotate(-90deg);
|
|
7904
|
-
}
|
|
7905
|
-
|
|
7906
|
-
.muka-progress--circle .muka-progress__track {
|
|
7907
|
-
fill: none;
|
|
7908
|
-
stroke: var(--color-surface-level1);
|
|
7909
|
-
}
|
|
7910
|
-
|
|
7911
|
-
.muka-progress--circle.muka-progress--sm .muka-progress__track,
|
|
7912
|
-
.muka-progress--circle.muka-progress--sm .muka-progress__fill {
|
|
7913
|
-
stroke-width: var(--progress-size-circle-strokeWidth-sm);
|
|
7914
|
-
}
|
|
7915
|
-
|
|
7916
|
-
.muka-progress--circle.muka-progress--md .muka-progress__track,
|
|
7917
|
-
.muka-progress--circle.muka-progress--md .muka-progress__fill {
|
|
7918
|
-
stroke-width: var(--progress-size-circle-strokeWidth-md);
|
|
7919
|
-
}
|
|
7920
|
-
|
|
7921
|
-
.muka-progress--circle.muka-progress--lg .muka-progress__track,
|
|
7922
|
-
.muka-progress--circle.muka-progress--lg .muka-progress__fill {
|
|
7923
|
-
stroke-width: var(--progress-size-circle-strokeWidth-lg);
|
|
7924
|
-
}
|
|
7925
|
-
|
|
7926
|
-
.muka-progress--circle .muka-progress__fill {
|
|
7927
|
-
fill: none;
|
|
7928
|
-
stroke: var(--color-action-default);
|
|
7929
|
-
stroke-linecap: round;
|
|
7930
|
-
transition: stroke-dashoffset 0.3s ease;
|
|
7931
|
-
}
|
|
7932
|
-
|
|
7933
|
-
.muka-progress--circle .muka-progress__label {
|
|
7934
|
-
position: absolute;
|
|
7935
|
-
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
7936
|
-
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
7937
|
-
color: var(--color-text-default-default);
|
|
7938
|
-
}
|
|
7939
|
-
|
|
7940
|
-
.muka-progress--circle.muka-progress--sm .muka-progress__label {
|
|
7941
|
-
font-size: var(--text-label-sm-semibold-fontSize);
|
|
7942
|
-
}
|
|
7943
|
-
|
|
7944
|
-
.muka-progress--circle.muka-progress--md .muka-progress__label {
|
|
7945
|
-
font-size: var(--text-label-md-semibold-fontSize);
|
|
7946
|
-
}
|
|
7947
|
-
|
|
7948
|
-
.muka-progress--circle.muka-progress--lg .muka-progress__label {
|
|
7949
|
-
font-size: var(--text-label-lg-semibold-fontSize);
|
|
7950
|
-
}
|
|
7951
|
-
|
|
7952
|
-
/* Indeterminate animation for circle */
|
|
7953
|
-
.muka-progress--circle.muka-progress--indeterminate .muka-progress__circle {
|
|
7954
|
-
animation: muka-progress-circle-rotate 2s linear infinite;
|
|
7955
|
-
}
|
|
7956
|
-
|
|
7957
|
-
.muka-progress--circle.muka-progress--indeterminate .muka-progress__fill {
|
|
7958
|
-
animation: muka-progress-circle-dash 1.5s ease-in-out infinite;
|
|
7959
|
-
}
|
|
7960
|
-
|
|
7961
|
-
@keyframes muka-progress-circle-rotate {
|
|
7962
|
-
100% {
|
|
7963
|
-
transform: rotate(270deg);
|
|
7964
|
-
}
|
|
7965
|
-
}
|
|
7966
|
-
|
|
7967
|
-
@keyframes muka-progress-circle-dash {
|
|
7968
|
-
0% {
|
|
7969
|
-
stroke-dashoffset: 220;
|
|
7970
|
-
}
|
|
7971
|
-
50% {
|
|
7972
|
-
stroke-dashoffset: 70;
|
|
7973
|
-
}
|
|
7974
|
-
100% {
|
|
7975
|
-
stroke-dashoffset: 220;
|
|
7976
|
-
}
|
|
7977
|
-
}
|
|
7978
|
-
|
|
7979
|
-
|
|
7980
|
-
/* PhotoDraftStrip */
|
|
7981
|
-
/* PhotoDraftStrip Component Styles */
|
|
7982
|
-
|
|
7983
|
-
.muka-photo-draft-strip {
|
|
7984
|
-
display: flex;
|
|
7985
|
-
align-items: center;
|
|
7986
|
-
gap: var(--spacing-3);
|
|
7987
|
-
width: 100%;
|
|
7988
|
-
padding: var(--spacing-2) 0;
|
|
7990
|
+
padding: var(--spacing-2) 0;
|
|
7989
7991
|
}
|
|
7990
7992
|
|
|
7991
7993
|
.muka-photo-draft-strip__track {
|
|
@@ -8737,7 +8739,10 @@ body {
|
|
|
8737
8739
|
max-width: 100%;
|
|
8738
8740
|
max-height: 100%;
|
|
8739
8741
|
object-fit: contain;
|
|
8740
|
-
|
|
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;
|
|
8741
8746
|
}
|
|
8742
8747
|
|
|
8743
8748
|
/* ─── Previous / next: devices that can hover ─────────── */
|
|
@@ -10193,207 +10198,66 @@ li.muka-listitem {
|
|
|
10193
10198
|
}
|
|
10194
10199
|
|
|
10195
10200
|
|
|
10196
|
-
/*
|
|
10197
|
-
/*
|
|
10201
|
+
/* EmojiPicker */
|
|
10202
|
+
/* EmojiPicker Component Styles */
|
|
10198
10203
|
|
|
10199
|
-
.muka-
|
|
10200
|
-
display:
|
|
10201
|
-
|
|
10202
|
-
|
|
10203
|
-
|
|
10204
|
-
|
|
10205
|
-
|
|
10206
|
-
|
|
10207
|
-
|
|
10204
|
+
.muka-emoji-picker {
|
|
10205
|
+
display: grid;
|
|
10206
|
+
grid-template-columns: repeat(8, 1fr);
|
|
10207
|
+
gap: var(--spacing-1);
|
|
10208
|
+
padding: var(--spacing-2);
|
|
10209
|
+
max-height: 12rem;
|
|
10210
|
+
overflow-y: auto;
|
|
10211
|
+
background: var(--color-surface-level2);
|
|
10212
|
+
border: var(--border-width-regular, 1px) solid var(--color-border-default);
|
|
10213
|
+
border-radius: var(--radius-lg);
|
|
10214
|
+
box-shadow: var(--menu-content-shadow, 0 4px 12px rgba(0, 0, 0, 0.12));
|
|
10208
10215
|
}
|
|
10209
10216
|
|
|
10210
|
-
|
|
10211
|
-
|
|
10212
|
-
|
|
10213
|
-
text-align: left;
|
|
10217
|
+
.muka-emoji-picker__glyph {
|
|
10218
|
+
font-size: 1.25rem;
|
|
10219
|
+
line-height: 1;
|
|
10214
10220
|
}
|
|
10215
10221
|
|
|
10216
|
-
/* Size variants */
|
|
10217
|
-
.muka-emptystate--sm {
|
|
10218
|
-
padding: var(--emptystate-container-padding-sm);
|
|
10219
|
-
}
|
|
10220
10222
|
|
|
10221
|
-
|
|
10222
|
-
|
|
10223
|
-
}
|
|
10223
|
+
/* DropdownSelect */
|
|
10224
|
+
/* DropdownSelect — Figma Dropdown Menu form field (Menu + chips) */
|
|
10224
10225
|
|
|
10225
|
-
.muka-
|
|
10226
|
-
|
|
10226
|
+
.muka-dropdown-select {
|
|
10227
|
+
display: inline-flex;
|
|
10228
|
+
flex-direction: column;
|
|
10229
|
+
gap: var(--spacing-2);
|
|
10230
|
+
min-width: 200px;
|
|
10227
10231
|
}
|
|
10228
10232
|
|
|
10229
|
-
|
|
10230
|
-
|
|
10231
|
-
display: flex;
|
|
10232
|
-
align-items: center;
|
|
10233
|
-
justify-content: center;
|
|
10234
|
-
color: var(--emptystate-icon-color);
|
|
10235
|
-
flex-shrink: 0;
|
|
10233
|
+
.muka-dropdown-select--full-width {
|
|
10234
|
+
width: 100%;
|
|
10236
10235
|
}
|
|
10237
10236
|
|
|
10238
|
-
.muka-
|
|
10239
|
-
|
|
10240
|
-
|
|
10237
|
+
.muka-dropdown-select__label {
|
|
10238
|
+
color: var(--color-text-default-default);
|
|
10239
|
+
cursor: pointer;
|
|
10241
10240
|
}
|
|
10242
10241
|
|
|
10243
|
-
.muka-
|
|
10244
|
-
|
|
10245
|
-
|
|
10242
|
+
.muka-dropdown-select__label--sm {
|
|
10243
|
+
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
10244
|
+
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
10245
|
+
font-size: var(--text-label-sm-semibold-fontSize);
|
|
10246
|
+
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
10246
10247
|
}
|
|
10247
10248
|
|
|
10248
|
-
.muka-
|
|
10249
|
-
|
|
10250
|
-
|
|
10249
|
+
.muka-dropdown-select__label--md {
|
|
10250
|
+
font-family: var(--text-label-md-semibold-fontFamily);
|
|
10251
|
+
font-weight: var(--text-label-md-semibold-fontWeight);
|
|
10252
|
+
font-size: var(--text-label-md-semibold-fontSize);
|
|
10253
|
+
line-height: var(--text-label-md-semibold-lineHeight);
|
|
10251
10254
|
}
|
|
10252
10255
|
|
|
10253
|
-
.muka-
|
|
10254
|
-
|
|
10255
|
-
|
|
10256
|
-
|
|
10257
|
-
|
|
10258
|
-
.muka-emptystate__visual img {
|
|
10259
|
-
width: 100%;
|
|
10260
|
-
height: 100%;
|
|
10261
|
-
object-fit: contain;
|
|
10262
|
-
}
|
|
10263
|
-
|
|
10264
|
-
/* Content */
|
|
10265
|
-
.muka-emptystate__content {
|
|
10266
|
-
display: flex;
|
|
10267
|
-
flex-direction: column;
|
|
10268
|
-
gap: var(--spacing-2);
|
|
10269
|
-
}
|
|
10270
|
-
|
|
10271
|
-
.muka-emptystate--left .muka-emptystate__content {
|
|
10272
|
-
align-items: flex-start;
|
|
10273
|
-
}
|
|
10274
|
-
|
|
10275
|
-
/* Title */
|
|
10276
|
-
.muka-emptystate__title {
|
|
10277
|
-
color: var(--emptystate-title-color);
|
|
10278
|
-
margin: 0;
|
|
10279
|
-
font-family: var(--text-heading-sm-fontFamily);
|
|
10280
|
-
font-weight: var(--text-heading-sm-fontWeight);
|
|
10281
|
-
font-size: var(--text-heading-sm-fontSize);
|
|
10282
|
-
line-height: var(--text-heading-sm-lineHeight);
|
|
10283
|
-
}
|
|
10284
|
-
|
|
10285
|
-
.muka-emptystate--sm .muka-emptystate__title {
|
|
10286
|
-
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
10287
|
-
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
10288
|
-
font-size: var(--text-label-lg-semibold-fontSize);
|
|
10289
|
-
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
10290
|
-
}
|
|
10291
|
-
|
|
10292
|
-
.muka-emptystate--lg .muka-emptystate__title {
|
|
10293
|
-
font-family: var(--text-heading-md-fontFamily);
|
|
10294
|
-
font-weight: var(--text-heading-md-fontWeight);
|
|
10295
|
-
font-size: var(--text-heading-md-fontSize);
|
|
10296
|
-
line-height: var(--text-heading-md-lineHeight);
|
|
10297
|
-
}
|
|
10298
|
-
|
|
10299
|
-
/* Description */
|
|
10300
|
-
.muka-emptystate__description {
|
|
10301
|
-
color: var(--emptystate-description-color);
|
|
10302
|
-
margin: 0;
|
|
10303
|
-
font-family: var(--text-body-sm-regular-fontFamily);
|
|
10304
|
-
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
10305
|
-
font-size: var(--text-body-sm-regular-fontSize);
|
|
10306
|
-
line-height: var(--text-body-sm-regular-lineHeight);
|
|
10307
|
-
}
|
|
10308
|
-
|
|
10309
|
-
.muka-emptystate--md .muka-emptystate__description {
|
|
10310
|
-
font-family: var(--text-body-base-regular-fontFamily);
|
|
10311
|
-
font-weight: var(--text-body-base-regular-fontWeight);
|
|
10312
|
-
font-size: var(--text-body-base-regular-fontSize);
|
|
10313
|
-
line-height: var(--text-body-base-regular-lineHeight);
|
|
10314
|
-
}
|
|
10315
|
-
|
|
10316
|
-
.muka-emptystate--lg .muka-emptystate__description {
|
|
10317
|
-
font-family: var(--text-body-lg-regular-fontFamily);
|
|
10318
|
-
font-weight: var(--text-body-lg-regular-fontWeight);
|
|
10319
|
-
font-size: var(--text-body-lg-regular-fontSize);
|
|
10320
|
-
line-height: var(--text-body-lg-regular-lineHeight);
|
|
10321
|
-
}
|
|
10322
|
-
|
|
10323
|
-
/* Actions */
|
|
10324
|
-
.muka-emptystate__actions {
|
|
10325
|
-
display: flex;
|
|
10326
|
-
gap: var(--emptystate-actions-gap);
|
|
10327
|
-
margin-top: var(--emptystate-actions-marginTop);
|
|
10328
|
-
flex-wrap: wrap;
|
|
10329
|
-
justify-content: center;
|
|
10330
|
-
}
|
|
10331
|
-
|
|
10332
|
-
.muka-emptystate--left .muka-emptystate__actions {
|
|
10333
|
-
justify-content: flex-start;
|
|
10334
|
-
}
|
|
10335
|
-
|
|
10336
|
-
|
|
10337
|
-
/* EmojiPicker */
|
|
10338
|
-
/* EmojiPicker Component Styles */
|
|
10339
|
-
|
|
10340
|
-
.muka-emoji-picker {
|
|
10341
|
-
display: grid;
|
|
10342
|
-
grid-template-columns: repeat(8, 1fr);
|
|
10343
|
-
gap: var(--spacing-1);
|
|
10344
|
-
padding: var(--spacing-2);
|
|
10345
|
-
max-height: 12rem;
|
|
10346
|
-
overflow-y: auto;
|
|
10347
|
-
background: var(--color-surface-level2);
|
|
10348
|
-
border: var(--border-width-regular, 1px) solid var(--color-border-default);
|
|
10349
|
-
border-radius: var(--radius-lg);
|
|
10350
|
-
box-shadow: var(--menu-content-shadow, 0 4px 12px rgba(0, 0, 0, 0.12));
|
|
10351
|
-
}
|
|
10352
|
-
|
|
10353
|
-
.muka-emoji-picker__glyph {
|
|
10354
|
-
font-size: 1.25rem;
|
|
10355
|
-
line-height: 1;
|
|
10356
|
-
}
|
|
10357
|
-
|
|
10358
|
-
|
|
10359
|
-
/* DropdownSelect */
|
|
10360
|
-
/* DropdownSelect — Figma Dropdown Menu form field (Menu + chips) */
|
|
10361
|
-
|
|
10362
|
-
.muka-dropdown-select {
|
|
10363
|
-
display: inline-flex;
|
|
10364
|
-
flex-direction: column;
|
|
10365
|
-
gap: var(--spacing-2);
|
|
10366
|
-
min-width: 200px;
|
|
10367
|
-
}
|
|
10368
|
-
|
|
10369
|
-
.muka-dropdown-select--full-width {
|
|
10370
|
-
width: 100%;
|
|
10371
|
-
}
|
|
10372
|
-
|
|
10373
|
-
.muka-dropdown-select__label {
|
|
10374
|
-
color: var(--color-text-default-default);
|
|
10375
|
-
cursor: pointer;
|
|
10376
|
-
}
|
|
10377
|
-
|
|
10378
|
-
.muka-dropdown-select__label--sm {
|
|
10379
|
-
font-family: var(--text-label-sm-semibold-fontFamily);
|
|
10380
|
-
font-weight: var(--text-label-sm-semibold-fontWeight);
|
|
10381
|
-
font-size: var(--text-label-sm-semibold-fontSize);
|
|
10382
|
-
line-height: var(--text-label-sm-semibold-lineHeight);
|
|
10383
|
-
}
|
|
10384
|
-
|
|
10385
|
-
.muka-dropdown-select__label--md {
|
|
10386
|
-
font-family: var(--text-label-md-semibold-fontFamily);
|
|
10387
|
-
font-weight: var(--text-label-md-semibold-fontWeight);
|
|
10388
|
-
font-size: var(--text-label-md-semibold-fontSize);
|
|
10389
|
-
line-height: var(--text-label-md-semibold-lineHeight);
|
|
10390
|
-
}
|
|
10391
|
-
|
|
10392
|
-
.muka-dropdown-select__label--lg {
|
|
10393
|
-
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
10394
|
-
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
10395
|
-
font-size: var(--text-label-lg-semibold-fontSize);
|
|
10396
|
-
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
10256
|
+
.muka-dropdown-select__label--lg {
|
|
10257
|
+
font-family: var(--text-label-lg-semibold-fontFamily);
|
|
10258
|
+
font-weight: var(--text-label-lg-semibold-fontWeight);
|
|
10259
|
+
font-size: var(--text-label-lg-semibold-fontSize);
|
|
10260
|
+
line-height: var(--text-label-lg-semibold-lineHeight);
|
|
10397
10261
|
}
|
|
10398
10262
|
|
|
10399
10263
|
.muka-dropdown-select__required {
|
|
@@ -11317,92 +11181,233 @@ li.muka-listitem {
|
|
|
11317
11181
|
}
|
|
11318
11182
|
|
|
11319
11183
|
|
|
11320
|
-
/*
|
|
11321
|
-
/*
|
|
11322
|
-
/* Field/label/helper styling is inherited from ../Input/Input.css. */
|
|
11184
|
+
/* EmptyState */
|
|
11185
|
+
/* EmptyState Component Styles - Using Muka Design Tokens */
|
|
11323
11186
|
|
|
11324
|
-
|
|
11325
|
-
|
|
11326
|
-
|
|
11327
|
-
|
|
11328
|
-
|
|
11187
|
+
.muka-emptystate {
|
|
11188
|
+
display: flex;
|
|
11189
|
+
flex-direction: column;
|
|
11190
|
+
align-items: center;
|
|
11191
|
+
justify-content: center;
|
|
11192
|
+
gap: var(--emptystate-container-gap);
|
|
11193
|
+
max-width: var(--emptystate-container-maxWidth);
|
|
11194
|
+
margin: 0 auto;
|
|
11195
|
+
text-align: center;
|
|
11329
11196
|
}
|
|
11330
11197
|
|
|
11331
|
-
|
|
11332
|
-
|
|
11333
|
-
|
|
11334
|
-
|
|
11198
|
+
/* Alignment variants */
|
|
11199
|
+
.muka-emptystate--left {
|
|
11200
|
+
align-items: flex-start;
|
|
11201
|
+
text-align: left;
|
|
11335
11202
|
}
|
|
11336
11203
|
|
|
11337
|
-
/*
|
|
11338
|
-
.muka-
|
|
11339
|
-
|
|
11340
|
-
opacity: 0.6;
|
|
11204
|
+
/* Size variants */
|
|
11205
|
+
.muka-emptystate--sm {
|
|
11206
|
+
padding: var(--emptystate-container-padding-sm);
|
|
11341
11207
|
}
|
|
11342
11208
|
|
|
11343
|
-
.muka-
|
|
11344
|
-
|
|
11209
|
+
.muka-emptystate--md {
|
|
11210
|
+
padding: var(--emptystate-container-padding-md);
|
|
11345
11211
|
}
|
|
11346
11212
|
|
|
11347
|
-
.muka-
|
|
11348
|
-
|
|
11213
|
+
.muka-emptystate--lg {
|
|
11214
|
+
padding: var(--emptystate-container-padding-lg);
|
|
11349
11215
|
}
|
|
11350
11216
|
|
|
11351
|
-
|
|
11352
|
-
|
|
11353
|
-
|
|
11354
|
-
|
|
11355
|
-
|
|
11356
|
-
|
|
11357
|
-
|
|
11358
|
-
-webkit-overflow-scrolling: touch;
|
|
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;
|
|
11359
11224
|
}
|
|
11360
11225
|
|
|
11361
|
-
.muka-
|
|
11362
|
-
|
|
11363
|
-
|
|
11364
|
-
|
|
11226
|
+
.muka-emptystate--sm .muka-emptystate__visual {
|
|
11227
|
+
width: var(--emptystate-icon-size-sm);
|
|
11228
|
+
height: var(--emptystate-icon-size-sm);
|
|
11229
|
+
}
|
|
11365
11230
|
|
|
11366
|
-
|
|
11367
|
-
|
|
11368
|
-
|
|
11369
|
-
/* auto layout so per-column min/max widths are honored and unsized columns flex */
|
|
11370
|
-
table-layout: auto;
|
|
11371
|
-
background-color: var(--datatable-row-background);
|
|
11372
|
-
color: var(--datatable-row-foreground);
|
|
11231
|
+
.muka-emptystate--md .muka-emptystate__visual {
|
|
11232
|
+
width: var(--emptystate-icon-size-md);
|
|
11233
|
+
height: var(--emptystate-icon-size-md);
|
|
11373
11234
|
}
|
|
11374
11235
|
|
|
11375
|
-
.muka-
|
|
11376
|
-
|
|
11377
|
-
|
|
11236
|
+
.muka-emptystate--lg .muka-emptystate__visual {
|
|
11237
|
+
width: var(--emptystate-icon-size-lg);
|
|
11238
|
+
height: var(--emptystate-icon-size-lg);
|
|
11378
11239
|
}
|
|
11379
11240
|
|
|
11380
|
-
.muka-
|
|
11381
|
-
|
|
11382
|
-
|
|
11241
|
+
.muka-emptystate__visual svg {
|
|
11242
|
+
width: 100%;
|
|
11243
|
+
height: 100%;
|
|
11383
11244
|
}
|
|
11384
11245
|
|
|
11385
|
-
.muka-
|
|
11386
|
-
|
|
11387
|
-
|
|
11388
|
-
|
|
11389
|
-
font-size: var(--text-body-base-bold-fontSize);
|
|
11390
|
-
line-height: var(--text-body-base-bold-lineHeight);
|
|
11391
|
-
text-align: left;
|
|
11392
|
-
caption-side: top;
|
|
11246
|
+
.muka-emptystate__visual img {
|
|
11247
|
+
width: 100%;
|
|
11248
|
+
height: 100%;
|
|
11249
|
+
object-fit: contain;
|
|
11393
11250
|
}
|
|
11394
11251
|
|
|
11395
|
-
/*
|
|
11396
|
-
|
|
11397
|
-
|
|
11252
|
+
/* Content */
|
|
11253
|
+
.muka-emptystate__content {
|
|
11254
|
+
display: flex;
|
|
11255
|
+
flex-direction: column;
|
|
11256
|
+
gap: var(--spacing-2);
|
|
11257
|
+
}
|
|
11398
11258
|
|
|
11399
|
-
.muka-
|
|
11400
|
-
|
|
11259
|
+
.muka-emptystate--left .muka-emptystate__content {
|
|
11260
|
+
align-items: flex-start;
|
|
11401
11261
|
}
|
|
11402
11262
|
|
|
11403
|
-
|
|
11404
|
-
|
|
11405
|
-
|
|
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);
|
|
11334
|
+
}
|
|
11335
|
+
|
|
11336
|
+
.muka-datepicker__field--sm .muka-input__native {
|
|
11337
|
+
font-family: var(--text-input-sm-fontFamily);
|
|
11338
|
+
font-size: var(--text-input-sm-fontSize);
|
|
11339
|
+
line-height: var(--text-input-sm-lineHeight);
|
|
11340
|
+
}
|
|
11341
|
+
|
|
11342
|
+
/* Tint the browser calendar indicator to match the field foreground. */
|
|
11343
|
+
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator {
|
|
11344
|
+
cursor: pointer;
|
|
11345
|
+
opacity: 0.6;
|
|
11346
|
+
}
|
|
11347
|
+
|
|
11348
|
+
.muka-datepicker__field .muka-input__native::-webkit-calendar-picker-indicator:hover {
|
|
11349
|
+
opacity: 1;
|
|
11350
|
+
}
|
|
11351
|
+
|
|
11352
|
+
.muka-datepicker__field .muka-input__native:disabled {
|
|
11353
|
+
cursor: not-allowed;
|
|
11354
|
+
}
|
|
11355
|
+
|
|
11356
|
+
|
|
11357
|
+
/* DataTable */
|
|
11358
|
+
/* DataTable Component Styles - Using Muka Design Tokens */
|
|
11359
|
+
|
|
11360
|
+
.muka-data-table-wrapper {
|
|
11361
|
+
width: 100%;
|
|
11362
|
+
overflow-x: auto;
|
|
11363
|
+
-webkit-overflow-scrolling: touch;
|
|
11364
|
+
}
|
|
11365
|
+
|
|
11366
|
+
.muka-data-table {
|
|
11367
|
+
/* Density-driven cell padding (overridden per size below). */
|
|
11368
|
+
--dt-pad-x: var(--datatable-cell-padding-x-md);
|
|
11369
|
+
--dt-pad-y: var(--datatable-cell-padding-y-md);
|
|
11370
|
+
|
|
11371
|
+
width: 100%;
|
|
11372
|
+
border-collapse: collapse;
|
|
11373
|
+
border-spacing: 0;
|
|
11374
|
+
/* auto layout so per-column min/max widths are honored and unsized columns flex */
|
|
11375
|
+
table-layout: auto;
|
|
11376
|
+
background-color: var(--datatable-row-background);
|
|
11377
|
+
color: var(--datatable-row-foreground);
|
|
11378
|
+
}
|
|
11379
|
+
|
|
11380
|
+
.muka-data-table--size-sm {
|
|
11381
|
+
--dt-pad-x: var(--datatable-cell-padding-x-sm);
|
|
11382
|
+
--dt-pad-y: var(--datatable-cell-padding-y-sm);
|
|
11383
|
+
}
|
|
11384
|
+
|
|
11385
|
+
.muka-data-table--size-lg {
|
|
11386
|
+
--dt-pad-x: var(--datatable-cell-padding-x-lg);
|
|
11387
|
+
--dt-pad-y: var(--datatable-cell-padding-y-lg);
|
|
11388
|
+
}
|
|
11389
|
+
|
|
11390
|
+
.muka-data-table__caption {
|
|
11391
|
+
padding: var(--dt-pad-y) var(--dt-pad-x);
|
|
11392
|
+
font-family: var(--text-body-base-bold-fontFamily);
|
|
11393
|
+
font-weight: var(--text-body-base-bold-fontWeight);
|
|
11394
|
+
font-size: var(--text-body-base-bold-fontSize);
|
|
11395
|
+
line-height: var(--text-body-base-bold-lineHeight);
|
|
11396
|
+
text-align: left;
|
|
11397
|
+
caption-side: top;
|
|
11398
|
+
}
|
|
11399
|
+
|
|
11400
|
+
/* ========================================
|
|
11401
|
+
HEADER
|
|
11402
|
+
======================================== */
|
|
11403
|
+
|
|
11404
|
+
.muka-data-table__head {
|
|
11405
|
+
border-bottom: var(--border-width-regular, 1px) solid var(--datatable-header-border);
|
|
11406
|
+
}
|
|
11407
|
+
|
|
11408
|
+
.muka-data-table__th {
|
|
11409
|
+
background-color: var(--datatable-header-background);
|
|
11410
|
+
padding: var(--datatable-cell-padding-y-sm) var(--dt-pad-x);
|
|
11406
11411
|
font-family: var(--text-body-base-bold-fontFamily);
|
|
11407
11412
|
font-weight: var(--text-body-base-bold-fontWeight);
|
|
11408
11413
|
font-size: var(--text-body-base-bold-fontSize);
|
|
@@ -12669,245 +12674,78 @@ li.muka-listitem {
|
|
|
12669
12674
|
}
|
|
12670
12675
|
|
|
12671
12676
|
|
|
12672
|
-
/*
|
|
12673
|
-
/*
|
|
12677
|
+
/* ChatPhotoGrid */
|
|
12678
|
+
/* ChatPhotoGrid Component Styles */
|
|
12674
12679
|
|
|
12675
|
-
/*
|
|
12676
|
-
|
|
12677
|
-
|
|
12678
|
-
|
|
12679
|
-
|
|
12680
|
-
|
|
12681
|
-
|
|
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);
|
|
12682
12691
|
}
|
|
12683
12692
|
|
|
12684
|
-
|
|
12685
|
-
cursor: not-allowed;
|
|
12686
|
-
opacity: 0.6;
|
|
12687
|
-
}
|
|
12693
|
+
/* ─── Tiles ────────────────────────────────────────────── */
|
|
12688
12694
|
|
|
12689
|
-
|
|
12690
|
-
.muka-checkbox__control {
|
|
12695
|
+
.muka-chat-photo-grid__tile {
|
|
12691
12696
|
position: relative;
|
|
12692
|
-
display:
|
|
12693
|
-
|
|
12694
|
-
|
|
12695
|
-
|
|
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;
|
|
12696
12705
|
}
|
|
12697
12706
|
|
|
12698
|
-
|
|
12699
|
-
|
|
12700
|
-
|
|
12701
|
-
width: 1px;
|
|
12702
|
-
height: 1px;
|
|
12703
|
-
padding: 0;
|
|
12704
|
-
margin: -1px;
|
|
12705
|
-
overflow: hidden;
|
|
12706
|
-
clip: rect(0, 0, 0, 0);
|
|
12707
|
-
white-space: nowrap;
|
|
12708
|
-
border: 0;
|
|
12707
|
+
button.muka-chat-photo-grid__tile {
|
|
12708
|
+
cursor: pointer;
|
|
12709
|
+
appearance: none;
|
|
12709
12710
|
}
|
|
12710
12711
|
|
|
12711
|
-
|
|
12712
|
-
|
|
12712
|
+
button.muka-chat-photo-grid__tile:focus-visible {
|
|
12713
|
+
outline: var(--border-width-bold) solid var(--color-border-focus);
|
|
12714
|
+
/* Inset, so the grid's overflow clip cannot cut the ring off on corner tiles */
|
|
12715
|
+
outline-offset: calc(-1 * var(--border-width-bold));
|
|
12716
|
+
}
|
|
12717
|
+
|
|
12718
|
+
.muka-chat-photo-grid__image {
|
|
12719
|
+
display: block;
|
|
12720
|
+
width: 100%;
|
|
12721
|
+
height: 100%;
|
|
12722
|
+
object-fit: cover;
|
|
12723
|
+
}
|
|
12724
|
+
|
|
12725
|
+
/* ─── Overflow tile ────────────────────────────────────── */
|
|
12726
|
+
|
|
12727
|
+
.muka-chat-photo-grid__overflow {
|
|
12728
|
+
position: absolute;
|
|
12729
|
+
inset: 0;
|
|
12713
12730
|
display: flex;
|
|
12714
12731
|
align-items: center;
|
|
12715
12732
|
justify-content: center;
|
|
12716
|
-
|
|
12717
|
-
|
|
12718
|
-
|
|
12719
|
-
|
|
12720
|
-
|
|
12721
|
-
|
|
12722
|
-
box-shadow: inset 0 1px 2px 0 rgba(26, 26, 26, 0.15);
|
|
12733
|
+
background-color: var(--chatphotogrid-color-overflow-background);
|
|
12734
|
+
color: var(--chatphotogrid-color-overflow-foreground);
|
|
12735
|
+
font-family: var(--text-body-2xl-regular-fontFamily);
|
|
12736
|
+
font-weight: var(--text-body-2xl-regular-fontWeight);
|
|
12737
|
+
font-size: var(--text-body-2xl-regular-fontSize);
|
|
12738
|
+
line-height: var(--text-body-2xl-regular-lineHeight);
|
|
12723
12739
|
}
|
|
12724
12740
|
|
|
12725
|
-
/*
|
|
12726
|
-
|
|
12727
|
-
|
|
12728
|
-
|
|
12741
|
+
/* ─── Layouts ──────────────────────────────────────────── */
|
|
12742
|
+
|
|
12743
|
+
.muka-chat-photo-grid--1 {
|
|
12744
|
+
grid-template-columns: 1fr;
|
|
12729
12745
|
}
|
|
12730
12746
|
|
|
12731
|
-
.muka-
|
|
12732
|
-
|
|
12733
|
-
height: var(--checkbox-size-lg);
|
|
12734
|
-
}
|
|
12735
|
-
|
|
12736
|
-
/* Icon inside checkbox */
|
|
12737
|
-
.muka-checkbox__icon {
|
|
12738
|
-
width: var(--checkbox-icon-size-default);
|
|
12739
|
-
height: var(--checkbox-icon-size-default);
|
|
12740
|
-
color: var(--checkbox-color-default-icon);
|
|
12741
|
-
opacity: 0;
|
|
12742
|
-
transform: scale(0.8);
|
|
12743
|
-
transition: opacity 0.15s ease, transform 0.15s ease;
|
|
12744
|
-
}
|
|
12745
|
-
|
|
12746
|
-
.muka-checkbox--sm .muka-checkbox__icon {
|
|
12747
|
-
width: var(--checkbox-icon-size-sm);
|
|
12748
|
-
height: var(--checkbox-icon-size-sm);
|
|
12749
|
-
}
|
|
12750
|
-
|
|
12751
|
-
.muka-checkbox--lg .muka-checkbox__icon {
|
|
12752
|
-
width: var(--checkbox-icon-size-lg);
|
|
12753
|
-
height: var(--checkbox-icon-size-lg);
|
|
12754
|
-
}
|
|
12755
|
-
|
|
12756
|
-
/* Hide indeterminate icon by default */
|
|
12757
|
-
.muka-checkbox__icon--indeterminate {
|
|
12758
|
-
position: absolute;
|
|
12759
|
-
}
|
|
12760
|
-
|
|
12761
|
-
/* Hover state - removed per design */
|
|
12762
|
-
|
|
12763
|
-
/* Focus state */
|
|
12764
|
-
.muka-checkbox__input:focus-visible + .muka-checkbox__indicator {
|
|
12765
|
-
outline: 2px solid var(--color-border-focus);
|
|
12766
|
-
outline-offset: 2px;
|
|
12767
|
-
}
|
|
12768
|
-
|
|
12769
|
-
/* Checked state */
|
|
12770
|
-
.muka-checkbox__input:checked + .muka-checkbox__indicator {
|
|
12771
|
-
background-color: var(--checkbox-color-checked-background);
|
|
12772
|
-
border-color: var(--checkbox-color-checked-border);
|
|
12773
|
-
box-shadow: none;
|
|
12774
|
-
}
|
|
12775
|
-
|
|
12776
|
-
.muka-checkbox__input:checked + .muka-checkbox__indicator .muka-checkbox__icon--check {
|
|
12777
|
-
color: var(--checkbox-color-checked-icon);
|
|
12778
|
-
opacity: 1;
|
|
12779
|
-
transform: scale(1);
|
|
12780
|
-
}
|
|
12781
|
-
|
|
12782
|
-
/* Indeterminate state */
|
|
12783
|
-
.muka-checkbox__input:indeterminate + .muka-checkbox__indicator {
|
|
12784
|
-
background-color: var(--checkbox-color-checked-background);
|
|
12785
|
-
border-color: var(--checkbox-color-checked-border);
|
|
12786
|
-
box-shadow: none;
|
|
12787
|
-
}
|
|
12788
|
-
|
|
12789
|
-
.muka-checkbox__input:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--check {
|
|
12790
|
-
opacity: 0;
|
|
12791
|
-
}
|
|
12792
|
-
|
|
12793
|
-
.muka-checkbox__input:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--indeterminate {
|
|
12794
|
-
color: var(--checkbox-color-checked-icon);
|
|
12795
|
-
opacity: 1;
|
|
12796
|
-
transform: scale(1);
|
|
12797
|
-
}
|
|
12798
|
-
|
|
12799
|
-
/* Disabled state */
|
|
12800
|
-
.muka-checkbox--disabled .muka-checkbox__indicator {
|
|
12801
|
-
background-color: var(--checkbox-color-disabled-background);
|
|
12802
|
-
border-color: var(--checkbox-color-disabled-border);
|
|
12803
|
-
box-shadow: none;
|
|
12804
|
-
}
|
|
12805
|
-
|
|
12806
|
-
.muka-checkbox__input:disabled:checked + .muka-checkbox__indicator .muka-checkbox__icon--check,
|
|
12807
|
-
.muka-checkbox__input:disabled:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--indeterminate {
|
|
12808
|
-
color: var(--checkbox-color-disabled-icon);
|
|
12809
|
-
}
|
|
12810
|
-
|
|
12811
|
-
/* Label text */
|
|
12812
|
-
.muka-checkbox__label {
|
|
12813
|
-
font-family: var(--text-label-lg-regular-fontFamily);
|
|
12814
|
-
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
12815
|
-
font-size: var(--text-label-lg-regular-fontSize);
|
|
12816
|
-
line-height: var(--text-label-lg-regular-lineHeight);
|
|
12817
|
-
color: var(--color-text-default-default);
|
|
12818
|
-
}
|
|
12819
|
-
|
|
12820
|
-
.muka-checkbox--sm .muka-checkbox__label {
|
|
12821
|
-
font-family: var(--text-label-md-regular-fontFamily);
|
|
12822
|
-
font-weight: var(--text-label-md-regular-fontWeight);
|
|
12823
|
-
font-size: var(--text-label-md-regular-fontSize);
|
|
12824
|
-
line-height: var(--text-label-md-regular-lineHeight);
|
|
12825
|
-
}
|
|
12826
|
-
|
|
12827
|
-
.muka-checkbox--lg .muka-checkbox__label {
|
|
12828
|
-
font-family: var(--text-label-xl-regular-fontFamily);
|
|
12829
|
-
font-weight: var(--text-label-xl-regular-fontWeight);
|
|
12830
|
-
font-size: var(--text-label-xl-regular-fontSize);
|
|
12831
|
-
line-height: var(--text-label-xl-regular-lineHeight);
|
|
12832
|
-
}
|
|
12833
|
-
|
|
12834
|
-
.muka-checkbox--disabled .muka-checkbox__label {
|
|
12835
|
-
color: var(--color-text-subtle-default);
|
|
12836
|
-
}
|
|
12837
|
-
|
|
12838
|
-
|
|
12839
|
-
/* ChatPhotoGrid */
|
|
12840
|
-
/* ChatPhotoGrid Component Styles */
|
|
12841
|
-
|
|
12842
|
-
/*
|
|
12843
|
-
* The grid clips to its own radius and the tiles stay square, so only the four
|
|
12844
|
-
* outer corners round — matching the Figma "Wrapper" frame (5225:1394).
|
|
12845
|
-
*/
|
|
12846
|
-
.muka-chat-photo-grid {
|
|
12847
|
-
display: grid;
|
|
12848
|
-
gap: var(--chatphotogrid-gap);
|
|
12849
|
-
width: 100%;
|
|
12850
|
-
min-width: 0;
|
|
12851
|
-
overflow: hidden;
|
|
12852
|
-
border-radius: var(--chatphotogrid-radius);
|
|
12853
|
-
}
|
|
12854
|
-
|
|
12855
|
-
/* ─── Tiles ────────────────────────────────────────────── */
|
|
12856
|
-
|
|
12857
|
-
.muka-chat-photo-grid__tile {
|
|
12858
|
-
position: relative;
|
|
12859
|
-
display: block;
|
|
12860
|
-
overflow: hidden;
|
|
12861
|
-
min-width: 0;
|
|
12862
|
-
padding: 0;
|
|
12863
|
-
margin: 0;
|
|
12864
|
-
border: none;
|
|
12865
|
-
background-color: var(--chatphotogrid-color-placeholder);
|
|
12866
|
-
aspect-ratio: 1 / 1;
|
|
12867
|
-
}
|
|
12868
|
-
|
|
12869
|
-
button.muka-chat-photo-grid__tile {
|
|
12870
|
-
cursor: pointer;
|
|
12871
|
-
appearance: none;
|
|
12872
|
-
}
|
|
12873
|
-
|
|
12874
|
-
button.muka-chat-photo-grid__tile:focus-visible {
|
|
12875
|
-
outline: var(--border-width-bold) solid var(--color-border-focus);
|
|
12876
|
-
/* Inset, so the grid's overflow clip cannot cut the ring off on corner tiles */
|
|
12877
|
-
outline-offset: calc(-1 * var(--border-width-bold));
|
|
12878
|
-
}
|
|
12879
|
-
|
|
12880
|
-
.muka-chat-photo-grid__image {
|
|
12881
|
-
display: block;
|
|
12882
|
-
width: 100%;
|
|
12883
|
-
height: 100%;
|
|
12884
|
-
object-fit: cover;
|
|
12885
|
-
}
|
|
12886
|
-
|
|
12887
|
-
/* ─── Overflow tile ────────────────────────────────────── */
|
|
12888
|
-
|
|
12889
|
-
.muka-chat-photo-grid__overflow {
|
|
12890
|
-
position: absolute;
|
|
12891
|
-
inset: 0;
|
|
12892
|
-
display: flex;
|
|
12893
|
-
align-items: center;
|
|
12894
|
-
justify-content: center;
|
|
12895
|
-
background-color: var(--chatphotogrid-color-overflow-background);
|
|
12896
|
-
color: var(--chatphotogrid-color-overflow-foreground);
|
|
12897
|
-
font-family: var(--text-body-2xl-regular-fontFamily);
|
|
12898
|
-
font-weight: var(--text-body-2xl-regular-fontWeight);
|
|
12899
|
-
font-size: var(--text-body-2xl-regular-fontSize);
|
|
12900
|
-
line-height: var(--text-body-2xl-regular-lineHeight);
|
|
12901
|
-
}
|
|
12902
|
-
|
|
12903
|
-
/* ─── Layouts ──────────────────────────────────────────── */
|
|
12904
|
-
|
|
12905
|
-
.muka-chat-photo-grid--1 {
|
|
12906
|
-
grid-template-columns: 1fr;
|
|
12907
|
-
}
|
|
12908
|
-
|
|
12909
|
-
.muka-chat-photo-grid--landscape .muka-chat-photo-grid__tile {
|
|
12910
|
-
aspect-ratio: 4 / 3;
|
|
12747
|
+
.muka-chat-photo-grid--landscape .muka-chat-photo-grid__tile {
|
|
12748
|
+
aspect-ratio: 4 / 3;
|
|
12911
12749
|
}
|
|
12912
12750
|
|
|
12913
12751
|
.muka-chat-photo-grid--portrait .muka-chat-photo-grid__tile {
|
|
@@ -13012,393 +12850,229 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
13012
12850
|
}
|
|
13013
12851
|
|
|
13014
12852
|
|
|
13015
|
-
/*
|
|
13016
|
-
/*
|
|
12853
|
+
/* Checkbox */
|
|
12854
|
+
/* Checkbox Component Styles - Using Muka Design Tokens */
|
|
13017
12855
|
|
|
13018
|
-
|
|
13019
|
-
|
|
13020
|
-
|
|
13021
|
-
|
|
13022
|
-
|
|
13023
|
-
|
|
13024
|
-
|
|
13025
|
-
padding: var(--section-padding-vertical-default, var(--spacing-8))
|
|
13026
|
-
var(--section-padding-horizontal-default, var(--spacing-4));
|
|
13027
|
-
-webkit-overflow-scrolling: touch;
|
|
13028
|
-
overscroll-behavior: contain;
|
|
12856
|
+
/* Wrapper - clickable label container */
|
|
12857
|
+
.muka-checkbox {
|
|
12858
|
+
display: inline-flex;
|
|
12859
|
+
align-items: center;
|
|
12860
|
+
gap: var(--spacing-4);
|
|
12861
|
+
cursor: pointer;
|
|
12862
|
+
user-select: none;
|
|
13029
12863
|
}
|
|
13030
12864
|
|
|
13031
|
-
.muka-
|
|
13032
|
-
|
|
13033
|
-
|
|
13034
|
-
align-items: stretch;
|
|
13035
|
-
gap: var(--spacing-8);
|
|
13036
|
-
width: 100%;
|
|
13037
|
-
max-width: var(--chat-column-max-width);
|
|
13038
|
-
margin: 0 auto;
|
|
12865
|
+
.muka-checkbox--disabled {
|
|
12866
|
+
cursor: not-allowed;
|
|
12867
|
+
opacity: 0.6;
|
|
13039
12868
|
}
|
|
13040
12869
|
|
|
13041
|
-
/*
|
|
13042
|
-
|
|
13043
|
-
|
|
13044
|
-
|
|
13045
|
-
|
|
13046
|
-
|
|
13047
|
-
|
|
13048
|
-
background: none;
|
|
13049
|
-
padding: 0;
|
|
13050
|
-
}
|
|
13051
|
-
|
|
13052
|
-
.muka-chat-message-list__inner {
|
|
13053
|
-
max-width: 100%;
|
|
13054
|
-
}
|
|
12870
|
+
/* Control container */
|
|
12871
|
+
.muka-checkbox__control {
|
|
12872
|
+
position: relative;
|
|
12873
|
+
display: inline-flex;
|
|
12874
|
+
align-items: center;
|
|
12875
|
+
justify-content: center;
|
|
12876
|
+
flex-shrink: 0;
|
|
13055
12877
|
}
|
|
13056
12878
|
|
|
12879
|
+
/* Hidden native input */
|
|
12880
|
+
.muka-checkbox__input {
|
|
12881
|
+
position: absolute;
|
|
12882
|
+
width: 1px;
|
|
12883
|
+
height: 1px;
|
|
12884
|
+
padding: 0;
|
|
12885
|
+
margin: -1px;
|
|
12886
|
+
overflow: hidden;
|
|
12887
|
+
clip: rect(0, 0, 0, 0);
|
|
12888
|
+
white-space: nowrap;
|
|
12889
|
+
border: 0;
|
|
12890
|
+
}
|
|
13057
12891
|
|
|
13058
|
-
/*
|
|
13059
|
-
|
|
13060
|
-
|
|
13061
|
-
.muka-chat-message {
|
|
12892
|
+
/* Visual indicator (square) */
|
|
12893
|
+
.muka-checkbox__indicator {
|
|
13062
12894
|
display: flex;
|
|
13063
|
-
|
|
13064
|
-
|
|
13065
|
-
|
|
12895
|
+
align-items: center;
|
|
12896
|
+
justify-content: center;
|
|
12897
|
+
width: var(--checkbox-size-default);
|
|
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);
|
|
13066
12904
|
}
|
|
13067
12905
|
|
|
13068
|
-
/*
|
|
13069
|
-
|
|
13070
|
-
|
|
13071
|
-
|
|
13072
|
-
grid-template-columns: minmax(0, 1fr);
|
|
13073
|
-
grid-template-areas: 'bubble';
|
|
13074
|
-
column-gap: var(--chatbubble-row-gap);
|
|
13075
|
-
width: 100%;
|
|
12906
|
+
/* Size variants */
|
|
12907
|
+
.muka-checkbox--sm .muka-checkbox__indicator {
|
|
12908
|
+
width: var(--checkbox-size-sm);
|
|
12909
|
+
height: var(--checkbox-size-sm);
|
|
13076
12910
|
}
|
|
13077
12911
|
|
|
13078
|
-
.muka-
|
|
13079
|
-
|
|
13080
|
-
|
|
12912
|
+
.muka-checkbox--lg .muka-checkbox__indicator {
|
|
12913
|
+
width: var(--checkbox-size-lg);
|
|
12914
|
+
height: var(--checkbox-size-lg);
|
|
13081
12915
|
}
|
|
13082
12916
|
|
|
13083
|
-
|
|
13084
|
-
|
|
13085
|
-
|
|
13086
|
-
|
|
13087
|
-
|
|
13088
|
-
|
|
13089
|
-
|
|
12917
|
+
/* Icon inside checkbox */
|
|
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;
|
|
13090
12925
|
}
|
|
13091
12926
|
|
|
13092
|
-
|
|
13093
|
-
|
|
13094
|
-
|
|
13095
|
-
|
|
13096
|
-
*/
|
|
13097
|
-
@media (max-width: 1023px) {
|
|
13098
|
-
.muka-chat-message__row {
|
|
13099
|
-
column-gap: var(--chatbubble-row-gap-compact);
|
|
13100
|
-
}
|
|
12927
|
+
.muka-checkbox--sm .muka-checkbox__icon {
|
|
12928
|
+
width: var(--checkbox-icon-size-sm);
|
|
12929
|
+
height: var(--checkbox-icon-size-sm);
|
|
12930
|
+
}
|
|
13101
12931
|
|
|
13102
|
-
|
|
13103
|
-
|
|
13104
|
-
|
|
12932
|
+
.muka-checkbox--lg .muka-checkbox__icon {
|
|
12933
|
+
width: var(--checkbox-icon-size-lg);
|
|
12934
|
+
height: var(--checkbox-icon-size-lg);
|
|
12935
|
+
}
|
|
13105
12936
|
|
|
13106
|
-
|
|
13107
|
-
|
|
13108
|
-
|
|
13109
|
-
height: var(--chatbubble-avatar-size-compact);
|
|
13110
|
-
}
|
|
12937
|
+
/* Hide indeterminate icon by default */
|
|
12938
|
+
.muka-checkbox__icon--indeterminate {
|
|
12939
|
+
position: absolute;
|
|
13111
12940
|
}
|
|
13112
12941
|
|
|
13113
|
-
/*
|
|
12942
|
+
/* Hover state - removed per design */
|
|
13114
12943
|
|
|
13115
|
-
|
|
13116
|
-
|
|
13117
|
-
|
|
13118
|
-
|
|
13119
|
-
* bubble fills to the shared max width. Robust to string or rich children —
|
|
13120
|
-
* no length measuring needed (Figma `Text length` on 5355:44091).
|
|
13121
|
-
*/
|
|
13122
|
-
width: fit-content;
|
|
13123
|
-
/*
|
|
13124
|
-
* Ceiling from design (Figma 5355:44091). Below it, wrapping text fills the
|
|
13125
|
-
* row; above it the fixed cap leaves room for own/peer alignment.
|
|
13126
|
-
*/
|
|
13127
|
-
max-width: var(--chatbubble-max-width);
|
|
13128
|
-
position: relative;
|
|
13129
|
-
display: flex;
|
|
13130
|
-
flex-direction: column;
|
|
13131
|
-
gap: var(--chatbubble-gap);
|
|
13132
|
-
padding: var(--chatbubble-padding-block) var(--chatbubble-padding-inline);
|
|
13133
|
-
border-radius: var(--chatbubble-radius);
|
|
13134
|
-
border: var(--border-width-regular) solid transparent;
|
|
13135
|
-
box-shadow: var(--shadow-level2);
|
|
13136
|
-
word-break: break-word;
|
|
12944
|
+
/* Focus state */
|
|
12945
|
+
.muka-checkbox__input:focus-visible + .muka-checkbox__indicator {
|
|
12946
|
+
outline: 2px solid var(--color-border-focus);
|
|
12947
|
+
outline-offset: 2px;
|
|
13137
12948
|
}
|
|
13138
12949
|
|
|
13139
|
-
/*
|
|
13140
|
-
.muka-
|
|
13141
|
-
|
|
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;
|
|
13142
12955
|
}
|
|
13143
12956
|
|
|
13144
|
-
.muka-
|
|
13145
|
-
|
|
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);
|
|
13146
12961
|
}
|
|
13147
12962
|
|
|
13148
|
-
|
|
13149
|
-
|
|
13150
|
-
|
|
13151
|
-
color: var(--
|
|
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;
|
|
13152
12968
|
}
|
|
13153
12969
|
|
|
13154
|
-
.muka-
|
|
13155
|
-
|
|
13156
|
-
border-color: var(--chatbubble-color-peer-border);
|
|
13157
|
-
color: var(--chatbubble-color-peer-foreground);
|
|
12970
|
+
.muka-checkbox__input:indeterminate + .muka-checkbox__indicator .muka-checkbox__icon--check {
|
|
12971
|
+
opacity: 0;
|
|
13158
12972
|
}
|
|
13159
12973
|
|
|
13160
|
-
.muka-
|
|
13161
|
-
|
|
13162
|
-
|
|
13163
|
-
|
|
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);
|
|
13164
12978
|
}
|
|
13165
12979
|
|
|
13166
|
-
/*
|
|
13167
|
-
|
|
13168
|
-
|
|
13169
|
-
|
|
13170
|
-
|
|
13171
|
-
align-items: center;
|
|
13172
|
-
gap: var(--chatbubble-row-gap);
|
|
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;
|
|
13173
12985
|
}
|
|
13174
12986
|
|
|
13175
|
-
.muka-
|
|
13176
|
-
|
|
13177
|
-
|
|
13178
|
-
font-size: var(--text-body-base-bold-fontSize);
|
|
13179
|
-
line-height: var(--text-body-base-bold-lineHeight);
|
|
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);
|
|
13180
12990
|
}
|
|
13181
12991
|
|
|
13182
|
-
|
|
13183
|
-
|
|
13184
|
-
|
|
13185
|
-
font-
|
|
13186
|
-
font-
|
|
13187
|
-
|
|
13188
|
-
|
|
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);
|
|
13189
12999
|
}
|
|
13190
13000
|
|
|
13191
|
-
.muka-
|
|
13192
|
-
|
|
13193
|
-
|
|
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);
|
|
13194
13006
|
}
|
|
13195
13007
|
|
|
13196
|
-
|
|
13197
|
-
|
|
13198
|
-
|
|
13199
|
-
|
|
13200
|
-
|
|
13201
|
-
.muka-chat-message--has-menu.muka-chat-message--no-header .muka-chat-message__message {
|
|
13202
|
-
padding-right: var(--spacing-10);
|
|
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);
|
|
13203
13013
|
}
|
|
13204
13014
|
|
|
13205
|
-
|
|
13206
|
-
|
|
13207
|
-
padding-right: var(--spacing-10);
|
|
13015
|
+
.muka-checkbox--disabled .muka-checkbox__label {
|
|
13016
|
+
color: var(--color-text-subtle-default);
|
|
13208
13017
|
}
|
|
13209
13018
|
|
|
13210
|
-
/* ─── Body ─────────────────────────────────────────────── */
|
|
13211
13019
|
|
|
13212
|
-
|
|
13020
|
+
/* ChatMessageList */
|
|
13021
|
+
/* ChatMessageList Component Styles */
|
|
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;
|
|
13034
|
+
}
|
|
13035
|
+
|
|
13036
|
+
.muka-chat-message-list__inner {
|
|
13213
13037
|
display: flex;
|
|
13214
13038
|
flex-direction: column;
|
|
13215
|
-
|
|
13216
|
-
|
|
13039
|
+
align-items: stretch;
|
|
13040
|
+
gap: var(--spacing-8);
|
|
13041
|
+
width: 100%;
|
|
13042
|
+
max-width: var(--chat-column-max-width);
|
|
13043
|
+
margin: 0 auto;
|
|
13217
13044
|
}
|
|
13218
13045
|
|
|
13219
|
-
|
|
13220
|
-
min-width: 0;
|
|
13221
|
-
}
|
|
13046
|
+
/* ─── Print ────────────────────────────────────────────── */
|
|
13222
13047
|
|
|
13223
|
-
|
|
13224
|
-
|
|
13225
|
-
|
|
13226
|
-
|
|
13227
|
-
|
|
13228
|
-
|
|
13229
|
-
|
|
13230
|
-
}
|
|
13048
|
+
@media print {
|
|
13049
|
+
.muka-chat-message-list {
|
|
13050
|
+
overflow: visible;
|
|
13051
|
+
height: auto;
|
|
13052
|
+
max-height: none;
|
|
13053
|
+
background: none;
|
|
13054
|
+
padding: 0;
|
|
13055
|
+
}
|
|
13231
13056
|
|
|
13232
|
-
|
|
13233
|
-
|
|
13234
|
-
|
|
13057
|
+
.muka-chat-message-list__inner {
|
|
13058
|
+
max-width: 100%;
|
|
13059
|
+
}
|
|
13235
13060
|
}
|
|
13236
13061
|
|
|
13237
|
-
/* ─── Embedded card ────────────────────────────────────── */
|
|
13238
13062
|
|
|
13239
|
-
|
|
13240
|
-
|
|
13063
|
+
/* ChatComposer */
|
|
13064
|
+
/* ChatComposer Component Styles */
|
|
13065
|
+
|
|
13066
|
+
/*
|
|
13067
|
+
* The composer is a bare, fill-width row: no padding, background, border or
|
|
13068
|
+
* max-width of its own (Figma 5243:14141). Whatever hosts it owns the
|
|
13069
|
+
* container — see BottomBar's `chat` variant.
|
|
13070
|
+
*/
|
|
13071
|
+
.muka-chat-composer {
|
|
13241
13072
|
display: flex;
|
|
13242
13073
|
flex-direction: column;
|
|
13243
|
-
gap: var(--
|
|
13244
|
-
|
|
13245
|
-
margin-block: var(--chatbubble-embed-margin-block);
|
|
13246
|
-
padding: var(--chatbubble-embed-padding-block) var(--chatbubble-embed-padding-inline);
|
|
13247
|
-
border-radius: var(--chatbubble-embed-radius);
|
|
13248
|
-
border: var(--border-width-regular) solid transparent;
|
|
13249
|
-
}
|
|
13250
|
-
|
|
13251
|
-
/*
|
|
13252
|
-
* The embed sits on the raised surface of its author's role, one step apart
|
|
13253
|
-
* from the bubble it is nested in, and reuses that role's border colour.
|
|
13254
|
-
*/
|
|
13255
|
-
.muka-chat-message--own .muka-chat-message__embed {
|
|
13256
|
-
background-color: var(--chatbubble-embed-color-own-background);
|
|
13257
|
-
border-color: var(--chatbubble-embed-color-own-border);
|
|
13258
|
-
color: var(--chatbubble-embed-color-own-foreground);
|
|
13259
|
-
}
|
|
13260
|
-
|
|
13261
|
-
.muka-chat-message--peer .muka-chat-message__embed {
|
|
13262
|
-
background-color: var(--chatbubble-embed-color-peer-background);
|
|
13263
|
-
border-color: var(--chatbubble-embed-color-peer-border);
|
|
13264
|
-
color: var(--chatbubble-embed-color-peer-foreground);
|
|
13265
|
-
}
|
|
13266
|
-
|
|
13267
|
-
.muka-chat-message--agent .muka-chat-message__embed {
|
|
13268
|
-
background-color: var(--chatbubble-embed-color-agent-background);
|
|
13269
|
-
border-color: var(--chatbubble-embed-color-agent-border);
|
|
13270
|
-
color: var(--chatbubble-embed-color-agent-foreground);
|
|
13271
|
-
}
|
|
13272
|
-
|
|
13273
|
-
.muka-chat-message__embed-content {
|
|
13274
|
-
display: flex;
|
|
13275
|
-
flex-direction: column;
|
|
13276
|
-
gap: var(--chatbubble-embed-gap);
|
|
13277
|
-
min-width: 0;
|
|
13278
|
-
}
|
|
13279
|
-
|
|
13280
|
-
.muka-chat-message__embed-copy {
|
|
13281
|
-
position: absolute;
|
|
13282
|
-
top: var(--chatbubble-embed-padding-block);
|
|
13283
|
-
right: var(--chatbubble-embed-padding-inline);
|
|
13284
|
-
}
|
|
13285
|
-
|
|
13286
|
-
/* ─── Stacked full-width action buttons ────────────────── */
|
|
13287
|
-
|
|
13288
|
-
.muka-chat-message__action-stack {
|
|
13289
|
-
display: flex;
|
|
13290
|
-
flex-direction: column;
|
|
13291
|
-
gap: var(--chatbubble-action-stack-gap);
|
|
13292
|
-
}
|
|
13293
|
-
|
|
13294
|
-
/* ─── Inset timestamp ──────────────────────────────────── */
|
|
13295
|
-
|
|
13296
|
-
/*
|
|
13297
|
-
* Every author puts its timestamp in the bubble's bottom-right corner, below
|
|
13298
|
-
* the message — never in the header row (Figma 5355:44091).
|
|
13299
|
-
*/
|
|
13300
|
-
|
|
13301
|
-
.muka-chat-message__timestamp {
|
|
13302
|
-
color: var(--chatbubble-color-timestamp);
|
|
13303
|
-
font-family: var(--text-body-xs-regular-fontFamily);
|
|
13304
|
-
font-weight: var(--text-body-xs-regular-fontWeight);
|
|
13305
|
-
font-size: var(--text-body-xs-regular-fontSize);
|
|
13306
|
-
line-height: var(--text-body-xs-regular-lineHeight);
|
|
13307
|
-
white-space: nowrap;
|
|
13308
|
-
}
|
|
13309
|
-
|
|
13310
|
-
/*
|
|
13311
|
-
* Pinned to the corner rather than stacked below the message, so a one-line
|
|
13312
|
-
* message stays one line tall. The message reserves the width it needs.
|
|
13313
|
-
*/
|
|
13314
|
-
.muka-chat-message__timestamp--inset {
|
|
13315
|
-
position: absolute;
|
|
13316
|
-
right: var(--spacing-2);
|
|
13317
|
-
bottom: var(--spacing-1);
|
|
13318
|
-
}
|
|
13319
|
-
|
|
13320
|
-
/*
|
|
13321
|
-
* When the last block in the body is media, an embed or an action stack (not
|
|
13322
|
-
* trailing text), it runs the full width, so reserve a line below for the inset
|
|
13323
|
-
* timestamp. A message that ends in text clears the corner inline instead (see
|
|
13324
|
-
* `__message` padding-right above), so it needs no extra bottom space.
|
|
13325
|
-
*/
|
|
13326
|
-
.muka-chat-message--has-timestamp.muka-chat-message--trailing-block .muka-chat-message__body {
|
|
13327
|
-
padding-bottom: var(--text-body-xs-regular-lineHeight);
|
|
13328
|
-
}
|
|
13329
|
-
|
|
13330
|
-
/* ─── Menu affordance ──────────────────────────────────── */
|
|
13331
|
-
|
|
13332
|
-
/*
|
|
13333
|
-
* Hidden at rest. Revealed on hover on pointer devices, on keyboard focus
|
|
13334
|
-
* everywhere, and pinned while its menu is open. On touch the equivalent
|
|
13335
|
-
* affordance is a long-press on the bubble, which opens an ActionSheet.
|
|
13336
|
-
*/
|
|
13337
|
-
.muka-chat-message__menu {
|
|
13338
|
-
position: absolute;
|
|
13339
|
-
top: var(--spacing-1);
|
|
13340
|
-
right: var(--spacing-1);
|
|
13341
|
-
opacity: 0;
|
|
13342
|
-
pointer-events: none;
|
|
13343
|
-
}
|
|
13344
|
-
|
|
13345
|
-
.muka-chat-message__menu:focus-within,
|
|
13346
|
-
.muka-chat-message--menu-open .muka-chat-message__menu {
|
|
13347
|
-
opacity: 1;
|
|
13348
|
-
pointer-events: auto;
|
|
13349
|
-
}
|
|
13350
|
-
|
|
13351
|
-
@media (hover: hover) and (pointer: fine) and (min-width: 1024px) {
|
|
13352
|
-
.muka-chat-message__bubble:hover .muka-chat-message__menu {
|
|
13353
|
-
opacity: 1;
|
|
13354
|
-
pointer-events: auto;
|
|
13355
|
-
}
|
|
13356
|
-
}
|
|
13357
|
-
|
|
13358
|
-
/* Suppress iOS Safari's own callout so the long-press sheet can take over */
|
|
13359
|
-
@media (pointer: coarse) {
|
|
13360
|
-
.muka-chat-message--has-menu .muka-chat-message__bubble {
|
|
13361
|
-
-webkit-touch-callout: none;
|
|
13362
|
-
}
|
|
13363
|
-
}
|
|
13364
|
-
|
|
13365
|
-
/* ─── Print ────────────────────────────────────────────── */
|
|
13366
|
-
|
|
13367
|
-
@media print {
|
|
13368
|
-
.muka-chat-message__bubble {
|
|
13369
|
-
box-shadow: none;
|
|
13370
|
-
break-inside: avoid;
|
|
13371
|
-
print-color-adjust: exact;
|
|
13372
|
-
-webkit-print-color-adjust: exact;
|
|
13373
|
-
}
|
|
13374
|
-
|
|
13375
|
-
.muka-chat-message__embed {
|
|
13376
|
-
break-inside: avoid;
|
|
13377
|
-
print-color-adjust: exact;
|
|
13378
|
-
-webkit-print-color-adjust: exact;
|
|
13379
|
-
}
|
|
13380
|
-
|
|
13381
|
-
.muka-chat-message__menu,
|
|
13382
|
-
.muka-chat-message__embed-copy,
|
|
13383
|
-
.muka-chat-message__action-stack {
|
|
13384
|
-
display: none;
|
|
13385
|
-
}
|
|
13386
|
-
}
|
|
13387
|
-
|
|
13388
|
-
|
|
13389
|
-
/* ChatComposer */
|
|
13390
|
-
/* ChatComposer Component Styles */
|
|
13391
|
-
|
|
13392
|
-
/*
|
|
13393
|
-
* The composer is a bare, fill-width row: no padding, background, border or
|
|
13394
|
-
* max-width of its own (Figma 5243:14141). Whatever hosts it owns the
|
|
13395
|
-
* container — see BottomBar's `chat` variant.
|
|
13396
|
-
*/
|
|
13397
|
-
.muka-chat-composer {
|
|
13398
|
-
display: flex;
|
|
13399
|
-
flex-direction: column;
|
|
13400
|
-
gap: var(--spacing-3);
|
|
13401
|
-
width: 100%;
|
|
13074
|
+
gap: var(--spacing-3);
|
|
13075
|
+
width: 100%;
|
|
13402
13076
|
}
|
|
13403
13077
|
|
|
13404
13078
|
.muka-chat-composer--disabled {
|
|
@@ -13598,186 +13272,517 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
13598
13272
|
text-overflow: ellipsis;
|
|
13599
13273
|
}
|
|
13600
13274
|
|
|
13601
|
-
.muka-chat-attachment-chip__meta {
|
|
13602
|
-
color: var(--color-text-subtle-default);
|
|
13603
|
-
font-family: var(--text-body-sm-regular-fontFamily);
|
|
13604
|
-
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
13605
|
-
font-size: var(--text-body-sm-regular-fontSize);
|
|
13606
|
-
line-height: var(--text-body-sm-regular-lineHeight);
|
|
13607
|
-
white-space: nowrap;
|
|
13608
|
-
overflow: hidden;
|
|
13609
|
-
text-overflow: ellipsis;
|
|
13275
|
+
.muka-chat-attachment-chip__meta {
|
|
13276
|
+
color: var(--color-text-subtle-default);
|
|
13277
|
+
font-family: var(--text-body-sm-regular-fontFamily);
|
|
13278
|
+
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
13279
|
+
font-size: var(--text-body-sm-regular-fontSize);
|
|
13280
|
+
line-height: var(--text-body-sm-regular-lineHeight);
|
|
13281
|
+
white-space: nowrap;
|
|
13282
|
+
overflow: hidden;
|
|
13283
|
+
text-overflow: ellipsis;
|
|
13284
|
+
}
|
|
13285
|
+
|
|
13286
|
+
.muka-chat-attachment-chip--error .muka-chat-attachment-chip__meta {
|
|
13287
|
+
color: var(--color-state-error-default, var(--color-text-default-default));
|
|
13288
|
+
}
|
|
13289
|
+
|
|
13290
|
+
/* ─── Remove button ────────────────────────────────────── */
|
|
13291
|
+
|
|
13292
|
+
.muka-chat-attachment-chip__remove {
|
|
13293
|
+
display: inline-flex;
|
|
13294
|
+
align-items: center;
|
|
13295
|
+
justify-content: center;
|
|
13296
|
+
width: 20px;
|
|
13297
|
+
height: 20px;
|
|
13298
|
+
border: none;
|
|
13299
|
+
background: none;
|
|
13300
|
+
padding: 0;
|
|
13301
|
+
border-radius: var(--radius-sm);
|
|
13302
|
+
cursor: pointer;
|
|
13303
|
+
color: var(--color-text-subtle-default);
|
|
13304
|
+
flex-shrink: 0;
|
|
13305
|
+
-webkit-tap-highlight-color: transparent;
|
|
13306
|
+
}
|
|
13307
|
+
|
|
13308
|
+
.muka-chat-attachment-chip__remove:hover:not(:disabled) {
|
|
13309
|
+
color: var(--color-text-default-default);
|
|
13310
|
+
background-color: var(--color-surface-level2);
|
|
13311
|
+
}
|
|
13312
|
+
|
|
13313
|
+
.muka-chat-attachment-chip__remove:focus-visible {
|
|
13314
|
+
outline: 2px solid var(--color-action-default);
|
|
13315
|
+
outline-offset: 2px;
|
|
13316
|
+
}
|
|
13317
|
+
|
|
13318
|
+
.muka-chat-attachment-chip__remove:disabled {
|
|
13319
|
+
cursor: not-allowed;
|
|
13320
|
+
opacity: 0.5;
|
|
13321
|
+
}
|
|
13322
|
+
|
|
13323
|
+
/* ─── Progress bar ─────────────────────────────────────── */
|
|
13324
|
+
|
|
13325
|
+
.muka-chat-attachment-chip__progress {
|
|
13326
|
+
position: absolute;
|
|
13327
|
+
left: 0;
|
|
13328
|
+
right: 0;
|
|
13329
|
+
bottom: 0;
|
|
13330
|
+
height: 2px;
|
|
13331
|
+
background-color: var(--color-surface-level2);
|
|
13332
|
+
overflow: hidden;
|
|
13333
|
+
}
|
|
13334
|
+
|
|
13335
|
+
.muka-chat-attachment-chip__progress-fill {
|
|
13336
|
+
display: block;
|
|
13337
|
+
height: 100%;
|
|
13338
|
+
background-color: var(--color-action-default);
|
|
13339
|
+
transition: width 0.16s ease;
|
|
13340
|
+
}
|
|
13341
|
+
|
|
13342
|
+
.muka-chat-attachment-chip--error .muka-chat-attachment-chip__progress-fill {
|
|
13343
|
+
background-color: var(--color-state-error-default, var(--color-text-default-default));
|
|
13344
|
+
}
|
|
13345
|
+
|
|
13346
|
+
|
|
13347
|
+
/* Card */
|
|
13348
|
+
/* Card Component Styles - Using Muka Design Tokens */
|
|
13349
|
+
|
|
13350
|
+
.muka-card {
|
|
13351
|
+
background-color: var(--card-color-default-background);
|
|
13352
|
+
color: var(--card-color-default-foreground);
|
|
13353
|
+
border: var(--border-width-regular) solid var(--card-color-default-border);
|
|
13354
|
+
box-shadow: var(--card-shadow-default);
|
|
13355
|
+
transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
|
|
13356
|
+
overflow: hidden;
|
|
13357
|
+
}
|
|
13358
|
+
|
|
13359
|
+
/* Padding variants */
|
|
13360
|
+
.muka-card--padding-none {
|
|
13361
|
+
padding: 0;
|
|
13362
|
+
}
|
|
13363
|
+
|
|
13364
|
+
.muka-card--padding-sm {
|
|
13365
|
+
padding: var(--card-padding-sm);
|
|
13366
|
+
}
|
|
13367
|
+
|
|
13368
|
+
.muka-card--padding-md {
|
|
13369
|
+
padding: var(--card-padding-md);
|
|
13370
|
+
}
|
|
13371
|
+
|
|
13372
|
+
.muka-card--padding-lg {
|
|
13373
|
+
padding: var(--card-padding-lg);
|
|
13374
|
+
}
|
|
13375
|
+
|
|
13376
|
+
/* Radius variants */
|
|
13377
|
+
.muka-card--radius-sm {
|
|
13378
|
+
border-radius: var(--card-radius-sm);
|
|
13379
|
+
}
|
|
13380
|
+
|
|
13381
|
+
.muka-card--radius-md {
|
|
13382
|
+
border-radius: var(--card-radius-md);
|
|
13383
|
+
}
|
|
13384
|
+
|
|
13385
|
+
.muka-card--radius-lg {
|
|
13386
|
+
border-radius: var(--card-radius-lg);
|
|
13387
|
+
}
|
|
13388
|
+
|
|
13389
|
+
/* Interactive variant */
|
|
13390
|
+
.muka-card--interactive {
|
|
13391
|
+
cursor: pointer;
|
|
13392
|
+
user-select: none;
|
|
13393
|
+
}
|
|
13394
|
+
|
|
13395
|
+
.muka-card--interactive:hover {
|
|
13396
|
+
background-color: var(--card-color-hover-background);
|
|
13397
|
+
border-color: var(--card-color-hover-border);
|
|
13398
|
+
box-shadow: var(--card-shadow-hover);
|
|
13399
|
+
}
|
|
13400
|
+
|
|
13401
|
+
.muka-card--interactive:active,
|
|
13402
|
+
.muka-card--interactive.muka-card--pressed {
|
|
13403
|
+
background-color: var(--card-color-pressed-background);
|
|
13404
|
+
border-color: var(--card-color-pressed-border);
|
|
13405
|
+
box-shadow: var(--card-shadow-pressed);
|
|
13406
|
+
}
|
|
13407
|
+
|
|
13408
|
+
.muka-card--interactive:focus-visible {
|
|
13409
|
+
outline: 2px solid var(--color-border-focus);
|
|
13410
|
+
outline-offset: 2px;
|
|
13411
|
+
}
|
|
13412
|
+
|
|
13413
|
+
/* Selected variant */
|
|
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
|
+
}
|
|
13420
|
+
|
|
13421
|
+
/* Optional header (title + description) */
|
|
13422
|
+
.muka-card__header {
|
|
13423
|
+
margin-bottom: var(--spacing-4);
|
|
13424
|
+
}
|
|
13425
|
+
|
|
13426
|
+
.muka-card__title {
|
|
13427
|
+
margin: 0;
|
|
13428
|
+
color: var(--color-text-default-default);
|
|
13429
|
+
font-family: var(--text-heading-xs-fontFamily);
|
|
13430
|
+
font-weight: var(--text-heading-xs-fontWeight);
|
|
13431
|
+
font-size: var(--text-heading-xs-fontSize);
|
|
13432
|
+
line-height: var(--text-heading-xs-lineHeight);
|
|
13433
|
+
letter-spacing: var(--text-heading-xs-letterSpacing);
|
|
13434
|
+
}
|
|
13435
|
+
|
|
13436
|
+
.muka-card__description {
|
|
13437
|
+
margin: var(--spacing-1) 0 0;
|
|
13438
|
+
color: var(--color-text-subtle-default);
|
|
13439
|
+
font-family: var(--text-body-sm-regular-fontFamily);
|
|
13440
|
+
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
13441
|
+
font-size: var(--text-body-sm-regular-fontSize);
|
|
13442
|
+
line-height: var(--text-body-sm-regular-lineHeight);
|
|
13443
|
+
}
|
|
13444
|
+
|
|
13445
|
+
/* Hide divider on last list item inside card */
|
|
13446
|
+
.muka-card > .muka-listitem:last-child > .muka-listitem__divider {
|
|
13447
|
+
display: none;
|
|
13448
|
+
}
|
|
13449
|
+
|
|
13450
|
+
/* Disabled state */
|
|
13451
|
+
.muka-card--disabled {
|
|
13452
|
+
opacity: 0.5;
|
|
13453
|
+
cursor: not-allowed;
|
|
13454
|
+
pointer-events: none;
|
|
13455
|
+
}
|
|
13456
|
+
|
|
13457
|
+
|
|
13458
|
+
/* ChatMessage */
|
|
13459
|
+
/* ChatMessage Component Styles */
|
|
13460
|
+
|
|
13461
|
+
.muka-chat-message {
|
|
13462
|
+
display: flex;
|
|
13463
|
+
flex-direction: column;
|
|
13464
|
+
width: 100%;
|
|
13465
|
+
max-width: 100%;
|
|
13466
|
+
}
|
|
13467
|
+
|
|
13468
|
+
/* ─── Row: avatar rail + bubble ────────────────────────── */
|
|
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%;
|
|
13476
|
+
}
|
|
13477
|
+
|
|
13478
|
+
.muka-chat-message--has-avatar .muka-chat-message__row {
|
|
13479
|
+
grid-template-columns: auto minmax(0, 1fr);
|
|
13480
|
+
grid-template-areas: 'rail bubble';
|
|
13481
|
+
}
|
|
13482
|
+
|
|
13483
|
+
.muka-chat-message__rail {
|
|
13484
|
+
grid-area: rail;
|
|
13485
|
+
/* Sits on the bubble's baseline (Figma 5355:44091) */
|
|
13486
|
+
align-self: end;
|
|
13487
|
+
display: flex;
|
|
13488
|
+
justify-content: center;
|
|
13489
|
+
min-width: var(--chatbubble-avatar-size);
|
|
13490
|
+
}
|
|
13491
|
+
|
|
13492
|
+
/*
|
|
13493
|
+
* The Small size in Figma (5373:44702) halves the avatar to 32px and tightens
|
|
13494
|
+
* the gap to the bubble. Size the avatar itself, not just the rail, so the
|
|
13495
|
+
* bubbles keep their alignment. The header row keeps its own gap.
|
|
13496
|
+
*/
|
|
13497
|
+
@media (max-width: 1023px) {
|
|
13498
|
+
.muka-chat-message__row {
|
|
13499
|
+
column-gap: var(--chatbubble-row-gap-compact);
|
|
13500
|
+
}
|
|
13501
|
+
|
|
13502
|
+
.muka-chat-message__rail {
|
|
13503
|
+
min-width: var(--chatbubble-avatar-size-compact);
|
|
13504
|
+
}
|
|
13505
|
+
|
|
13506
|
+
/* Outweighs the avatar's own size class, which sets width/height directly */
|
|
13507
|
+
.muka-chat-message .muka-chat-message__rail > * {
|
|
13508
|
+
width: var(--chatbubble-avatar-size-compact);
|
|
13509
|
+
height: var(--chatbubble-avatar-size-compact);
|
|
13510
|
+
}
|
|
13511
|
+
}
|
|
13512
|
+
|
|
13513
|
+
/* ─── Bubble surface ───────────────────────────────────── */
|
|
13514
|
+
|
|
13515
|
+
.muka-chat-message__bubble {
|
|
13516
|
+
grid-area: bubble;
|
|
13517
|
+
/*
|
|
13518
|
+
* Width follows the content: a single line hugs, and once the text wraps the
|
|
13519
|
+
* bubble fills to the shared max width. Robust to string or rich children —
|
|
13520
|
+
* no length measuring needed (Figma `Text length` on 5355:44091).
|
|
13521
|
+
*/
|
|
13522
|
+
width: fit-content;
|
|
13523
|
+
/*
|
|
13524
|
+
* Ceiling from design (Figma 5355:44091). Below it, wrapping text fills the
|
|
13525
|
+
* row; above it the fixed cap leaves room for own/peer alignment.
|
|
13526
|
+
*/
|
|
13527
|
+
max-width: var(--chatbubble-max-width);
|
|
13528
|
+
position: relative;
|
|
13529
|
+
display: flex;
|
|
13530
|
+
flex-direction: column;
|
|
13531
|
+
gap: var(--chatbubble-gap);
|
|
13532
|
+
padding: var(--chatbubble-padding-block) var(--chatbubble-padding-inline);
|
|
13533
|
+
border-radius: var(--chatbubble-radius);
|
|
13534
|
+
border: var(--border-width-regular) solid transparent;
|
|
13535
|
+
box-shadow: var(--shadow-level2);
|
|
13536
|
+
word-break: break-word;
|
|
13537
|
+
}
|
|
13538
|
+
|
|
13539
|
+
/* Media, an embed or an action stack always run the full bubble width. */
|
|
13540
|
+
.muka-chat-message--has-blocks .muka-chat-message__bubble {
|
|
13541
|
+
width: 100%;
|
|
13542
|
+
}
|
|
13543
|
+
|
|
13544
|
+
.muka-chat-message--own .muka-chat-message__bubble {
|
|
13545
|
+
justify-self: end;
|
|
13546
|
+
}
|
|
13547
|
+
|
|
13548
|
+
.muka-chat-message--own .muka-chat-message__bubble {
|
|
13549
|
+
background-color: var(--chatbubble-color-own-background);
|
|
13550
|
+
border-color: var(--chatbubble-color-own-border);
|
|
13551
|
+
color: var(--chatbubble-color-own-foreground);
|
|
13552
|
+
}
|
|
13553
|
+
|
|
13554
|
+
.muka-chat-message--peer .muka-chat-message__bubble {
|
|
13555
|
+
background-color: var(--chatbubble-color-peer-background);
|
|
13556
|
+
border-color: var(--chatbubble-color-peer-border);
|
|
13557
|
+
color: var(--chatbubble-color-peer-foreground);
|
|
13558
|
+
}
|
|
13559
|
+
|
|
13560
|
+
.muka-chat-message--agent .muka-chat-message__bubble {
|
|
13561
|
+
background-color: var(--chatbubble-color-agent-background);
|
|
13562
|
+
border-color: var(--chatbubble-color-agent-border);
|
|
13563
|
+
color: var(--chatbubble-color-agent-foreground);
|
|
13564
|
+
}
|
|
13565
|
+
|
|
13566
|
+
/* ─── Header row (author · meta · time · badge) ────────── */
|
|
13567
|
+
|
|
13568
|
+
.muka-chat-message__header {
|
|
13569
|
+
display: flex;
|
|
13570
|
+
flex-flow: row wrap;
|
|
13571
|
+
align-items: center;
|
|
13572
|
+
gap: var(--chatbubble-row-gap);
|
|
13573
|
+
}
|
|
13574
|
+
|
|
13575
|
+
.muka-chat-message__author {
|
|
13576
|
+
font-family: var(--text-body-base-bold-fontFamily);
|
|
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);
|
|
13610
13580
|
}
|
|
13611
13581
|
|
|
13612
|
-
.muka-chat-
|
|
13613
|
-
|
|
13582
|
+
.muka-chat-message__author-meta {
|
|
13583
|
+
/* Inherits the variant's body colour from the bubble */
|
|
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);
|
|
13614
13589
|
}
|
|
13615
13590
|
|
|
13616
|
-
|
|
13617
|
-
|
|
13618
|
-
.muka-chat-attachment-chip__remove {
|
|
13591
|
+
.muka-chat-message__badge {
|
|
13619
13592
|
display: inline-flex;
|
|
13620
13593
|
align-items: center;
|
|
13621
|
-
justify-content: center;
|
|
13622
|
-
width: 20px;
|
|
13623
|
-
height: 20px;
|
|
13624
|
-
border: none;
|
|
13625
|
-
background: none;
|
|
13626
|
-
padding: 0;
|
|
13627
|
-
border-radius: var(--radius-sm);
|
|
13628
|
-
cursor: pointer;
|
|
13629
|
-
color: var(--color-text-subtle-default);
|
|
13630
|
-
flex-shrink: 0;
|
|
13631
|
-
-webkit-tap-highlight-color: transparent;
|
|
13632
|
-
}
|
|
13633
|
-
|
|
13634
|
-
.muka-chat-attachment-chip__remove:hover:not(:disabled) {
|
|
13635
|
-
color: var(--color-text-default-default);
|
|
13636
|
-
background-color: var(--color-surface-level2);
|
|
13637
13594
|
}
|
|
13638
13595
|
|
|
13639
|
-
|
|
13640
|
-
|
|
13641
|
-
|
|
13596
|
+
/*
|
|
13597
|
+
* Keep the first line of content clear of the absolutely positioned menu
|
|
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);
|
|
13642
13603
|
}
|
|
13643
13604
|
|
|
13644
|
-
|
|
13645
|
-
|
|
13646
|
-
|
|
13605
|
+
/* …and the last line clear of the inset timestamp in the bottom-right corner */
|
|
13606
|
+
.muka-chat-message--has-timestamp .muka-chat-message__message {
|
|
13607
|
+
padding-right: var(--spacing-10);
|
|
13647
13608
|
}
|
|
13648
13609
|
|
|
13649
|
-
/* ───
|
|
13610
|
+
/* ─── Body ─────────────────────────────────────────────── */
|
|
13650
13611
|
|
|
13651
|
-
.muka-chat-
|
|
13652
|
-
|
|
13653
|
-
|
|
13654
|
-
|
|
13655
|
-
|
|
13656
|
-
height: 2px;
|
|
13657
|
-
background-color: var(--color-surface-level2);
|
|
13658
|
-
overflow: hidden;
|
|
13612
|
+
.muka-chat-message__body {
|
|
13613
|
+
display: flex;
|
|
13614
|
+
flex-direction: column;
|
|
13615
|
+
gap: var(--chatbubble-gap);
|
|
13616
|
+
min-width: 0;
|
|
13659
13617
|
}
|
|
13660
13618
|
|
|
13661
|
-
.muka-chat-
|
|
13662
|
-
|
|
13663
|
-
height: 100%;
|
|
13664
|
-
background-color: var(--color-action-default);
|
|
13665
|
-
transition: width 0.16s ease;
|
|
13619
|
+
.muka-chat-message__media {
|
|
13620
|
+
min-width: 0;
|
|
13666
13621
|
}
|
|
13667
13622
|
|
|
13668
|
-
.muka-chat-
|
|
13669
|
-
|
|
13623
|
+
.muka-chat-message__message {
|
|
13624
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
13625
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
13626
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
13627
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
13628
|
+
white-space: pre-wrap;
|
|
13629
|
+
word-break: break-word;
|
|
13670
13630
|
}
|
|
13671
13631
|
|
|
13632
|
+
/* Empty message block should not add a gap of its own */
|
|
13633
|
+
.muka-chat-message__message:empty {
|
|
13634
|
+
display: none;
|
|
13635
|
+
}
|
|
13672
13636
|
|
|
13673
|
-
/*
|
|
13674
|
-
/* Card Component Styles - Using Muka Design Tokens */
|
|
13637
|
+
/* ─── Embedded card ────────────────────────────────────── */
|
|
13675
13638
|
|
|
13676
|
-
.muka-
|
|
13677
|
-
|
|
13678
|
-
|
|
13679
|
-
|
|
13680
|
-
|
|
13681
|
-
|
|
13682
|
-
|
|
13639
|
+
.muka-chat-message__embed {
|
|
13640
|
+
position: relative;
|
|
13641
|
+
display: flex;
|
|
13642
|
+
flex-direction: column;
|
|
13643
|
+
gap: var(--chatbubble-embed-gap);
|
|
13644
|
+
/* The card is inset from the blocks above and below it (Figma 5289:40562) */
|
|
13645
|
+
margin-block: var(--chatbubble-embed-margin-block);
|
|
13646
|
+
padding: var(--chatbubble-embed-padding-block) var(--chatbubble-embed-padding-inline);
|
|
13647
|
+
border-radius: var(--chatbubble-embed-radius);
|
|
13648
|
+
border: var(--border-width-regular) solid transparent;
|
|
13683
13649
|
}
|
|
13684
13650
|
|
|
13685
|
-
/*
|
|
13686
|
-
|
|
13687
|
-
|
|
13651
|
+
/*
|
|
13652
|
+
* The embed sits on the raised surface of its author's role, one step apart
|
|
13653
|
+
* from the bubble it is nested in, and reuses that role's border colour.
|
|
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);
|
|
13688
13659
|
}
|
|
13689
13660
|
|
|
13690
|
-
.muka-
|
|
13691
|
-
|
|
13661
|
+
.muka-chat-message--peer .muka-chat-message__embed {
|
|
13662
|
+
background-color: var(--chatbubble-embed-color-peer-background);
|
|
13663
|
+
border-color: var(--chatbubble-embed-color-peer-border);
|
|
13664
|
+
color: var(--chatbubble-embed-color-peer-foreground);
|
|
13692
13665
|
}
|
|
13693
13666
|
|
|
13694
|
-
.muka-
|
|
13695
|
-
|
|
13667
|
+
.muka-chat-message--agent .muka-chat-message__embed {
|
|
13668
|
+
background-color: var(--chatbubble-embed-color-agent-background);
|
|
13669
|
+
border-color: var(--chatbubble-embed-color-agent-border);
|
|
13670
|
+
color: var(--chatbubble-embed-color-agent-foreground);
|
|
13696
13671
|
}
|
|
13697
13672
|
|
|
13698
|
-
.muka-
|
|
13699
|
-
|
|
13673
|
+
.muka-chat-message__embed-content {
|
|
13674
|
+
display: flex;
|
|
13675
|
+
flex-direction: column;
|
|
13676
|
+
gap: var(--chatbubble-embed-gap);
|
|
13677
|
+
min-width: 0;
|
|
13700
13678
|
}
|
|
13701
13679
|
|
|
13702
|
-
|
|
13703
|
-
|
|
13704
|
-
|
|
13680
|
+
.muka-chat-message__embed-copy {
|
|
13681
|
+
position: absolute;
|
|
13682
|
+
top: var(--chatbubble-embed-padding-block);
|
|
13683
|
+
right: var(--chatbubble-embed-padding-inline);
|
|
13705
13684
|
}
|
|
13706
13685
|
|
|
13707
|
-
|
|
13708
|
-
border-radius: var(--card-radius-md);
|
|
13709
|
-
}
|
|
13686
|
+
/* ─── Stacked full-width action buttons ────────────────── */
|
|
13710
13687
|
|
|
13711
|
-
.muka-
|
|
13712
|
-
|
|
13688
|
+
.muka-chat-message__action-stack {
|
|
13689
|
+
display: flex;
|
|
13690
|
+
flex-direction: column;
|
|
13691
|
+
gap: var(--chatbubble-action-stack-gap);
|
|
13713
13692
|
}
|
|
13714
13693
|
|
|
13715
|
-
/*
|
|
13716
|
-
.muka-card--interactive {
|
|
13717
|
-
cursor: pointer;
|
|
13718
|
-
user-select: none;
|
|
13719
|
-
}
|
|
13694
|
+
/* ─── Inset timestamp ──────────────────────────────────── */
|
|
13720
13695
|
|
|
13721
|
-
|
|
13722
|
-
|
|
13723
|
-
|
|
13724
|
-
|
|
13696
|
+
/*
|
|
13697
|
+
* Every author puts its timestamp in the bubble's bottom-right corner, below
|
|
13698
|
+
* the message — never in the header row (Figma 5355:44091).
|
|
13699
|
+
*/
|
|
13700
|
+
|
|
13701
|
+
.muka-chat-message__timestamp {
|
|
13702
|
+
color: var(--chatbubble-color-timestamp);
|
|
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;
|
|
13725
13708
|
}
|
|
13726
13709
|
|
|
13727
|
-
|
|
13728
|
-
|
|
13729
|
-
|
|
13730
|
-
|
|
13731
|
-
|
|
13710
|
+
/*
|
|
13711
|
+
* Pinned to the corner rather than stacked below the message, so a one-line
|
|
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);
|
|
13732
13718
|
}
|
|
13733
13719
|
|
|
13734
|
-
|
|
13735
|
-
|
|
13736
|
-
|
|
13720
|
+
/*
|
|
13721
|
+
* When the last block in the body is media, an embed or an action stack (not
|
|
13722
|
+
* trailing text), it runs the full width, so reserve a line below for the inset
|
|
13723
|
+
* timestamp. A message that ends in text clears the corner inline instead (see
|
|
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);
|
|
13737
13728
|
}
|
|
13738
13729
|
|
|
13739
|
-
/*
|
|
13740
|
-
|
|
13741
|
-
|
|
13742
|
-
|
|
13743
|
-
|
|
13744
|
-
|
|
13730
|
+
/* ─── Menu affordance ──────────────────────────────────── */
|
|
13731
|
+
|
|
13732
|
+
/*
|
|
13733
|
+
* Hidden at rest. Revealed on hover on pointer devices, on keyboard focus
|
|
13734
|
+
* everywhere, and pinned while its menu is open. On touch the equivalent
|
|
13735
|
+
* affordance is a long-press on the bubble, which opens an ActionSheet.
|
|
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;
|
|
13745
13743
|
}
|
|
13746
13744
|
|
|
13747
|
-
|
|
13748
|
-
.muka-
|
|
13749
|
-
|
|
13745
|
+
.muka-chat-message__menu:focus-within,
|
|
13746
|
+
.muka-chat-message--menu-open .muka-chat-message__menu {
|
|
13747
|
+
opacity: 1;
|
|
13748
|
+
pointer-events: auto;
|
|
13750
13749
|
}
|
|
13751
13750
|
|
|
13752
|
-
|
|
13753
|
-
|
|
13754
|
-
|
|
13755
|
-
|
|
13756
|
-
|
|
13757
|
-
font-size: var(--text-heading-xs-fontSize);
|
|
13758
|
-
line-height: var(--text-heading-xs-lineHeight);
|
|
13759
|
-
letter-spacing: var(--text-heading-xs-letterSpacing);
|
|
13751
|
+
@media (hover: hover) and (pointer: fine) and (min-width: 1024px) {
|
|
13752
|
+
.muka-chat-message__bubble:hover .muka-chat-message__menu {
|
|
13753
|
+
opacity: 1;
|
|
13754
|
+
pointer-events: auto;
|
|
13755
|
+
}
|
|
13760
13756
|
}
|
|
13761
13757
|
|
|
13762
|
-
|
|
13763
|
-
|
|
13764
|
-
|
|
13765
|
-
|
|
13766
|
-
|
|
13767
|
-
font-size: var(--text-body-sm-regular-fontSize);
|
|
13768
|
-
line-height: var(--text-body-sm-regular-lineHeight);
|
|
13758
|
+
/* Suppress iOS Safari's own callout so the long-press sheet can take over */
|
|
13759
|
+
@media (pointer: coarse) {
|
|
13760
|
+
.muka-chat-message--has-menu .muka-chat-message__bubble {
|
|
13761
|
+
-webkit-touch-callout: none;
|
|
13762
|
+
}
|
|
13769
13763
|
}
|
|
13770
13764
|
|
|
13771
|
-
/*
|
|
13772
|
-
.muka-card > .muka-listitem:last-child > .muka-listitem__divider {
|
|
13773
|
-
display: none;
|
|
13774
|
-
}
|
|
13765
|
+
/* ─── Print ────────────────────────────────────────────── */
|
|
13775
13766
|
|
|
13776
|
-
|
|
13777
|
-
.muka-
|
|
13778
|
-
|
|
13779
|
-
|
|
13780
|
-
|
|
13767
|
+
@media print {
|
|
13768
|
+
.muka-chat-message__bubble {
|
|
13769
|
+
box-shadow: none;
|
|
13770
|
+
break-inside: avoid;
|
|
13771
|
+
print-color-adjust: exact;
|
|
13772
|
+
-webkit-print-color-adjust: exact;
|
|
13773
|
+
}
|
|
13774
|
+
|
|
13775
|
+
.muka-chat-message__embed {
|
|
13776
|
+
break-inside: avoid;
|
|
13777
|
+
print-color-adjust: exact;
|
|
13778
|
+
-webkit-print-color-adjust: exact;
|
|
13779
|
+
}
|
|
13780
|
+
|
|
13781
|
+
.muka-chat-message__menu,
|
|
13782
|
+
.muka-chat-message__embed-copy,
|
|
13783
|
+
.muka-chat-message__action-stack {
|
|
13784
|
+
display: none;
|
|
13785
|
+
}
|
|
13781
13786
|
}
|
|
13782
13787
|
|
|
13783
13788
|
|
|
@@ -14129,120 +14134,6 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14129
14134
|
}
|
|
14130
14135
|
|
|
14131
14136
|
|
|
14132
|
-
/* Breadcrumb */
|
|
14133
|
-
/* Breadcrumb Component Styles */
|
|
14134
|
-
|
|
14135
|
-
.muka-breadcrumb__list {
|
|
14136
|
-
display: flex;
|
|
14137
|
-
align-items: center;
|
|
14138
|
-
flex-wrap: wrap;
|
|
14139
|
-
list-style: none;
|
|
14140
|
-
margin: 0;
|
|
14141
|
-
padding: 0;
|
|
14142
|
-
gap: var(--spacing-1);
|
|
14143
|
-
}
|
|
14144
|
-
|
|
14145
|
-
.muka-breadcrumb__item {
|
|
14146
|
-
display: inline-flex;
|
|
14147
|
-
align-items: center;
|
|
14148
|
-
gap: var(--spacing-1);
|
|
14149
|
-
}
|
|
14150
|
-
|
|
14151
|
-
.muka-breadcrumb__item:has(.muka-breadcrumb__icon) {
|
|
14152
|
-
padding-left: var(--spacing-1);
|
|
14153
|
-
}
|
|
14154
|
-
|
|
14155
|
-
.muka-breadcrumb__icon {
|
|
14156
|
-
display: inline-flex;
|
|
14157
|
-
align-items: center;
|
|
14158
|
-
color: var(--color-text-subtle-default);
|
|
14159
|
-
}
|
|
14160
|
-
|
|
14161
|
-
.muka-breadcrumb__icon .muka-icon {
|
|
14162
|
-
color: inherit;
|
|
14163
|
-
}
|
|
14164
|
-
|
|
14165
|
-
.muka-breadcrumb__item:has(.muka-breadcrumb__current) .muka-breadcrumb__icon {
|
|
14166
|
-
color: var(--color-text-default-default);
|
|
14167
|
-
}
|
|
14168
|
-
|
|
14169
|
-
.muka-breadcrumb__item:has(.muka-breadcrumb__link:hover) .muka-breadcrumb__icon {
|
|
14170
|
-
color: var(--color-text-action-default);
|
|
14171
|
-
}
|
|
14172
|
-
|
|
14173
|
-
/* Link styles */
|
|
14174
|
-
.muka-breadcrumb__link {
|
|
14175
|
-
color: var(--color-text-subtle-default);
|
|
14176
|
-
text-decoration: none;
|
|
14177
|
-
border: none;
|
|
14178
|
-
background: none;
|
|
14179
|
-
padding-inline: var(--spacing-2);
|
|
14180
|
-
padding-block: 0;
|
|
14181
|
-
cursor: pointer;
|
|
14182
|
-
font: inherit;
|
|
14183
|
-
transition: color 0.15s ease;
|
|
14184
|
-
}
|
|
14185
|
-
|
|
14186
|
-
.muka-breadcrumb__link:hover {
|
|
14187
|
-
color: var(--color-text-action-default);
|
|
14188
|
-
text-decoration: underline;
|
|
14189
|
-
}
|
|
14190
|
-
|
|
14191
|
-
/* Tighter gap after leading icon */
|
|
14192
|
-
.muka-breadcrumb__item:has(.muka-breadcrumb__icon) .muka-breadcrumb__link,
|
|
14193
|
-
.muka-breadcrumb__item:has(.muka-breadcrumb__icon) .muka-breadcrumb__current {
|
|
14194
|
-
padding-left: var(--spacing-1);
|
|
14195
|
-
}
|
|
14196
|
-
|
|
14197
|
-
/* Current page (last item, no context switcher) */
|
|
14198
|
-
.muka-breadcrumb__current {
|
|
14199
|
-
color: var(--color-text-default-default);
|
|
14200
|
-
font-weight: 600;
|
|
14201
|
-
padding-inline: var(--spacing-2);
|
|
14202
|
-
}
|
|
14203
|
-
|
|
14204
|
-
/* Separator */
|
|
14205
|
-
.muka-breadcrumb__separator {
|
|
14206
|
-
color: var(--color-text-subtle-default);
|
|
14207
|
-
user-select: none;
|
|
14208
|
-
}
|
|
14209
|
-
|
|
14210
|
-
.muka-breadcrumb__item--context {
|
|
14211
|
-
gap: 0;
|
|
14212
|
-
}
|
|
14213
|
-
|
|
14214
|
-
.muka-breadcrumb__list:has(.muka-breadcrumb__item--context) {
|
|
14215
|
-
gap: 0;
|
|
14216
|
-
}
|
|
14217
|
-
|
|
14218
|
-
.muka-breadcrumb__item--context .muka-breadcrumb__separator {
|
|
14219
|
-
margin: 0;
|
|
14220
|
-
padding-inline: var(--spacing-1, 4px);
|
|
14221
|
-
}
|
|
14222
|
-
|
|
14223
|
-
/* Size variants */
|
|
14224
|
-
.muka-breadcrumb--sm {
|
|
14225
|
-
font-family: var(--text-label-sm-regular-fontFamily);
|
|
14226
|
-
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
14227
|
-
font-size: var(--text-label-sm-regular-fontSize);
|
|
14228
|
-
line-height: var(--text-label-sm-regular-lineHeight);
|
|
14229
|
-
}
|
|
14230
|
-
|
|
14231
|
-
.muka-breadcrumb--md {
|
|
14232
|
-
font-family: var(--text-label-md-regular-fontFamily);
|
|
14233
|
-
font-weight: var(--text-label-md-regular-fontWeight);
|
|
14234
|
-
font-size: var(--text-label-md-regular-fontSize);
|
|
14235
|
-
line-height: var(--text-label-md-regular-lineHeight);
|
|
14236
|
-
}
|
|
14237
|
-
|
|
14238
|
-
.muka-breadcrumb--lg {
|
|
14239
|
-
font-family: var(--text-label-lg-regular-fontFamily);
|
|
14240
|
-
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
14241
|
-
font-size: var(--text-label-lg-regular-fontSize);
|
|
14242
|
-
line-height: var(--text-label-lg-regular-lineHeight);
|
|
14243
|
-
}
|
|
14244
|
-
|
|
14245
|
-
|
|
14246
14137
|
/* BottomBar */
|
|
14247
14138
|
/* BottomBar Component Styles */
|
|
14248
14139
|
|
|
@@ -14636,34 +14527,148 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14636
14527
|
line-height: normal;
|
|
14637
14528
|
}
|
|
14638
14529
|
|
|
14639
|
-
/* Neutral variant */
|
|
14640
|
-
.muka-badge-number--neutral {
|
|
14641
|
-
background-color: var(--color-surface-level1);
|
|
14642
|
-
color: var(--color-text-default-default);
|
|
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
|
+
}
|
|
14583
|
+
|
|
14584
|
+
.muka-breadcrumb__icon {
|
|
14585
|
+
display: inline-flex;
|
|
14586
|
+
align-items: center;
|
|
14587
|
+
color: var(--color-text-subtle-default);
|
|
14588
|
+
}
|
|
14589
|
+
|
|
14590
|
+
.muka-breadcrumb__icon .muka-icon {
|
|
14591
|
+
color: inherit;
|
|
14592
|
+
}
|
|
14593
|
+
|
|
14594
|
+
.muka-breadcrumb__item:has(.muka-breadcrumb__current) .muka-breadcrumb__icon {
|
|
14595
|
+
color: var(--color-text-default-default);
|
|
14596
|
+
}
|
|
14597
|
+
|
|
14598
|
+
.muka-breadcrumb__item:has(.muka-breadcrumb__link:hover) .muka-breadcrumb__icon {
|
|
14599
|
+
color: var(--color-text-action-default);
|
|
14600
|
+
}
|
|
14601
|
+
|
|
14602
|
+
/* Link styles */
|
|
14603
|
+
.muka-breadcrumb__link {
|
|
14604
|
+
color: var(--color-text-subtle-default);
|
|
14605
|
+
text-decoration: none;
|
|
14606
|
+
border: none;
|
|
14607
|
+
background: none;
|
|
14608
|
+
padding-inline: var(--spacing-2);
|
|
14609
|
+
padding-block: 0;
|
|
14610
|
+
cursor: pointer;
|
|
14611
|
+
font: inherit;
|
|
14612
|
+
transition: color 0.15s ease;
|
|
14613
|
+
}
|
|
14614
|
+
|
|
14615
|
+
.muka-breadcrumb__link:hover {
|
|
14616
|
+
color: var(--color-text-action-default);
|
|
14617
|
+
text-decoration: underline;
|
|
14618
|
+
}
|
|
14619
|
+
|
|
14620
|
+
/* Tighter gap after leading icon */
|
|
14621
|
+
.muka-breadcrumb__item:has(.muka-breadcrumb__icon) .muka-breadcrumb__link,
|
|
14622
|
+
.muka-breadcrumb__item:has(.muka-breadcrumb__icon) .muka-breadcrumb__current {
|
|
14623
|
+
padding-left: var(--spacing-1);
|
|
14624
|
+
}
|
|
14625
|
+
|
|
14626
|
+
/* Current page (last item, no context switcher) */
|
|
14627
|
+
.muka-breadcrumb__current {
|
|
14628
|
+
color: var(--color-text-default-default);
|
|
14629
|
+
font-weight: 600;
|
|
14630
|
+
padding-inline: var(--spacing-2);
|
|
14631
|
+
}
|
|
14632
|
+
|
|
14633
|
+
/* Separator */
|
|
14634
|
+
.muka-breadcrumb__separator {
|
|
14635
|
+
color: var(--color-text-subtle-default);
|
|
14636
|
+
user-select: none;
|
|
14637
|
+
}
|
|
14638
|
+
|
|
14639
|
+
.muka-breadcrumb__item--context {
|
|
14640
|
+
gap: 0;
|
|
14641
|
+
}
|
|
14642
|
+
|
|
14643
|
+
.muka-breadcrumb__list:has(.muka-breadcrumb__item--context) {
|
|
14644
|
+
gap: 0;
|
|
14643
14645
|
}
|
|
14644
14646
|
|
|
14645
|
-
|
|
14646
|
-
|
|
14647
|
-
|
|
14648
|
-
color: var(--color-text-default-inverse);
|
|
14647
|
+
.muka-breadcrumb__item--context .muka-breadcrumb__separator {
|
|
14648
|
+
margin: 0;
|
|
14649
|
+
padding-inline: var(--spacing-1, 4px);
|
|
14649
14650
|
}
|
|
14650
14651
|
|
|
14651
|
-
/*
|
|
14652
|
-
.muka-
|
|
14653
|
-
|
|
14654
|
-
|
|
14652
|
+
/* Size variants */
|
|
14653
|
+
.muka-breadcrumb--sm {
|
|
14654
|
+
font-family: var(--text-label-sm-regular-fontFamily);
|
|
14655
|
+
font-weight: var(--text-label-sm-regular-fontWeight);
|
|
14656
|
+
font-size: var(--text-label-sm-regular-fontSize);
|
|
14657
|
+
line-height: var(--text-label-sm-regular-lineHeight);
|
|
14655
14658
|
}
|
|
14656
14659
|
|
|
14657
|
-
|
|
14658
|
-
|
|
14659
|
-
|
|
14660
|
-
|
|
14660
|
+
.muka-breadcrumb--md {
|
|
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);
|
|
14661
14665
|
}
|
|
14662
14666
|
|
|
14663
|
-
|
|
14664
|
-
|
|
14665
|
-
|
|
14666
|
-
|
|
14667
|
+
.muka-breadcrumb--lg {
|
|
14668
|
+
font-family: var(--text-label-lg-regular-fontFamily);
|
|
14669
|
+
font-weight: var(--text-label-lg-regular-fontWeight);
|
|
14670
|
+
font-size: var(--text-label-lg-regular-fontSize);
|
|
14671
|
+
line-height: var(--text-label-lg-regular-lineHeight);
|
|
14667
14672
|
}
|
|
14668
14673
|
|
|
14669
14674
|
|
|
@@ -14730,6 +14735,33 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
14730
14735
|
padding-left: var(--badge-padding-leading-lg);
|
|
14731
14736
|
}
|
|
14732
14737
|
|
|
14738
|
+
/* Icon-only — square, sized to the badge height (Figma: 24 / 32 / 40).
|
|
14739
|
+
* Padding resets at size+icon-only specificity so `--has-icon` leading padding
|
|
14740
|
+
* cannot win and shift the icon off-center. */
|
|
14741
|
+
.muka-badge--icon-only {
|
|
14742
|
+
justify-content: center;
|
|
14743
|
+
align-items: center;
|
|
14744
|
+
gap: 0;
|
|
14745
|
+
}
|
|
14746
|
+
|
|
14747
|
+
.muka-badge--sm.muka-badge--icon-only,
|
|
14748
|
+
.muka-badge--md.muka-badge--icon-only,
|
|
14749
|
+
.muka-badge--lg.muka-badge--icon-only {
|
|
14750
|
+
padding: 0;
|
|
14751
|
+
}
|
|
14752
|
+
|
|
14753
|
+
.muka-badge--sm.muka-badge--icon-only {
|
|
14754
|
+
width: var(--badge-size-height-sm);
|
|
14755
|
+
}
|
|
14756
|
+
|
|
14757
|
+
.muka-badge--md.muka-badge--icon-only {
|
|
14758
|
+
width: var(--badge-size-height-md);
|
|
14759
|
+
}
|
|
14760
|
+
|
|
14761
|
+
.muka-badge--lg.muka-badge--icon-only {
|
|
14762
|
+
width: var(--badge-size-height-lg);
|
|
14763
|
+
}
|
|
14764
|
+
|
|
14733
14765
|
/* Leading icon slot — Figma icon sizes: sm 16, md 20, lg 24 (matches Chip) */
|
|
14734
14766
|
.muka-badge__icon {
|
|
14735
14767
|
display: inline-flex;
|
|
@@ -15269,102 +15301,6 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
15269
15301
|
}
|
|
15270
15302
|
|
|
15271
15303
|
|
|
15272
|
-
/* AppShell */
|
|
15273
|
-
/* AppShell Component Styles */
|
|
15274
|
-
|
|
15275
|
-
/*
|
|
15276
|
-
* Layout wrapper for a persistent left navigation rail + main view area, with an
|
|
15277
|
-
* optional full-width top app bar. The rail itself is styled by the BottomBar
|
|
15278
|
-
* `desktopAs="sidebar"` rules (fixed 240px left rail at ≥1024px); AppShell shows/
|
|
15279
|
-
* hides the sidebar + app-bar slots and offsets the main area to match. Both
|
|
15280
|
-
* appear at the large tier — responsively (no `size`, scoped with
|
|
15281
|
-
* `:not([data-size])`) or forced via `[data-size="lg"]`.
|
|
15282
|
-
*/
|
|
15283
|
-
.muka-app-shell {
|
|
15284
|
-
position: relative;
|
|
15285
|
-
/* Reserved width for the rail; matches BottomBar's desktop-sidebar width. */
|
|
15286
|
-
--app-shell-sidebar-width: 240px;
|
|
15287
|
-
/* Height of the optional top app bar. */
|
|
15288
|
-
--app-shell-appbar-height: 64px;
|
|
15289
|
-
}
|
|
15290
|
-
|
|
15291
|
-
/* Sidebar slot: hidden below the large tier (per-view nav handles small/medium). */
|
|
15292
|
-
.muka-app-shell__sidebar {
|
|
15293
|
-
display: none;
|
|
15294
|
-
}
|
|
15295
|
-
|
|
15296
|
-
.muka-app-shell__main {
|
|
15297
|
-
min-height: 100dvh;
|
|
15298
|
-
}
|
|
15299
|
-
|
|
15300
|
-
/*
|
|
15301
|
-
* App bar: full-width top strip. Intrinsic styling lives here (harmless while
|
|
15302
|
-
* hidden); it is revealed only at the large tier. Sits above the sidebar rail.
|
|
15303
|
-
*/
|
|
15304
|
-
.muka-app-shell__appbar {
|
|
15305
|
-
display: none;
|
|
15306
|
-
align-items: center;
|
|
15307
|
-
justify-content: space-between;
|
|
15308
|
-
gap: var(--spacing-4);
|
|
15309
|
-
position: fixed;
|
|
15310
|
-
top: 0;
|
|
15311
|
-
left: 0;
|
|
15312
|
-
right: 0;
|
|
15313
|
-
height: var(--app-shell-appbar-height);
|
|
15314
|
-
padding-inline: var(--spacing-4);
|
|
15315
|
-
background-color: var(--color-surface-level3);
|
|
15316
|
-
border-bottom: var(--border-width-regular) solid var(--color-border-default);
|
|
15317
|
-
z-index: 11; /* above the sidebar rail (z-index 10) */
|
|
15318
|
-
}
|
|
15319
|
-
|
|
15320
|
-
/* ─── Large tier (responsive) ─── */
|
|
15321
|
-
@media (min-width: 1024px) {
|
|
15322
|
-
.muka-app-shell:not([data-size]) .muka-app-shell__sidebar {
|
|
15323
|
-
display: block;
|
|
15324
|
-
}
|
|
15325
|
-
.muka-app-shell:not([data-size]) .muka-app-shell__main {
|
|
15326
|
-
padding-left: var(--app-shell-sidebar-width);
|
|
15327
|
-
}
|
|
15328
|
-
.muka-app-shell:not([data-size]) .muka-app-shell__appbar {
|
|
15329
|
-
display: flex;
|
|
15330
|
-
}
|
|
15331
|
-
/* When an app bar is present, drop the rail + content below it so nothing overlaps. */
|
|
15332
|
-
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-app-shell__main {
|
|
15333
|
-
padding-top: var(--app-shell-appbar-height);
|
|
15334
|
-
}
|
|
15335
|
-
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-bottombar--desktop-sidebar {
|
|
15336
|
-
top: var(--app-shell-appbar-height);
|
|
15337
|
-
height: calc(100vh - var(--app-shell-appbar-height));
|
|
15338
|
-
}
|
|
15339
|
-
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-view,
|
|
15340
|
-
.muka-app-shell:not([data-size]):has(.muka-app-shell__appbar) .muka-nav-transition {
|
|
15341
|
-
height: calc(100dvh - var(--app-shell-appbar-height));
|
|
15342
|
-
}
|
|
15343
|
-
}
|
|
15344
|
-
|
|
15345
|
-
/* ─── Large tier (forced via size="lg") ─── */
|
|
15346
|
-
.muka-app-shell[data-size='lg'] .muka-app-shell__sidebar {
|
|
15347
|
-
display: block;
|
|
15348
|
-
}
|
|
15349
|
-
.muka-app-shell[data-size='lg'] .muka-app-shell__main {
|
|
15350
|
-
padding-left: var(--app-shell-sidebar-width);
|
|
15351
|
-
}
|
|
15352
|
-
.muka-app-shell[data-size='lg'] .muka-app-shell__appbar {
|
|
15353
|
-
display: flex;
|
|
15354
|
-
}
|
|
15355
|
-
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-app-shell__main {
|
|
15356
|
-
padding-top: var(--app-shell-appbar-height);
|
|
15357
|
-
}
|
|
15358
|
-
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-bottombar--desktop-sidebar {
|
|
15359
|
-
top: var(--app-shell-appbar-height);
|
|
15360
|
-
height: calc(100vh - var(--app-shell-appbar-height));
|
|
15361
|
-
}
|
|
15362
|
-
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-view,
|
|
15363
|
-
.muka-app-shell[data-size='lg']:has(.muka-app-shell__appbar) .muka-nav-transition {
|
|
15364
|
-
height: calc(100dvh - var(--app-shell-appbar-height));
|
|
15365
|
-
}
|
|
15366
|
-
|
|
15367
|
-
|
|
15368
15304
|
/* Alert */
|
|
15369
15305
|
/* Alert Component Styles - Using Muka Design Tokens */
|
|
15370
15306
|
|
|
@@ -15526,11 +15462,12 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
15526
15462
|
line-height: var(--text-body-base-regular-lineHeight);
|
|
15527
15463
|
}
|
|
15528
15464
|
|
|
15529
|
-
/* Action slot */
|
|
15465
|
+
/* Action slot — TextLink (or similar) below the message, matching Figma */
|
|
15530
15466
|
.muka-alert__action {
|
|
15531
15467
|
display: flex;
|
|
15532
|
-
|
|
15533
|
-
|
|
15468
|
+
flex-direction: column;
|
|
15469
|
+
align-items: flex-start;
|
|
15470
|
+
padding-top: var(--spacing-1);
|
|
15534
15471
|
}
|
|
15535
15472
|
|
|
15536
15473
|
/* Dismiss button - uses accent color per variant, aligned with icon row */
|
|
@@ -15567,6 +15504,102 @@ button.muka-chat-photo-grid__tile:focus-visible {
|
|
|
15567
15504
|
}
|
|
15568
15505
|
|
|
15569
15506
|
|
|
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
|
+
|
|
15570
15603
|
/* AgentTaskList */
|
|
15571
15604
|
/* AgentTaskList Component Styles */
|
|
15572
15605
|
|