@threadlabs/looma 0.28.6 → 0.28.7
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/components/ui-editor-block-actions/ui-editor-block-actions.html +20 -0
- package/components/ui-editor-block-actions/ui-editor-block-actions.js +14 -0
- package/components/ui-editor-image-toolbar/ui-editor-image-toolbar.html +7 -6
- package/components/ui-editor-image-toolbar/ui-editor-image-toolbar.js +2 -1
- package/components/ui-editor-link-card/ui-editor-link-card.html +57 -0
- package/components/ui-editor-link-card/ui-editor-link-card.js +27 -0
- package/dist/index.js +36 -34
- package/package.json +1 -1
- package/styles/ui-editor-block-actions.css +1 -0
- package/styles/ui-editor-link-card.css +1 -0
- package/vanilla/UiEditorBlockActions.d.ts +16 -0
- package/vanilla/UiEditorBlockActions.js +41 -0
- package/vanilla/UiEditorImageToolbar.js +1 -1
- package/vanilla/UiEditorLinkCard.d.ts +20 -0
- package/vanilla/UiEditorLinkCard.js +153 -0
- package/vanilla/index.js +2 -0
- package/vue/UiEditorBlockActions.d.ts +33 -0
- package/vue/UiEditorBlockActions.js +2 -0
- package/vue/UiEditorBlockActions.vue +125 -0
- package/vue/UiEditorImageToolbar.vue +5 -6
- package/vue/UiEditorLinkCard.d.ts +58 -0
- package/vue/UiEditorLinkCard.js +2 -0
- package/vue/UiEditorLinkCard.vue +319 -0
- package/vue/chunks/UiAffordanceScope.js +1 -1
- package/vue/chunks/UiAvatar.js +1 -1
- package/vue/chunks/UiAvatarGroup.js +1 -1
- package/vue/chunks/UiBadge.js +1 -1
- package/vue/chunks/UiBreadcrumbItem.js +1 -1
- package/vue/chunks/UiBreadcrumbs.js +1 -1
- package/vue/chunks/UiButton.js +1 -1
- package/vue/chunks/UiCallout.js +1 -1
- package/vue/chunks/UiCard.js +1 -1
- package/vue/chunks/UiCheckbox.js +1 -1
- package/vue/chunks/UiCluster.js +1 -1
- package/vue/chunks/UiCombobox.js +1 -1
- package/vue/chunks/UiContainer.js +1 -1
- package/vue/chunks/UiContextMenu.js +1 -1
- package/vue/chunks/UiCover.js +1 -1
- package/vue/chunks/UiDescriptionItem.js +1 -1
- package/vue/chunks/UiDescriptionList.js +1 -1
- package/vue/chunks/UiDialog.js +1 -1
- package/vue/chunks/UiDisclosure.js +1 -1
- package/vue/chunks/UiEditable.js +1 -1
- package/vue/chunks/UiEditorBlockActions.js +127 -0
- package/vue/chunks/UiEditorImageToolbar.js +7 -25
- package/vue/chunks/UiEditorInsertTableGrid.js +1 -1
- package/vue/chunks/UiEditorLinkCard.js +356 -0
- package/vue/chunks/UiEditorMentionMenu.js +1 -1
- package/vue/chunks/UiEditorMentionMenuItem.js +1 -1
- package/vue/chunks/UiEditorSlashMenu.js +1 -1
- package/vue/chunks/UiEditorSlashMenuGroup.js +1 -1
- package/vue/chunks/UiEditorSlashMenuItem.js +1 -1
- package/vue/chunks/UiEditorSurface.js +1 -1
- package/vue/chunks/UiEditorTableContextMenu.js +1 -1
- package/vue/chunks/UiEditorTableOverlay.js +1 -1
- package/vue/chunks/UiEditorTableToolbar.js +1 -1
- package/vue/chunks/UiEditorToolbar.js +1 -1
- package/vue/chunks/UiFloatingActionButton.js +1 -1
- package/vue/chunks/UiFormField.js +1 -1
- package/vue/chunks/UiGrid.js +1 -1
- package/vue/chunks/UiIcon.js +1 -1
- package/vue/chunks/UiIconButton.js +1 -1
- package/vue/chunks/UiImage.js +1 -1
- package/vue/chunks/UiInput.js +1 -1
- package/vue/chunks/UiInputGroup.js +1 -1
- package/vue/chunks/UiList.js +1 -1
- package/vue/chunks/UiListItem.js +1 -1
- package/vue/chunks/UiListbox.js +1 -1
- package/vue/chunks/UiMenu.js +1 -1
- package/vue/chunks/UiMenuGroup.js +1 -1
- package/vue/chunks/UiMenuItem.js +1 -1
- package/vue/chunks/UiMeter.js +1 -1
- package/vue/chunks/UiNavItem.js +1 -1
- package/vue/chunks/UiPageHeader.js +1 -1
- package/vue/chunks/UiPopover.js +1 -1
- package/vue/chunks/UiRadio.js +1 -1
- package/vue/chunks/UiRadioGroup.js +1 -1
- package/vue/chunks/UiReel.js +1 -1
- package/vue/chunks/UiScrollArea.js +1 -1
- package/vue/chunks/UiSearchResultRow.js +1 -1
- package/vue/chunks/UiSearchShell.js +1 -1
- package/vue/chunks/UiSection.js +1 -1
- package/vue/chunks/UiSelect.js +1 -1
- package/vue/chunks/UiSeparator.js +1 -1
- package/vue/chunks/UiSidebar.js +1 -1
- package/vue/chunks/UiSpinner.js +1 -1
- package/vue/chunks/UiStack.js +1 -1
- package/vue/chunks/UiStatusMessage.js +1 -1
- package/vue/chunks/UiSwitch.js +1 -1
- package/vue/chunks/UiSwitcher.js +1 -1
- package/vue/chunks/UiTable.js +1 -1
- package/vue/chunks/UiTabs.js +1 -1
- package/vue/chunks/UiText.js +1 -1
- package/vue/chunks/UiTextarea.js +1 -1
- package/vue/chunks/UiToast.js +1 -1
- package/vue/chunks/UiToastRegion.js +1 -1
- package/vue/chunks/UiTooltip.js +1 -1
- package/vue/chunks/UiTree.js +1 -1
- package/vue/chunks/UiTreeItem.js +1 -1
- package/vue/chunks/_plugin-vue_export-helper.js +1 -1
- package/vue/components.css +1176 -1176
- package/vue/editor/index.js +29 -94
- package/vue/editor/primitives.d.ts +8 -2
- package/vue/index.d.ts +2 -0
- package/vue/index.js +5 -3
package/vue/components.css
CHANGED
|
@@ -3517,356 +3517,663 @@ footer[data-v-de6bc526]:empty {
|
|
|
3517
3517
|
}
|
|
3518
3518
|
}
|
|
3519
3519
|
|
|
3520
|
-
/*
|
|
3521
|
-
|
|
3522
|
-
|
|
3523
|
-
|
|
3524
|
-
strip, so a floating toolbar's border and shadow stay whole. */
|
|
3525
|
-
|
|
3526
|
-
/* Inside LoomaEditor's sticky shell, the shell is the sticky surface. */
|
|
3527
|
-
|
|
3528
|
-
/* Inside LoomaEditor's mobile shell, the toolbar is a scroll-snapping strip. */
|
|
3529
|
-
|
|
3530
|
-
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
3531
|
-
@scope (.ui-editor-toolbar) {
|
|
3532
|
-
:scope:where([data-v-4659067f]:scope) {
|
|
3533
|
-
position: sticky;
|
|
3534
|
-
top: 0;
|
|
3535
|
-
z-index: var(--ui-editor-toolbar-z-index, 10);
|
|
3536
|
-
display: flex;
|
|
3537
|
-
align-items: center;
|
|
3538
|
-
padding: var(--ui-editor-toolbar-padding-block, 6px)
|
|
3539
|
-
var(--ui-editor-toolbar-padding-inline, 12px);
|
|
3540
|
-
min-height: var(--ui-editor-toolbar-min-height, 48px);
|
|
3541
|
-
background: var(--ui-editor-toolbar-surface, var(--ui-surface));
|
|
3542
|
-
border-bottom: var(--ui-border-width) solid
|
|
3543
|
-
var(--ui-editor-toolbar-border, var(--ui-border-divider));
|
|
3520
|
+
/* This component's hooks style the element they are set on, and never a nested one. */
|
|
3521
|
+
@property --ui-menu-surface {
|
|
3522
|
+
syntax: "*";
|
|
3523
|
+
inherits: false;
|
|
3544
3524
|
}
|
|
3545
|
-
|
|
3546
|
-
|
|
3547
|
-
|
|
3548
|
-
align-items: center;
|
|
3549
|
-
justify-content: flex-start;
|
|
3550
|
-
gap: var(--ui-editor-toolbar-gap, 2px);
|
|
3551
|
-
min-width: 0;
|
|
3552
|
-
overflow-x: auto;
|
|
3553
|
-
overflow-y: hidden;
|
|
3554
|
-
overscroll-behavior-inline: contain;
|
|
3555
|
-
scrollbar-width: none;
|
|
3525
|
+
@property --ui-menu-border {
|
|
3526
|
+
syntax: "*";
|
|
3527
|
+
inherits: false;
|
|
3556
3528
|
}
|
|
3557
|
-
|
|
3558
|
-
|
|
3529
|
+
@property --ui-menu-radius {
|
|
3530
|
+
syntax: "*";
|
|
3531
|
+
inherits: false;
|
|
3559
3532
|
}
|
|
3560
|
-
|
|
3561
|
-
|
|
3533
|
+
@property --ui-menu-shadow {
|
|
3534
|
+
syntax: "*";
|
|
3535
|
+
inherits: false;
|
|
3562
3536
|
}
|
|
3563
|
-
|
|
3564
|
-
|
|
3565
|
-
|
|
3566
|
-
mask-image: linear-gradient(
|
|
3567
|
-
var(--_ui-scroll-fade-direction),
|
|
3568
|
-
transparent,
|
|
3569
|
-
#000 var(--_ui-scroll-fade-start),
|
|
3570
|
-
#000 calc(100% - var(--_ui-scroll-fade-end)),
|
|
3571
|
-
transparent
|
|
3572
|
-
);
|
|
3573
|
-
animation:
|
|
3574
|
-
ui-scroll-fade-start linear,
|
|
3575
|
-
ui-scroll-fade-start-hold linear,
|
|
3576
|
-
ui-scroll-fade-end-hold linear,
|
|
3577
|
-
ui-scroll-fade-end linear;
|
|
3578
|
-
animation-timeline: scroll(self inline);
|
|
3579
|
-
animation-range:
|
|
3580
|
-
0 var(--_ui-scroll-fade-size),
|
|
3581
|
-
var(--_ui-scroll-fade-size) calc(100% + 1px),
|
|
3582
|
-
-1px calc(100% - var(--_ui-scroll-fade-size)),
|
|
3583
|
-
calc(100% - var(--_ui-scroll-fade-size)) 100%;
|
|
3537
|
+
@property --ui-menu-viewport-gap {
|
|
3538
|
+
syntax: "*";
|
|
3539
|
+
inherits: false;
|
|
3584
3540
|
}
|
|
3585
|
-
|
|
3586
|
-
|
|
3541
|
+
|
|
3542
|
+
/* Compact sets its items' defaults, so nothing has to rescale a global; an item's own hooks
|
|
3543
|
+
still win. */
|
|
3544
|
+
|
|
3545
|
+
/* Small follows its trigger down: an item's own hooks still win. */
|
|
3546
|
+
@scope (.ui-menu) {
|
|
3547
|
+
:scope:where([data-v-1ded0073]:scope):is([data-ui-menu-state~="density=compact"]) {
|
|
3548
|
+
--_ui-default-menu-item-padding-block: var(--ui-space-1);
|
|
3549
|
+
--_ui-default-menu-item-padding-inline: var(--ui-space-2);
|
|
3550
|
+
--_ui-default-menu-item-font-size: var(--ui-font-size-sm);
|
|
3551
|
+
--_ui-default-menu-item-radius: var(--ui-radius-sm);
|
|
3552
|
+
padding: var(--ui-space-1);
|
|
3553
|
+
gap: 0;
|
|
3587
3554
|
}
|
|
3588
|
-
|
|
3589
|
-
|
|
3590
|
-
|
|
3591
|
-
|
|
3592
|
-
|
|
3593
|
-
|
|
3555
|
+
:scope:where([data-v-1ded0073]:scope):is([data-ui-menu-state~="size=sm"]) {
|
|
3556
|
+
--_ui-default-menu-item-padding-block: var(--ui-space-0-5);
|
|
3557
|
+
--_ui-default-menu-item-padding-inline: var(--ui-space-2);
|
|
3558
|
+
--_ui-default-menu-item-font-size: var(--ui-font-size-xs);
|
|
3559
|
+
--_ui-default-menu-item-radius: var(--ui-radius-sm);
|
|
3560
|
+
--_ui-default-menu-item-min-block-size: 1.5rem;
|
|
3561
|
+
--_ui-default-menu-indicator-size: 0.75rem;
|
|
3562
|
+
min-inline-size: min(8rem, calc(100vw - var(--ui-menu-viewport-gap, var(--ui-space-2)) * 2));
|
|
3563
|
+
padding: var(--ui-space-1);
|
|
3564
|
+
gap: 0;
|
|
3594
3565
|
}
|
|
3595
|
-
:scope:where([data-v-
|
|
3596
|
-
|
|
3597
|
-
|
|
3598
|
-
|
|
3599
|
-
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
|
|
3607
|
-
|
|
3608
|
-
|
|
3566
|
+
:scope:where([data-v-1ded0073]:scope):is([data-ui-menu-state~="icons"]) {
|
|
3567
|
+
--_ui-default-menu-icon-display: inline-flex;
|
|
3568
|
+
}
|
|
3569
|
+
:scope:where([data-v-1ded0073]:scope) {
|
|
3570
|
+
--_ui-menu-surface: var(--ui-menu-surface);
|
|
3571
|
+
--_ui-menu-border: var(--ui-menu-border);
|
|
3572
|
+
--_ui-menu-radius: var(--ui-menu-radius);
|
|
3573
|
+
--_ui-menu-shadow: var(--ui-menu-shadow);
|
|
3574
|
+
/* A menu nested in a compact one starts again from its own density. */
|
|
3575
|
+
--_ui-default-menu-item-padding-block: initial;
|
|
3576
|
+
--_ui-default-menu-item-padding-inline: initial;
|
|
3577
|
+
--_ui-default-menu-item-font-size: initial;
|
|
3578
|
+
--_ui-default-menu-item-radius: initial;
|
|
3579
|
+
--_ui-default-menu-item-min-block-size: initial;
|
|
3580
|
+
--_ui-default-menu-indicator-size: initial;
|
|
3581
|
+
--_ui-default-menu-icon-display: none;
|
|
3582
|
+
display: flex;
|
|
3583
|
+
flex-direction: column;
|
|
3584
|
+
box-sizing: border-box;
|
|
3585
|
+
inline-size: max-content;
|
|
3586
|
+
min-inline-size: min(12rem, calc(100vw - var(--ui-menu-viewport-gap, var(--ui-space-2)) * 2));
|
|
3587
|
+
max-inline-size: calc(100vw - var(--ui-menu-viewport-gap, var(--ui-space-2)) * 2);
|
|
3588
|
+
padding: 0;
|
|
3589
|
+
border: 0;
|
|
3590
|
+
outline: 0;
|
|
3591
|
+
border-radius: 0;
|
|
3592
|
+
background: transparent;
|
|
3593
|
+
box-shadow: none;
|
|
3594
|
+
overflow: visible;
|
|
3595
|
+
}
|
|
3596
|
+
.surface[data-v-1ded0073] {
|
|
3597
|
+
display: flex;
|
|
3598
|
+
flex-direction: column;
|
|
3599
|
+
box-sizing: border-box;
|
|
3600
|
+
max-inline-size: inherit;
|
|
3601
|
+
padding: var(--ui-space-1);
|
|
3602
|
+
background: var(--_ui-menu-surface, var(--ui-overlay-surface, var(--ui-surface-elevated)));
|
|
3603
|
+
border: var(--ui-border-width) solid
|
|
3604
|
+
var(--_ui-menu-border, var(--ui-overlay-border, var(--ui-border-strong)));
|
|
3605
|
+
border-radius: var(--_ui-menu-radius, var(--ui-overlay-radius, var(--ui-radius-lg)));
|
|
3609
3606
|
box-shadow: var(
|
|
3610
|
-
--
|
|
3611
|
-
var(--ui-shadow-
|
|
3607
|
+
--_ui-menu-shadow,
|
|
3608
|
+
var(--ui-overlay-shadow, var(--ui-elevation-overlay, var(--ui-shadow-lg)))
|
|
3612
3609
|
);
|
|
3613
|
-
|
|
3610
|
+
max-block-size: inherit;
|
|
3611
|
+
overflow: auto;
|
|
3614
3612
|
}
|
|
3615
|
-
|
|
3616
|
-
|
|
3617
|
-
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
|
|
3621
|
-
right: 0;
|
|
3622
|
-
min-height: var(--ui-editor-toolbar-mobile-min-height, 56px);
|
|
3623
|
-
border-top: var(--ui-border-width) solid
|
|
3624
|
-
var(--ui-editor-toolbar-border, var(--ui-border-divider));
|
|
3625
|
-
border-bottom: none;
|
|
3626
|
-
box-shadow: var(--ui-editor-toolbar-mobile-shadow, 0 -2px 8px rgb(0 0 0 / 0.06));
|
|
3613
|
+
.surface hr[data-v-1ded0073] {
|
|
3614
|
+
align-self: stretch;
|
|
3615
|
+
block-size: 0;
|
|
3616
|
+
margin: var(--ui-space-1) 0;
|
|
3617
|
+
border: 0;
|
|
3618
|
+
border-block-start: var(--ui-border-width) solid var(--ui-border-divider);
|
|
3627
3619
|
}
|
|
3628
|
-
:scope:where([data-v-
|
|
3629
|
-
|
|
3630
|
-
inset: auto;
|
|
3631
|
-
min-height: auto;
|
|
3632
|
-
border: var(--ui-border-width) solid var(--ui-editor-toolbar-border, var(--ui-border-strong));
|
|
3633
|
-
border-radius: var(--ui-editor-toolbar-floating-radius, var(--ui-radius-lg));
|
|
3634
|
-
box-shadow: var(
|
|
3635
|
-
--ui-editor-toolbar-floating-shadow,
|
|
3636
|
-
var(--ui-shadow-lg, 0 10px 24px rgb(0 0 0 / 0.12))
|
|
3637
|
-
);
|
|
3620
|
+
:scope:where([data-v-1ded0073]:scope):is(:not(:scope[data-ui-menu-state~="internalOpen"]):not(:scope[data-ui-menu-state~="inline"])) {
|
|
3621
|
+
display: none;
|
|
3638
3622
|
}
|
|
3623
|
+
:scope:where([data-v-1ded0073]:scope):is([popover]) {
|
|
3624
|
+
position: fixed;
|
|
3625
|
+
inset: auto;
|
|
3626
|
+
margin: 0;
|
|
3627
|
+
overflow: visible;
|
|
3628
|
+
max-block-size: calc(100dvh - var(--ui-menu-viewport-gap, var(--ui-space-2)) * 2);
|
|
3629
|
+
opacity: 0;
|
|
3630
|
+
transform: translateY(-4px) scale(0.99);
|
|
3631
|
+
transition:
|
|
3632
|
+
opacity var(--ui-motion-fast) var(--ui-motion-ease),
|
|
3633
|
+
transform var(--ui-motion-fast) var(--ui-motion-ease),
|
|
3634
|
+
display var(--ui-motion-fast) allow-discrete,
|
|
3635
|
+
overlay var(--ui-motion-fast) allow-discrete;
|
|
3639
3636
|
}
|
|
3640
|
-
:scope:where([data-v-
|
|
3641
|
-
|
|
3642
|
-
|
|
3643
|
-
background: transparent;
|
|
3644
|
-
border: 0;
|
|
3645
|
-
box-shadow: none;
|
|
3637
|
+
:scope:where([data-v-1ded0073]:scope):is([popover]:popover-open) {
|
|
3638
|
+
opacity: 1;
|
|
3639
|
+
transform: translateY(0) scale(1);
|
|
3646
3640
|
}
|
|
3647
|
-
|
|
3648
|
-
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
min-height: 100%;
|
|
3652
|
-
padding: 0;
|
|
3653
|
-
background: transparent;
|
|
3654
|
-
border: 0;
|
|
3655
|
-
border-radius: 0;
|
|
3656
|
-
box-shadow: none;
|
|
3657
|
-
backdrop-filter: none;
|
|
3641
|
+
@starting-style {
|
|
3642
|
+
:scope:where([data-v-1ded0073]:scope):is([popover]:popover-open) {
|
|
3643
|
+
opacity: 0;
|
|
3644
|
+
transform: translateY(-4px) scale(0.99);
|
|
3658
3645
|
}
|
|
3659
|
-
.looma-editor__mobile-toolbar-shell :scope[data-ui-editor-toolbar-state~="floating"] .strip[data-v-4659067f] {
|
|
3660
|
-
scroll-snap-type: x mandatory;
|
|
3661
3646
|
}
|
|
3662
|
-
:scope:where([data-v-
|
|
3647
|
+
:scope:where([data-v-1ded0073]:scope):is([hidden]) {
|
|
3663
3648
|
display: none;
|
|
3664
3649
|
}
|
|
3650
|
+
@media (prefers-reduced-motion: reduce) {
|
|
3651
|
+
:scope:where([data-v-1ded0073]:scope):is([popover]) {
|
|
3652
|
+
transition: none;
|
|
3653
|
+
}
|
|
3654
|
+
}
|
|
3665
3655
|
}
|
|
3666
3656
|
|
|
3667
3657
|
/* This component's hooks style the element they are set on, and never a nested one. */
|
|
3668
|
-
@property --ui-
|
|
3658
|
+
@property --ui-menu-item-font-size {
|
|
3669
3659
|
syntax: "*";
|
|
3670
3660
|
inherits: false;
|
|
3671
3661
|
}
|
|
3672
|
-
@property --ui-
|
|
3662
|
+
@property --ui-menu-item-hover-surface {
|
|
3673
3663
|
syntax: "*";
|
|
3674
3664
|
inherits: false;
|
|
3675
3665
|
}
|
|
3676
|
-
@property --ui-
|
|
3666
|
+
@property --ui-menu-item-min-block-size {
|
|
3677
3667
|
syntax: "*";
|
|
3678
3668
|
inherits: false;
|
|
3679
3669
|
}
|
|
3680
|
-
@property --ui-
|
|
3670
|
+
@property --ui-menu-item-padding-block {
|
|
3681
3671
|
syntax: "*";
|
|
3682
3672
|
inherits: false;
|
|
3683
3673
|
}
|
|
3684
|
-
@property --ui-
|
|
3674
|
+
@property --ui-menu-item-padding-inline {
|
|
3685
3675
|
syntax: "*";
|
|
3686
3676
|
inherits: false;
|
|
3687
3677
|
}
|
|
3688
|
-
@property --ui-
|
|
3689
|
-
syntax: "*";
|
|
3690
|
-
inherits: false;
|
|
3691
|
-
}
|
|
3692
|
-
@property --ui-form-field-min-inline-size {
|
|
3678
|
+
@property --ui-menu-item-radius {
|
|
3693
3679
|
syntax: "*";
|
|
3694
3680
|
inherits: false;
|
|
3695
3681
|
}
|
|
3696
3682
|
|
|
3697
|
-
/*
|
|
3698
|
-
in Vue), and generates no box of its own, so an empty region adds no gap. */
|
|
3683
|
+
/* A named icon has a fixed column; an icon-enabled menu reserves it on every row. */
|
|
3699
3684
|
|
|
3700
|
-
/* A
|
|
3701
|
-
|
|
3702
|
-
text then never makes this field's label row taller than its neighbours' in a grid row. */
|
|
3685
|
+
/* A menu marks its chosen item with a check, as menus conventionally do; a radio circle reads
|
|
3686
|
+
as a form control. The empty slot keeps unchosen labels aligned with the chosen one. */
|
|
3703
3687
|
|
|
3704
|
-
/*
|
|
3688
|
+
/* A <kbd> takes the browser's monospace; the hint reads in the item's own type. */
|
|
3705
3689
|
|
|
3706
|
-
/*
|
|
3707
|
-
@scope (.ui-form-field) {
|
|
3708
|
-
:scope:where([data-v-50ee887a]:scope) {
|
|
3709
|
-
/* Hooks do not inherit, so the parts below read them from the root. */
|
|
3710
|
-
--_ui-form-field-danger: var(--ui-form-field-danger);
|
|
3711
|
-
--_ui-form-field-help-min-block-size: var(--ui-form-field-help-min-block-size);
|
|
3712
|
-
--_ui-form-field-label-text: var(--ui-form-field-label-text);
|
|
3713
|
-
--_ui-form-field-label-font-size: var(--ui-form-field-label-font-size);
|
|
3714
|
-
--_ui-form-field-help-text: var(--ui-form-field-help-text);
|
|
3715
|
-
--_ui-form-field-help-font-size: var(--ui-form-field-help-font-size);
|
|
3690
|
+
/* Keep the text row at the shared control height where cap trimming is available. */
|
|
3716
3691
|
|
|
3717
|
-
|
|
3692
|
+
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
3693
|
+
@scope (.ui-menu-item) to (.ui-icon) {
|
|
3694
|
+
:scope:where([data-v-50b6e1bc]:scope) {
|
|
3695
|
+
display: flex;
|
|
3696
|
+
align-items: center;
|
|
3718
3697
|
gap: var(--ui-space-2);
|
|
3719
|
-
|
|
3720
|
-
|
|
3698
|
+
box-sizing: border-box;
|
|
3699
|
+
width: 100%;
|
|
3700
|
+
padding: var(
|
|
3701
|
+
--ui-menu-item-padding-block,
|
|
3702
|
+
var(--_ui-default-menu-item-padding-block, var(--ui-space-2))
|
|
3703
|
+
)
|
|
3704
|
+
var(
|
|
3705
|
+
--ui-menu-item-padding-inline,
|
|
3706
|
+
var(--_ui-default-menu-item-padding-inline, var(--ui-space-3))
|
|
3707
|
+
);
|
|
3708
|
+
text-align: left;
|
|
3709
|
+
border-radius: var(
|
|
3710
|
+
--ui-menu-item-radius,
|
|
3711
|
+
var(--_ui-default-menu-item-radius, var(--ui-selection-radius))
|
|
3712
|
+
);
|
|
3721
3713
|
color: var(--ui-text-primary);
|
|
3714
|
+
font-size: var(
|
|
3715
|
+
--ui-menu-item-font-size,
|
|
3716
|
+
var(--_ui-default-menu-item-font-size, var(--ui-font-size-md))
|
|
3717
|
+
);
|
|
3718
|
+
font-weight: var(--ui-font-medium);
|
|
3719
|
+
text-decoration: none;
|
|
3720
|
+
cursor: pointer;
|
|
3721
|
+
outline: none;
|
|
3722
|
+
transition:
|
|
3723
|
+
background-color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
3724
|
+
color var(--ui-motion-fast) var(--ui-motion-ease);
|
|
3722
3725
|
}
|
|
3723
|
-
.
|
|
3724
|
-
display:
|
|
3725
|
-
|
|
3726
|
-
|
|
3727
|
-
|
|
3728
|
-
|
|
3726
|
+
.icon[data-v-50b6e1bc] {
|
|
3727
|
+
display: var(--_ui-default-menu-icon-display, none);
|
|
3728
|
+
align-items: center;
|
|
3729
|
+
justify-content: center;
|
|
3730
|
+
flex: none;
|
|
3731
|
+
inline-size: var(--ui-icon-size-sm);
|
|
3732
|
+
block-size: var(--ui-icon-size-sm);
|
|
3729
3733
|
}
|
|
3730
|
-
.
|
|
3731
|
-
display: flex;
|
|
3732
|
-
align-items: start;
|
|
3733
|
-
gap: var(--ui-space-1);
|
|
3734
|
+
.icon[data-v-50b6e1bc]:not(:empty) {
|
|
3735
|
+
display: inline-flex;
|
|
3734
3736
|
}
|
|
3735
|
-
.
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
block-size: 1lh;
|
|
3737
|
+
.icon svg[data-v-50b6e1bc-s] {
|
|
3738
|
+
inline-size: 100%;
|
|
3739
|
+
block-size: 100%;
|
|
3739
3740
|
}
|
|
3740
|
-
|
|
3741
|
-
|
|
3741
|
+
:scope:where([data-v-50b6e1bc]:scope):is([data-ui-menu-item-state~="tone=danger"]) {
|
|
3742
|
+
color: var(--ui-danger);
|
|
3742
3743
|
}
|
|
3743
|
-
.
|
|
3744
|
-
|
|
3745
|
-
|
|
3746
|
-
|
|
3744
|
+
.label[data-v-50b6e1bc] {
|
|
3745
|
+
display: flex;
|
|
3746
|
+
align-items: center;
|
|
3747
|
+
gap: var(--ui-space-2);
|
|
3748
|
+
flex: 1;
|
|
3749
|
+
min-inline-size: 0;
|
|
3747
3750
|
}
|
|
3748
|
-
.
|
|
3749
|
-
|
|
3751
|
+
.indicator[data-v-50b6e1bc] {
|
|
3752
|
+
display: inline-flex;
|
|
3753
|
+
align-items: center;
|
|
3754
|
+
justify-content: center;
|
|
3755
|
+
flex: none;
|
|
3756
|
+
box-sizing: border-box;
|
|
3757
|
+
inline-size: var(--_ui-default-menu-indicator-size, var(--ui-icon-size-sm));
|
|
3758
|
+
block-size: var(--_ui-default-menu-indicator-size, var(--ui-icon-size-sm));
|
|
3759
|
+
border: var(--ui-border-width) solid var(--ui-control-border);
|
|
3760
|
+
border-radius: var(--ui-radius-sm);
|
|
3761
|
+
color: var(--ui-surface);
|
|
3762
|
+
--_ui-default-icon-size: 0.75rem;
|
|
3750
3763
|
}
|
|
3751
|
-
.
|
|
3764
|
+
:scope[data-ui-menu-item-state~="type=action"] .indicator[data-v-50b6e1bc] {
|
|
3752
3765
|
display: none;
|
|
3753
3766
|
}
|
|
3754
|
-
:scope[data-ui-
|
|
3755
|
-
|
|
3767
|
+
:scope[data-ui-menu-item-state~="type=checkbox"][aria-checked="true"] .indicator[data-v-50b6e1bc] {
|
|
3768
|
+
border-color: var(--ui-accent);
|
|
3769
|
+
background: var(--ui-accent);
|
|
3756
3770
|
}
|
|
3757
|
-
|
|
3758
|
-
color:
|
|
3771
|
+
:scope[data-ui-menu-item-state~="type=radio"] .indicator[data-v-50b6e1bc] {
|
|
3772
|
+
border-color: transparent;
|
|
3773
|
+
color: var(--ui-text-secondary);
|
|
3774
|
+
}
|
|
3775
|
+
.shortcut[data-v-50b6e1bc] {
|
|
3776
|
+
margin-inline-start: auto;
|
|
3777
|
+
color: var(--ui-text-secondary);
|
|
3759
3778
|
font-size: var(--ui-font-size-sm);
|
|
3779
|
+
font-weight: var(--ui-font-normal);
|
|
3760
3780
|
}
|
|
3761
|
-
|
|
3781
|
+
.shortcut[data-v-50b6e1bc]:empty {
|
|
3762
3782
|
display: none;
|
|
3763
3783
|
}
|
|
3784
|
+
.shortcut kbd[data-v-50b6e1bc-s] {
|
|
3785
|
+
font: inherit;
|
|
3764
3786
|
}
|
|
3765
|
-
|
|
3766
|
-
|
|
3767
|
-
|
|
3768
|
-
|
|
3769
|
-
|
|
3770
|
-
|
|
3771
|
-
|
|
3772
|
-
|
|
3773
|
-
inherits: false;
|
|
3774
|
-
}
|
|
3775
|
-
@property --ui-icon-button-border {
|
|
3776
|
-
syntax: "*";
|
|
3777
|
-
inherits: false;
|
|
3778
|
-
}
|
|
3779
|
-
@property --ui-icon-button-disabled-filter {
|
|
3780
|
-
syntax: "*";
|
|
3781
|
-
inherits: false;
|
|
3782
|
-
}
|
|
3783
|
-
@property --ui-icon-button-disabled-opacity {
|
|
3784
|
-
syntax: "*";
|
|
3785
|
-
inherits: false;
|
|
3786
|
-
}
|
|
3787
|
-
@property --ui-icon-button-hover-border {
|
|
3788
|
-
syntax: "*";
|
|
3789
|
-
inherits: false;
|
|
3790
|
-
}
|
|
3791
|
-
@property --ui-icon-button-hover-surface {
|
|
3792
|
-
syntax: "*";
|
|
3793
|
-
inherits: false;
|
|
3794
|
-
}
|
|
3795
|
-
@property --ui-icon-button-hover-text {
|
|
3796
|
-
syntax: "*";
|
|
3797
|
-
inherits: false;
|
|
3798
|
-
}
|
|
3799
|
-
@property --ui-icon-button-icon-size {
|
|
3800
|
-
syntax: "*";
|
|
3801
|
-
inherits: false;
|
|
3787
|
+
@supports (text-box-trim: trim-both) {
|
|
3788
|
+
:scope:where([data-v-50b6e1bc]:scope) {
|
|
3789
|
+
min-block-size: var(
|
|
3790
|
+
--ui-menu-item-min-block-size,
|
|
3791
|
+
var(--_ui-default-menu-item-min-block-size, var(--ui-control-size-md, 2.5rem))
|
|
3792
|
+
);
|
|
3793
|
+
text-box-trim: trim-both;
|
|
3794
|
+
text-box-edge: cap alphabetic;
|
|
3802
3795
|
}
|
|
3803
|
-
@property --ui-icon-button-icon-stroke-width {
|
|
3804
|
-
syntax: "*";
|
|
3805
|
-
inherits: false;
|
|
3806
3796
|
}
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
inherits: false;
|
|
3797
|
+
:scope:where([data-v-50b6e1bc]:scope):is(:is(:hover, :focus-visible):not([aria-disabled="true"])) {
|
|
3798
|
+
background: var(--ui-menu-item-hover-surface, var(--ui-surface-subtle));
|
|
3810
3799
|
}
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3800
|
+
:scope:where([data-v-50b6e1bc]:scope):is(:focus-visible) {
|
|
3801
|
+
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
3802
|
+
outline-offset: calc(-1 * var(--ui-focus-width));
|
|
3814
3803
|
}
|
|
3815
|
-
|
|
3816
|
-
|
|
3817
|
-
|
|
3804
|
+
:scope:where([data-v-50b6e1bc]:scope):is([aria-disabled="true"]) {
|
|
3805
|
+
background: var(--ui-disabled-surface);
|
|
3806
|
+
color: var(--ui-disabled-text);
|
|
3807
|
+
cursor: not-allowed;
|
|
3818
3808
|
}
|
|
3819
|
-
|
|
3820
|
-
|
|
3821
|
-
|
|
3809
|
+
:scope[aria-disabled="true"] .indicator[data-v-50b6e1bc] {
|
|
3810
|
+
border-color: var(--ui-disabled-border);
|
|
3811
|
+
background: transparent;
|
|
3812
|
+
color: var(--ui-disabled-text);
|
|
3822
3813
|
}
|
|
3823
|
-
|
|
3824
|
-
|
|
3825
|
-
inherits: false;
|
|
3814
|
+
:scope[aria-disabled="true"] .indicator[data-v-50b6e1bc]::after {
|
|
3815
|
+
background: var(--ui-disabled-text);
|
|
3826
3816
|
}
|
|
3827
|
-
@
|
|
3828
|
-
|
|
3829
|
-
|
|
3817
|
+
@media (forced-colors: active) {
|
|
3818
|
+
:scope:where([data-v-50b6e1bc]:scope):is(:focus-visible) {
|
|
3819
|
+
outline-color: Highlight;
|
|
3830
3820
|
}
|
|
3831
|
-
@property --ui-icon-button-solid-surface {
|
|
3832
|
-
syntax: "*";
|
|
3833
|
-
inherits: false;
|
|
3834
3821
|
}
|
|
3835
|
-
|
|
3836
|
-
|
|
3837
|
-
inherits: false;
|
|
3822
|
+
:scope:where([data-v-50b6e1bc]:scope):is([hidden]) {
|
|
3823
|
+
display: none;
|
|
3838
3824
|
}
|
|
3839
|
-
@property --ui-icon-button-surface {
|
|
3840
|
-
syntax: "*";
|
|
3841
|
-
inherits: false;
|
|
3842
3825
|
}
|
|
3843
3826
|
|
|
3844
|
-
/*
|
|
3845
|
-
|
|
3846
|
-
/* At rest an anticipatory button shows only its guide dot. The icon grows into place when
|
|
3847
|
-
proximity, hover, or focus reveals it; the button's hit area and guide remain stable. */
|
|
3848
|
-
|
|
3849
|
-
/* A touch target without a bigger button: an invisible hit area, at least the control
|
|
3850
|
-
minimum, centred on the button (::before is the anticipatory guide). */
|
|
3827
|
+
/* One row, always. When the controls outgrow the space, the row scrolls sideways rather than
|
|
3828
|
+
wrapping into several lines, and a fade at each edge that has more to show says so. */
|
|
3851
3829
|
|
|
3852
|
-
/*
|
|
3830
|
+
/* The edge fades are the scroll fade every Looma scroller uses (see ui-scroll-area), a mask on the
|
|
3831
|
+
strip, so a floating toolbar's border and shadow stay whole. */
|
|
3853
3832
|
|
|
3854
|
-
/*
|
|
3833
|
+
/* Inside LoomaEditor's sticky shell, the shell is the sticky surface. */
|
|
3855
3834
|
|
|
3856
|
-
/*
|
|
3835
|
+
/* Inside LoomaEditor's mobile shell, the toolbar is a scroll-snapping strip. */
|
|
3857
3836
|
|
|
3858
3837
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
3859
|
-
@scope (.ui-
|
|
3860
|
-
:scope:where([data-v-
|
|
3861
|
-
|
|
3862
|
-
|
|
3863
|
-
|
|
3864
|
-
|
|
3865
|
-
|
|
3866
|
-
|
|
3867
|
-
|
|
3868
|
-
|
|
3869
|
-
|
|
3838
|
+
@scope (.ui-editor-toolbar) {
|
|
3839
|
+
:scope:where([data-v-4659067f]:scope) {
|
|
3840
|
+
position: sticky;
|
|
3841
|
+
top: 0;
|
|
3842
|
+
z-index: var(--ui-editor-toolbar-z-index, 10);
|
|
3843
|
+
display: flex;
|
|
3844
|
+
align-items: center;
|
|
3845
|
+
padding: var(--ui-editor-toolbar-padding-block, 6px)
|
|
3846
|
+
var(--ui-editor-toolbar-padding-inline, 12px);
|
|
3847
|
+
min-height: var(--ui-editor-toolbar-min-height, 48px);
|
|
3848
|
+
background: var(--ui-editor-toolbar-surface, var(--ui-surface));
|
|
3849
|
+
border-bottom: var(--ui-border-width) solid
|
|
3850
|
+
var(--ui-editor-toolbar-border, var(--ui-border-divider));
|
|
3851
|
+
}
|
|
3852
|
+
.strip[data-v-4659067f] {
|
|
3853
|
+
display: flex;
|
|
3854
|
+
flex: 1 1 auto;
|
|
3855
|
+
align-items: center;
|
|
3856
|
+
justify-content: flex-start;
|
|
3857
|
+
gap: var(--ui-editor-toolbar-gap, 2px);
|
|
3858
|
+
min-width: 0;
|
|
3859
|
+
overflow-x: auto;
|
|
3860
|
+
overflow-y: hidden;
|
|
3861
|
+
overscroll-behavior-inline: contain;
|
|
3862
|
+
scrollbar-width: none;
|
|
3863
|
+
}
|
|
3864
|
+
.strip[data-v-4659067f]::-webkit-scrollbar {
|
|
3865
|
+
display: none;
|
|
3866
|
+
}
|
|
3867
|
+
.strip > [data-v-4659067f-s] {
|
|
3868
|
+
flex: 0 0 auto;
|
|
3869
|
+
}
|
|
3870
|
+
.strip[data-v-4659067f] {
|
|
3871
|
+
--_ui-scroll-fade-direction: to right;
|
|
3872
|
+
--_ui-scroll-fade-size: var(--ui-editor-toolbar-fade-size, var(--ui-scroll-fade-size, 24px));
|
|
3873
|
+
mask-image: linear-gradient(
|
|
3874
|
+
var(--_ui-scroll-fade-direction),
|
|
3875
|
+
transparent,
|
|
3876
|
+
#000 var(--_ui-scroll-fade-start),
|
|
3877
|
+
#000 calc(100% - var(--_ui-scroll-fade-end)),
|
|
3878
|
+
transparent
|
|
3879
|
+
);
|
|
3880
|
+
animation:
|
|
3881
|
+
ui-scroll-fade-start linear,
|
|
3882
|
+
ui-scroll-fade-start-hold linear,
|
|
3883
|
+
ui-scroll-fade-end-hold linear,
|
|
3884
|
+
ui-scroll-fade-end linear;
|
|
3885
|
+
animation-timeline: scroll(self inline);
|
|
3886
|
+
animation-range:
|
|
3887
|
+
0 var(--_ui-scroll-fade-size),
|
|
3888
|
+
var(--_ui-scroll-fade-size) calc(100% + 1px),
|
|
3889
|
+
-1px calc(100% - var(--_ui-scroll-fade-size)),
|
|
3890
|
+
calc(100% - var(--_ui-scroll-fade-size)) 100%;
|
|
3891
|
+
}
|
|
3892
|
+
:scope:dir(rtl) .strip[data-v-4659067f] {
|
|
3893
|
+
--_ui-scroll-fade-direction: to left;
|
|
3894
|
+
}
|
|
3895
|
+
.divider[data-v-4659067f-s] {
|
|
3896
|
+
width: 1px;
|
|
3897
|
+
height: 20px;
|
|
3898
|
+
background: var(--ui-editor-toolbar-divider, var(--ui-border-divider));
|
|
3899
|
+
flex-shrink: 0;
|
|
3900
|
+
margin: 0 var(--ui-editor-toolbar-divider-margin, 4px);
|
|
3901
|
+
}
|
|
3902
|
+
:scope:where([data-v-4659067f]:scope):is([data-ui-editor-toolbar-state~="floating"]) {
|
|
3903
|
+
position: relative;
|
|
3904
|
+
top: auto;
|
|
3905
|
+
width: max-content;
|
|
3906
|
+
max-width: min(calc(100vw - 24px), 100%);
|
|
3907
|
+
min-height: auto;
|
|
3908
|
+
padding: var(--ui-editor-toolbar-floating-padding, 4px);
|
|
3909
|
+
background: color-mix(
|
|
3910
|
+
in srgb,
|
|
3911
|
+
var(--ui-editor-toolbar-surface, var(--ui-surface)) 96%,
|
|
3912
|
+
transparent
|
|
3913
|
+
);
|
|
3914
|
+
border: var(--ui-border-width) solid var(--ui-editor-toolbar-border, var(--ui-border-strong));
|
|
3915
|
+
border-radius: var(--ui-editor-toolbar-floating-radius, var(--ui-radius-lg));
|
|
3916
|
+
box-shadow: var(
|
|
3917
|
+
--ui-editor-toolbar-floating-shadow,
|
|
3918
|
+
var(--ui-shadow-lg, 0 10px 24px rgb(0 0 0 / 0.12))
|
|
3919
|
+
);
|
|
3920
|
+
backdrop-filter: blur(10px);
|
|
3921
|
+
}
|
|
3922
|
+
@media (max-width: 767px) {
|
|
3923
|
+
:scope:where([data-v-4659067f]:scope) {
|
|
3924
|
+
position: fixed;
|
|
3925
|
+
top: auto;
|
|
3926
|
+
bottom: env(safe-area-inset-bottom);
|
|
3927
|
+
left: 0;
|
|
3928
|
+
right: 0;
|
|
3929
|
+
min-height: var(--ui-editor-toolbar-mobile-min-height, 56px);
|
|
3930
|
+
border-top: var(--ui-border-width) solid
|
|
3931
|
+
var(--ui-editor-toolbar-border, var(--ui-border-divider));
|
|
3932
|
+
border-bottom: none;
|
|
3933
|
+
box-shadow: var(--ui-editor-toolbar-mobile-shadow, 0 -2px 8px rgb(0 0 0 / 0.06));
|
|
3934
|
+
}
|
|
3935
|
+
:scope:where([data-v-4659067f]:scope):is([data-ui-editor-toolbar-state~="floating"]) {
|
|
3936
|
+
position: relative;
|
|
3937
|
+
inset: auto;
|
|
3938
|
+
min-height: auto;
|
|
3939
|
+
border: var(--ui-border-width) solid var(--ui-editor-toolbar-border, var(--ui-border-strong));
|
|
3940
|
+
border-radius: var(--ui-editor-toolbar-floating-radius, var(--ui-radius-lg));
|
|
3941
|
+
box-shadow: var(
|
|
3942
|
+
--ui-editor-toolbar-floating-shadow,
|
|
3943
|
+
var(--ui-shadow-lg, 0 10px 24px rgb(0 0 0 / 0.12))
|
|
3944
|
+
);
|
|
3945
|
+
}
|
|
3946
|
+
}
|
|
3947
|
+
:scope:where([data-v-4659067f]:scope):is(.looma-editor__sticky-toolbar-shell *) {
|
|
3948
|
+
position: relative;
|
|
3949
|
+
min-height: var(--ui-editor-toolbar-min-height, 48px);
|
|
3950
|
+
background: transparent;
|
|
3951
|
+
border: 0;
|
|
3952
|
+
box-shadow: none;
|
|
3953
|
+
}
|
|
3954
|
+
:scope:where([data-v-4659067f]:scope):is(.looma-editor__mobile-toolbar-shell
|
|
3955
|
+
[data-ui-editor-toolbar-state~="floating"]) {
|
|
3956
|
+
width: 100%;
|
|
3957
|
+
max-width: none;
|
|
3958
|
+
min-height: 100%;
|
|
3959
|
+
padding: 0;
|
|
3960
|
+
background: transparent;
|
|
3961
|
+
border: 0;
|
|
3962
|
+
border-radius: 0;
|
|
3963
|
+
box-shadow: none;
|
|
3964
|
+
backdrop-filter: none;
|
|
3965
|
+
}
|
|
3966
|
+
.looma-editor__mobile-toolbar-shell :scope[data-ui-editor-toolbar-state~="floating"] .strip[data-v-4659067f] {
|
|
3967
|
+
scroll-snap-type: x mandatory;
|
|
3968
|
+
}
|
|
3969
|
+
:scope:where([data-v-4659067f]:scope):is([hidden]) {
|
|
3970
|
+
display: none;
|
|
3971
|
+
}
|
|
3972
|
+
}
|
|
3973
|
+
|
|
3974
|
+
/* This component's hooks style the element they are set on, and never a nested one. */
|
|
3975
|
+
@property --ui-form-field-danger {
|
|
3976
|
+
syntax: "*";
|
|
3977
|
+
inherits: false;
|
|
3978
|
+
}
|
|
3979
|
+
@property --ui-form-field-help-font-size {
|
|
3980
|
+
syntax: "*";
|
|
3981
|
+
inherits: false;
|
|
3982
|
+
}
|
|
3983
|
+
@property --ui-form-field-help-min-block-size {
|
|
3984
|
+
syntax: "*";
|
|
3985
|
+
inherits: false;
|
|
3986
|
+
}
|
|
3987
|
+
@property --ui-form-field-help-text {
|
|
3988
|
+
syntax: "*";
|
|
3989
|
+
inherits: false;
|
|
3990
|
+
}
|
|
3991
|
+
@property --ui-form-field-label-font-size {
|
|
3992
|
+
syntax: "*";
|
|
3993
|
+
inherits: false;
|
|
3994
|
+
}
|
|
3995
|
+
@property --ui-form-field-label-text {
|
|
3996
|
+
syntax: "*";
|
|
3997
|
+
inherits: false;
|
|
3998
|
+
}
|
|
3999
|
+
@property --ui-form-field-min-inline-size {
|
|
4000
|
+
syntax: "*";
|
|
4001
|
+
inherits: false;
|
|
4002
|
+
}
|
|
4003
|
+
|
|
4004
|
+
/* Each named region styles whatever fills it, however it was slotted (slot="…" in HTML, #label
|
|
4005
|
+
in Vue), and generates no box of its own, so an empty region adds no gap. */
|
|
4006
|
+
|
|
4007
|
+
/* A label action, such as a small help button, sits after the label text in a box one line
|
|
4008
|
+
tall, centred on the first line and overflowing it. A button taller than a line of label
|
|
4009
|
+
text then never makes this field's label row taller than its neighbours' in a grid row. */
|
|
4010
|
+
|
|
4011
|
+
/* An error reads in the danger colour, the one the invalid control's border takes. */
|
|
4012
|
+
|
|
4013
|
+
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
4014
|
+
@scope (.ui-form-field) {
|
|
4015
|
+
:scope:where([data-v-50ee887a]:scope) {
|
|
4016
|
+
/* Hooks do not inherit, so the parts below read them from the root. */
|
|
4017
|
+
--_ui-form-field-danger: var(--ui-form-field-danger);
|
|
4018
|
+
--_ui-form-field-help-min-block-size: var(--ui-form-field-help-min-block-size);
|
|
4019
|
+
--_ui-form-field-label-text: var(--ui-form-field-label-text);
|
|
4020
|
+
--_ui-form-field-label-font-size: var(--ui-form-field-label-font-size);
|
|
4021
|
+
--_ui-form-field-help-text: var(--ui-form-field-help-text);
|
|
4022
|
+
--_ui-form-field-help-font-size: var(--ui-form-field-help-font-size);
|
|
4023
|
+
|
|
4024
|
+
display: grid;
|
|
4025
|
+
gap: var(--ui-space-2);
|
|
4026
|
+
min-inline-size: var(--ui-form-field-min-inline-size, 0);
|
|
4027
|
+
align-content: start;
|
|
4028
|
+
color: var(--ui-text-primary);
|
|
4029
|
+
}
|
|
4030
|
+
.label[data-v-50ee887a], .help[data-v-50ee887a], .error[data-v-50ee887a] {
|
|
4031
|
+
display: contents;
|
|
4032
|
+
}
|
|
4033
|
+
.label[data-v-50ee887a] {
|
|
4034
|
+
color: var(--_ui-form-field-label-text, var(--ui-text-secondary));
|
|
4035
|
+
font-size: var(--_ui-form-field-label-font-size, var(--ui-font-size-sm));
|
|
4036
|
+
}
|
|
4037
|
+
.label[data-v-50ee887a]:has(> .label-action > *) {
|
|
4038
|
+
display: flex;
|
|
4039
|
+
align-items: start;
|
|
4040
|
+
gap: var(--ui-space-1);
|
|
4041
|
+
}
|
|
4042
|
+
.label-action[data-v-50ee887a] {
|
|
4043
|
+
display: flex;
|
|
4044
|
+
align-items: unsafe center;
|
|
4045
|
+
block-size: 1lh;
|
|
4046
|
+
}
|
|
4047
|
+
.label-action[data-v-50ee887a]:not(:has(> *)) {
|
|
4048
|
+
display: none;
|
|
4049
|
+
}
|
|
4050
|
+
.help[data-v-50ee887a] {
|
|
4051
|
+
color: var(--_ui-form-field-help-text, var(--ui-text-muted));
|
|
4052
|
+
font-size: var(--_ui-form-field-help-font-size, var(--ui-font-size-sm));
|
|
4053
|
+
line-height: var(--ui-line-height-md);
|
|
4054
|
+
}
|
|
4055
|
+
.help > [data-v-50ee887a-s] {
|
|
4056
|
+
min-block-size: var(--_ui-form-field-help-min-block-size, 0);
|
|
4057
|
+
}
|
|
4058
|
+
.error[data-v-50ee887a] {
|
|
4059
|
+
display: none;
|
|
4060
|
+
}
|
|
4061
|
+
:scope[data-ui-form-field-state~="invalid"] .error[data-v-50ee887a] {
|
|
4062
|
+
display: contents;
|
|
4063
|
+
}
|
|
4064
|
+
.error[data-v-50ee887a],[role="alert"][data-v-50ee887a-s] {
|
|
4065
|
+
color: var(--_ui-form-field-danger, var(--ui-field-danger, var(--ui-danger)));
|
|
4066
|
+
font-size: var(--ui-font-size-sm);
|
|
4067
|
+
}
|
|
4068
|
+
:scope:where([data-v-50ee887a]:scope):is([hidden]) {
|
|
4069
|
+
display: none;
|
|
4070
|
+
}
|
|
4071
|
+
}
|
|
4072
|
+
|
|
4073
|
+
/* This component's hooks style the element they are set on, and never a nested one. */
|
|
4074
|
+
@property --ui-icon-button-active-scale {
|
|
4075
|
+
syntax: "*";
|
|
4076
|
+
inherits: false;
|
|
4077
|
+
}
|
|
4078
|
+
@property --ui-icon-button-active-surface {
|
|
4079
|
+
syntax: "*";
|
|
4080
|
+
inherits: false;
|
|
4081
|
+
}
|
|
4082
|
+
@property --ui-icon-button-border {
|
|
4083
|
+
syntax: "*";
|
|
4084
|
+
inherits: false;
|
|
4085
|
+
}
|
|
4086
|
+
@property --ui-icon-button-disabled-filter {
|
|
4087
|
+
syntax: "*";
|
|
4088
|
+
inherits: false;
|
|
4089
|
+
}
|
|
4090
|
+
@property --ui-icon-button-disabled-opacity {
|
|
4091
|
+
syntax: "*";
|
|
4092
|
+
inherits: false;
|
|
4093
|
+
}
|
|
4094
|
+
@property --ui-icon-button-hover-border {
|
|
4095
|
+
syntax: "*";
|
|
4096
|
+
inherits: false;
|
|
4097
|
+
}
|
|
4098
|
+
@property --ui-icon-button-hover-surface {
|
|
4099
|
+
syntax: "*";
|
|
4100
|
+
inherits: false;
|
|
4101
|
+
}
|
|
4102
|
+
@property --ui-icon-button-hover-text {
|
|
4103
|
+
syntax: "*";
|
|
4104
|
+
inherits: false;
|
|
4105
|
+
}
|
|
4106
|
+
@property --ui-icon-button-icon-size {
|
|
4107
|
+
syntax: "*";
|
|
4108
|
+
inherits: false;
|
|
4109
|
+
}
|
|
4110
|
+
@property --ui-icon-button-icon-stroke-width {
|
|
4111
|
+
syntax: "*";
|
|
4112
|
+
inherits: false;
|
|
4113
|
+
}
|
|
4114
|
+
@property --ui-icon-button-outline-surface {
|
|
4115
|
+
syntax: "*";
|
|
4116
|
+
inherits: false;
|
|
4117
|
+
}
|
|
4118
|
+
@property --ui-icon-button-outline-text {
|
|
4119
|
+
syntax: "*";
|
|
4120
|
+
inherits: false;
|
|
4121
|
+
}
|
|
4122
|
+
@property --ui-icon-button-radius {
|
|
4123
|
+
syntax: "*";
|
|
4124
|
+
inherits: false;
|
|
4125
|
+
}
|
|
4126
|
+
@property --ui-icon-button-size {
|
|
4127
|
+
syntax: "*";
|
|
4128
|
+
inherits: false;
|
|
4129
|
+
}
|
|
4130
|
+
@property --ui-icon-button-solid-hover-surface {
|
|
4131
|
+
syntax: "*";
|
|
4132
|
+
inherits: false;
|
|
4133
|
+
}
|
|
4134
|
+
@property --ui-icon-button-solid-shadow {
|
|
4135
|
+
syntax: "*";
|
|
4136
|
+
inherits: false;
|
|
4137
|
+
}
|
|
4138
|
+
@property --ui-icon-button-solid-surface {
|
|
4139
|
+
syntax: "*";
|
|
4140
|
+
inherits: false;
|
|
4141
|
+
}
|
|
4142
|
+
@property --ui-icon-button-solid-text {
|
|
4143
|
+
syntax: "*";
|
|
4144
|
+
inherits: false;
|
|
4145
|
+
}
|
|
4146
|
+
@property --ui-icon-button-surface {
|
|
4147
|
+
syntax: "*";
|
|
4148
|
+
inherits: false;
|
|
4149
|
+
}
|
|
4150
|
+
|
|
4151
|
+
/* Omitted tone retains the existing accent solid; explicit neutral is additive. */
|
|
4152
|
+
|
|
4153
|
+
/* At rest an anticipatory button shows only its guide dot. The icon grows into place when
|
|
4154
|
+
proximity, hover, or focus reveals it; the button's hit area and guide remain stable. */
|
|
4155
|
+
|
|
4156
|
+
/* A touch target without a bigger button: an invisible hit area, at least the control
|
|
4157
|
+
minimum, centred on the button (::before is the anticipatory guide). */
|
|
4158
|
+
|
|
4159
|
+
/* A text button's companion uses control geometry; compact icon buttons keep their own density. */
|
|
4160
|
+
|
|
4161
|
+
/* Native toggle state persists after pointer release, including during loading. */
|
|
4162
|
+
|
|
4163
|
+
/* Disabled is a flat neutral control, independent of the active variant's tone. */
|
|
4164
|
+
|
|
4165
|
+
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
4166
|
+
@scope (.ui-icon-button) to (.ui-spinner) {
|
|
4167
|
+
:scope:where([data-v-4a58a364]:scope) {
|
|
4168
|
+
/* Optional inherited action-group values keep text and icon actions under the same light.
|
|
4169
|
+
One fine top/start highlight follows the bottom/end lowlight at a joined action seam.
|
|
4170
|
+
A single ambient lift avoids stacking a face gradient or another inset bevel. */
|
|
4171
|
+
--_ui-action-start: 1px;
|
|
4172
|
+
--_ui-action-edge: var(
|
|
4173
|
+
--ui-action-edge,
|
|
4174
|
+
inset var(--_ui-action-start) 1px 0 light-dark(
|
|
4175
|
+
rgb(255 255 255 / 0.08),
|
|
4176
|
+
rgb(255 255 255 / 0.06)
|
|
3870
4177
|
),
|
|
3871
4178
|
inset calc(-1 * var(--_ui-action-start)) -1px 0 light-dark(
|
|
3872
4179
|
rgb(0 0 0 / 0.08),
|
|
@@ -5923,1124 +6230,817 @@ ul[data-v-7d408909] {
|
|
|
5923
6230
|
svg[data-v-3d55b8dc-s] {
|
|
5924
6231
|
inline-size: var(--ui-icon-size-lg);
|
|
5925
6232
|
block-size: var(--ui-icon-size-lg);
|
|
5926
|
-
flex-shrink: 0;
|
|
5927
|
-
}
|
|
5928
|
-
@media (min-width: 768px) {
|
|
5929
|
-
:scope:where([data-v-3d55b8dc]:scope):is([data-ui-floating-action-button-state~="mobileOnly"]) {
|
|
5930
|
-
display: none;
|
|
5931
|
-
}
|
|
5932
|
-
}
|
|
5933
|
-
:scope:where([data-v-3d55b8dc]:scope):is([hidden]) {
|
|
5934
|
-
display: none;
|
|
5935
|
-
}
|
|
5936
|
-
}
|
|
5937
|
-
|
|
5938
|
-
/* This component's hooks style the element they are set on, and never a nested one. */
|
|
5939
|
-
@property --ui-grid-gap {
|
|
5940
|
-
syntax: "*";
|
|
5941
|
-
inherits: false;
|
|
5942
|
-
}
|
|
5943
|
-
@property --ui-grid-min {
|
|
5944
|
-
syntax: "*";
|
|
5945
|
-
inherits: false;
|
|
5946
|
-
}
|
|
5947
|
-
|
|
5948
|
-
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
5949
|
-
@scope (.ui-grid) {
|
|
5950
|
-
:scope:where([data-v-30a8e139]:scope) {
|
|
5951
|
-
--_grid-gap: var(--ui-space-4);
|
|
5952
|
-
--_grid-min: 12rem;
|
|
5953
|
-
display: grid;
|
|
5954
|
-
gap: var(--ui-grid-gap, var(--_grid-gap));
|
|
5955
|
-
grid-template-columns:
|
|
5956
|
-
repeat(
|
|
5957
|
-
auto-fit,
|
|
5958
|
-
minmax(
|
|
5959
|
-
min(
|
|
5960
|
-
max(
|
|
5961
|
-
var(--ui-grid-min, var(--_grid-min)),
|
|
5962
|
-
calc(
|
|
5963
|
-
(
|
|
5964
|
-
100% -
|
|
5965
|
-
(
|
|
5966
|
-
max(1, var(--_grid-column-cap, 9999)) - 1
|
|
5967
|
-
) *
|
|
5968
|
-
var(--ui-grid-gap, var(--_grid-gap))
|
|
5969
|
-
) /
|
|
5970
|
-
max(1, var(--_grid-column-cap, 9999))
|
|
5971
|
-
)
|
|
5972
|
-
),
|
|
5973
|
-
100%
|
|
5974
|
-
),
|
|
5975
|
-
1fr
|
|
5976
|
-
)
|
|
5977
|
-
);
|
|
5978
|
-
min-inline-size: 0;
|
|
5979
|
-
max-inline-size: 100%;
|
|
5980
|
-
margin: 0;
|
|
5981
|
-
}
|
|
5982
|
-
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="gap=xs"]) {
|
|
5983
|
-
--_grid-gap: var(--ui-space-2);
|
|
5984
|
-
}
|
|
5985
|
-
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="gap=s"]) {
|
|
5986
|
-
--_grid-gap: var(--ui-space-3);
|
|
5987
|
-
}
|
|
5988
|
-
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="gap=m"]) {
|
|
5989
|
-
--_grid-gap: var(--ui-space-4);
|
|
5990
|
-
}
|
|
5991
|
-
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="gap=l"]) {
|
|
5992
|
-
--_grid-gap: var(--ui-space-5);
|
|
5993
|
-
}
|
|
5994
|
-
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="gap=xl"]) {
|
|
5995
|
-
--_grid-gap: var(--ui-space-6);
|
|
5996
|
-
}
|
|
5997
|
-
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="min=md"]) {
|
|
5998
|
-
--_grid-min: 16rem;
|
|
5999
|
-
}
|
|
6000
|
-
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="min=lg"]) {
|
|
6001
|
-
--_grid-min: 20rem;
|
|
6002
|
-
}
|
|
6003
|
-
:scope:where([data-v-30a8e139]:scope):is([hidden]) {
|
|
6004
|
-
display: none;
|
|
6005
|
-
}
|
|
6006
|
-
}
|
|
6007
|
-
|
|
6008
|
-
@scope (.ui-image) {
|
|
6009
|
-
:scope:where([data-v-73881051]:scope) {
|
|
6010
|
-
display: flex;
|
|
6011
|
-
justify-content: flex-start;
|
|
6012
|
-
box-sizing: border-box;
|
|
6013
|
-
max-inline-size: 100%;
|
|
6014
|
-
min-inline-size: 0;
|
|
6015
|
-
margin: 0;
|
|
6016
|
-
padding: var(--ui-space-3) 0;
|
|
6017
|
-
}
|
|
6018
|
-
:scope:where([data-v-73881051]:scope):is([data-ui-image-state~="placement=center"]) {
|
|
6019
|
-
justify-content: center;
|
|
6020
|
-
}
|
|
6021
|
-
:scope:where([data-v-73881051]:scope):is([data-ui-image-state~="placement=wrap-left"]) {
|
|
6022
|
-
float: left;
|
|
6023
|
-
padding-inline-end: var(--ui-space-4);
|
|
6024
|
-
}
|
|
6025
|
-
:scope:where([data-v-73881051]:scope):is([data-ui-image-state~="placement=wrap-right"]) {
|
|
6026
|
-
float: right;
|
|
6027
|
-
padding-inline-start: var(--ui-space-4);
|
|
6028
|
-
}
|
|
6029
|
-
:scope:where([data-v-73881051]:scope):is(:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])) {
|
|
6030
|
-
inline-size: calc(var(--_ui-image-width, calc(100% / 3)) + var(--ui-space-4));
|
|
6031
|
-
}
|
|
6032
|
-
:scope:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])
|
|
6033
|
-
.frame[data-v-73881051] {
|
|
6034
|
-
inline-size: 100%;
|
|
6035
|
-
}
|
|
6036
|
-
:scope:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])
|
|
6037
|
-
.frame
|
|
6038
|
-
img[data-v-73881051],
|
|
6039
|
-
:scope:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])
|
|
6040
|
-
.frame
|
|
6041
|
-
img[data-v-73881051-s] {
|
|
6042
|
-
inline-size: 100%;
|
|
6043
|
-
}
|
|
6044
|
-
.frame[data-v-73881051] {
|
|
6045
|
-
position: relative;
|
|
6046
|
-
flex: 0 1 auto;
|
|
6047
|
-
inline-size: var(--_ui-image-width, fit-content);
|
|
6048
|
-
max-inline-size: 100%;
|
|
6049
|
-
min-inline-size: 0;
|
|
6050
|
-
align-self: flex-start;
|
|
6051
|
-
border-radius: var(--ui-radius-md);
|
|
6052
|
-
}
|
|
6053
|
-
.frame img[data-v-73881051], .frame img[data-v-73881051-s] {
|
|
6054
|
-
display: block;
|
|
6055
|
-
max-inline-size: 100%;
|
|
6056
|
-
block-size: auto;
|
|
6057
|
-
margin: 0;
|
|
6058
|
-
border-radius: inherit;
|
|
6059
|
-
}
|
|
6060
|
-
:scope[data-resizing] .frame img[data-v-73881051], :scope[data-resizing] .frame img[data-v-73881051-s] {
|
|
6061
|
-
inline-size: 100%;
|
|
6062
|
-
}
|
|
6063
|
-
:scope[data-ui-image-state~="selected"] .frame[data-v-73881051] {
|
|
6064
|
-
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
6065
|
-
outline-offset: var(--ui-border-width);
|
|
6066
|
-
}
|
|
6067
|
-
.handle[data-v-73881051] {
|
|
6068
|
-
position: absolute;
|
|
6069
|
-
z-index: 1;
|
|
6070
|
-
inline-size: 24px;
|
|
6071
|
-
block-size: 24px;
|
|
6072
|
-
padding: 0;
|
|
6073
|
-
border: 0;
|
|
6074
|
-
background: transparent;
|
|
6075
|
-
touch-action: none;
|
|
6076
|
-
}
|
|
6077
|
-
.handle[data-v-73881051]::after {
|
|
6078
|
-
content: "";
|
|
6079
|
-
position: absolute;
|
|
6080
|
-
inset: 8px;
|
|
6081
|
-
background: var(--ui-surface);
|
|
6082
|
-
border: var(--ui-border-width) solid var(--ui-focus-ring);
|
|
6083
|
-
border-radius: var(--ui-radius-sm);
|
|
6084
|
-
}
|
|
6085
|
-
.handle[data-v-73881051]:focus-visible {
|
|
6086
|
-
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
6087
|
-
border-radius: var(--ui-radius-sm);
|
|
6088
|
-
}
|
|
6089
|
-
.handle[data-corner="top-left"][data-v-73881051] {
|
|
6090
|
-
top: -12px;
|
|
6091
|
-
left: -12px;
|
|
6092
|
-
cursor: nwse-resize;
|
|
6093
|
-
}
|
|
6094
|
-
.handle[data-corner="top-right"][data-v-73881051] {
|
|
6095
|
-
top: -12px;
|
|
6096
|
-
right: -12px;
|
|
6097
|
-
cursor: nesw-resize;
|
|
6098
|
-
}
|
|
6099
|
-
.handle[data-corner="bottom-left"][data-v-73881051] {
|
|
6100
|
-
bottom: -12px;
|
|
6101
|
-
left: -12px;
|
|
6102
|
-
cursor: nesw-resize;
|
|
6103
|
-
}
|
|
6104
|
-
.handle[data-corner="bottom-right"][data-v-73881051] {
|
|
6105
|
-
bottom: -12px;
|
|
6106
|
-
right: -12px;
|
|
6107
|
-
cursor: nwse-resize;
|
|
6108
|
-
}
|
|
6109
|
-
.handles[hidden][data-v-73881051], :scope:where([data-v-73881051]:scope):is([hidden]) {
|
|
6110
|
-
display: none;
|
|
6111
|
-
}
|
|
6112
|
-
@media (max-width: 767px) {
|
|
6113
|
-
:scope:where([data-v-73881051]:scope):is(:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])) {
|
|
6114
|
-
float: none;
|
|
6115
|
-
inline-size: 100%;
|
|
6116
|
-
padding-inline: 0;
|
|
6117
|
-
}
|
|
6118
|
-
:scope:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])
|
|
6119
|
-
.handles[data-v-73881051] {
|
|
6120
|
-
display: none;
|
|
6121
|
-
}
|
|
6122
|
-
}
|
|
6123
|
-
@media (pointer: coarse) {
|
|
6124
|
-
.handle[data-v-73881051] {
|
|
6125
|
-
inline-size: 44px;
|
|
6126
|
-
block-size: 44px;
|
|
6127
|
-
}
|
|
6128
|
-
.handle[data-v-73881051]::after {
|
|
6129
|
-
inset: 18px;
|
|
6130
|
-
}
|
|
6131
|
-
.handle[data-corner="top-left"][data-v-73881051] {
|
|
6132
|
-
top: -22px;
|
|
6133
|
-
left: -22px;
|
|
6134
|
-
}
|
|
6135
|
-
.handle[data-corner="top-right"][data-v-73881051] {
|
|
6136
|
-
top: -22px;
|
|
6137
|
-
right: -22px;
|
|
6138
|
-
}
|
|
6139
|
-
.handle[data-corner="bottom-left"][data-v-73881051] {
|
|
6140
|
-
bottom: -22px;
|
|
6141
|
-
left: -22px;
|
|
6142
|
-
}
|
|
6143
|
-
.handle[data-corner="bottom-right"][data-v-73881051] {
|
|
6144
|
-
bottom: -22px;
|
|
6145
|
-
right: -22px;
|
|
6146
|
-
}
|
|
6233
|
+
flex-shrink: 0;
|
|
6147
6234
|
}
|
|
6148
|
-
@media (
|
|
6149
|
-
:scope[data-
|
|
6150
|
-
|
|
6235
|
+
@media (min-width: 768px) {
|
|
6236
|
+
:scope:where([data-v-3d55b8dc]:scope):is([data-ui-floating-action-button-state~="mobileOnly"]) {
|
|
6237
|
+
display: none;
|
|
6151
6238
|
}
|
|
6152
|
-
.handle[data-v-73881051]::after {
|
|
6153
|
-
border-color: Highlight;
|
|
6154
|
-
background: Canvas;
|
|
6155
6239
|
}
|
|
6240
|
+
:scope:where([data-v-3d55b8dc]:scope):is([hidden]) {
|
|
6241
|
+
display: none;
|
|
6156
6242
|
}
|
|
6157
6243
|
}
|
|
6158
6244
|
|
|
6159
|
-
|
|
6160
|
-
|
|
6161
|
-
inherits: false;
|
|
6162
|
-
}
|
|
6163
|
-
@property --ui-input-group-invalid-border {
|
|
6245
|
+
/* This component's hooks style the element they are set on, and never a nested one. */
|
|
6246
|
+
@property --ui-grid-gap {
|
|
6164
6247
|
syntax: "*";
|
|
6165
6248
|
inherits: false;
|
|
6166
6249
|
}
|
|
6167
|
-
@property --ui-
|
|
6250
|
+
@property --ui-grid-min {
|
|
6168
6251
|
syntax: "*";
|
|
6169
6252
|
inherits: false;
|
|
6170
6253
|
}
|
|
6171
|
-
/* An input with fixed text before or after it, such as a domain after a site's name
|
|
6172
|
-
("acme" + ".example.com") or slashes around a path. The group draws the field's border and
|
|
6173
|
-
focus ring around the input and its affixes together; the input inside drops its own through
|
|
6174
|
-
its custom properties, so it is still the one ui-input, with its form behaviour intact. The
|
|
6175
|
-
affixes are plain text beside the input, so name the input with a label that says what the
|
|
6176
|
-
whole value is. The action slot takes one button at the end, inside the border, for the one
|
|
6177
|
-
thing the field is for ("Continue" after a site's address), so it reads as the field's action
|
|
6178
|
-
and not the form's. */
|
|
6179
|
-
|
|
6180
|
-
/* The frame takes its input's size, so a small group lines up with small buttons and fields. */
|
|
6181
|
-
|
|
6182
|
-
/* The ring shows when the field's input would show its own: when it is focus-visible, which a
|
|
6183
|
-
text input is for a pointer as well as a keyboard. A focused action button draws its own. */
|
|
6184
|
-
|
|
6185
|
-
/* Forced colors drop box shadows, so the focus ring becomes an outline. */
|
|
6186
|
-
|
|
6187
|
-
/* Fixed text is part of the value, but should not look editable. */
|
|
6188
|
-
|
|
6189
|
-
/* Centred rather than padded above and below: the group is exactly a lone Input's height, so a
|
|
6190
|
-
small button sits inside it with the difference split evenly, and the field keeps its height. */
|
|
6191
|
-
|
|
6192
|
-
/* Multiline text owns the first row; its action remains inside the same frame below it. */
|
|
6193
|
-
|
|
6194
|
-
/* The same textarea keeps its full resizeable box. Its text reserves the action's live width,
|
|
6195
|
-
so a translated label or pending indicator cannot cover what the person types. */
|
|
6196
6254
|
|
|
6197
6255
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
6198
|
-
@scope (.ui-
|
|
6199
|
-
:scope:where([data-v-
|
|
6200
|
-
|
|
6201
|
-
|
|
6202
|
-
|
|
6203
|
-
--
|
|
6204
|
-
|
|
6205
|
-
|
|
6206
|
-
|
|
6207
|
-
|
|
6208
|
-
|
|
6209
|
-
|
|
6210
|
-
|
|
6211
|
-
|
|
6212
|
-
|
|
6213
|
-
|
|
6214
|
-
|
|
6215
|
-
|
|
6216
|
-
|
|
6217
|
-
|
|
6218
|
-
|
|
6219
|
-
|
|
6220
|
-
|
|
6221
|
-
|
|
6222
|
-
|
|
6223
|
-
|
|
6224
|
-
|
|
6225
|
-
|
|
6226
|
-
|
|
6227
|
-
align-items: stretch;
|
|
6228
|
-
box-sizing: border-box;
|
|
6229
|
-
inline-size: 100%;
|
|
6256
|
+
@scope (.ui-grid) {
|
|
6257
|
+
:scope:where([data-v-30a8e139]:scope) {
|
|
6258
|
+
--_grid-gap: var(--ui-space-4);
|
|
6259
|
+
--_grid-min: 12rem;
|
|
6260
|
+
display: grid;
|
|
6261
|
+
gap: var(--ui-grid-gap, var(--_grid-gap));
|
|
6262
|
+
grid-template-columns:
|
|
6263
|
+
repeat(
|
|
6264
|
+
auto-fit,
|
|
6265
|
+
minmax(
|
|
6266
|
+
min(
|
|
6267
|
+
max(
|
|
6268
|
+
var(--ui-grid-min, var(--_grid-min)),
|
|
6269
|
+
calc(
|
|
6270
|
+
(
|
|
6271
|
+
100% -
|
|
6272
|
+
(
|
|
6273
|
+
max(1, var(--_grid-column-cap, 9999)) - 1
|
|
6274
|
+
) *
|
|
6275
|
+
var(--ui-grid-gap, var(--_grid-gap))
|
|
6276
|
+
) /
|
|
6277
|
+
max(1, var(--_grid-column-cap, 9999))
|
|
6278
|
+
)
|
|
6279
|
+
),
|
|
6280
|
+
100%
|
|
6281
|
+
),
|
|
6282
|
+
1fr
|
|
6283
|
+
)
|
|
6284
|
+
);
|
|
6230
6285
|
min-inline-size: 0;
|
|
6231
|
-
|
|
6232
|
-
|
|
6233
|
-
border: var(--ui-border-width) solid var(--ui-control-border, var(--ui-border-strong));
|
|
6234
|
-
border-radius: var(--ui-input-group-radius, var(--ui-field-radius, var(--ui-radius-md)));
|
|
6235
|
-
background: var(--ui-control-surface, var(--ui-surface-elevated));
|
|
6236
|
-
box-shadow: var(--ui-control-inset);
|
|
6237
|
-
overflow: hidden;
|
|
6238
|
-
/* A press anywhere in the frame focuses the input. */
|
|
6239
|
-
cursor: text;
|
|
6240
|
-
transition:
|
|
6241
|
-
border-color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
6242
|
-
box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
|
|
6286
|
+
max-inline-size: 100%;
|
|
6287
|
+
margin: 0;
|
|
6243
6288
|
}
|
|
6244
|
-
:scope:where([data-v-
|
|
6245
|
-
|
|
6246
|
-
background: var(--ui-surface-muted);
|
|
6247
|
-
box-shadow: none;
|
|
6289
|
+
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="gap=xs"]) {
|
|
6290
|
+
--_grid-gap: var(--ui-space-2);
|
|
6248
6291
|
}
|
|
6249
|
-
:scope:where([data-v-
|
|
6250
|
-
|
|
6292
|
+
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="gap=s"]) {
|
|
6293
|
+
--_grid-gap: var(--ui-space-3);
|
|
6251
6294
|
}
|
|
6252
|
-
:scope:where([data-v-
|
|
6253
|
-
|
|
6295
|
+
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="gap=m"]) {
|
|
6296
|
+
--_grid-gap: var(--ui-space-4);
|
|
6254
6297
|
}
|
|
6255
|
-
|
|
6256
|
-
:
|
|
6257
|
-
min-block-size: max(var(--ui-control-size-md), var(--ui-control-min-block-size));
|
|
6298
|
+
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="gap=l"]) {
|
|
6299
|
+
--_grid-gap: var(--ui-space-5);
|
|
6258
6300
|
}
|
|
6259
|
-
:scope:where([data-v-
|
|
6260
|
-
|
|
6301
|
+
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="gap=xl"]) {
|
|
6302
|
+
--_grid-gap: var(--ui-space-6);
|
|
6261
6303
|
}
|
|
6304
|
+
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="min=md"]) {
|
|
6305
|
+
--_grid-min: 16rem;
|
|
6262
6306
|
}
|
|
6263
|
-
:scope:where([data-v-
|
|
6264
|
-
|
|
6307
|
+
:scope:where([data-v-30a8e139]:scope):is([data-ui-grid-state~="min=lg"]) {
|
|
6308
|
+
--_grid-min: 20rem;
|
|
6265
6309
|
}
|
|
6266
|
-
:scope:where([data-v-
|
|
6267
|
-
|
|
6268
|
-
box-shadow:
|
|
6269
|
-
var(--ui-control-inset),
|
|
6270
|
-
var(--ui-control-focus-halo-shadow);
|
|
6310
|
+
:scope:where([data-v-30a8e139]:scope):is([hidden]) {
|
|
6311
|
+
display: none;
|
|
6271
6312
|
}
|
|
6272
|
-
:scope:where([data-v-8b90cc23]:scope):is(:has([aria-invalid="true"], :is(:user-invalid, [data-user-invalid]))) {
|
|
6273
|
-
border-color: var(
|
|
6274
|
-
--ui-input-group-invalid-border,
|
|
6275
|
-
var(--ui-field-danger, var(--ui-danger-solid))
|
|
6276
|
-
);
|
|
6277
6313
|
}
|
|
6278
|
-
|
|
6279
|
-
|
|
6280
|
-
|
|
6281
|
-
|
|
6282
|
-
|
|
6283
|
-
|
|
6284
|
-
|
|
6285
|
-
|
|
6286
|
-
|
|
6287
|
-
);
|
|
6314
|
+
|
|
6315
|
+
@scope (.ui-image) {
|
|
6316
|
+
:scope:where([data-v-73881051]:scope) {
|
|
6317
|
+
display: flex;
|
|
6318
|
+
justify-content: flex-start;
|
|
6319
|
+
box-sizing: border-box;
|
|
6320
|
+
max-inline-size: 100%;
|
|
6321
|
+
min-inline-size: 0;
|
|
6322
|
+
margin: 0;
|
|
6323
|
+
padding: var(--ui-space-3) 0;
|
|
6288
6324
|
}
|
|
6289
|
-
|
|
6290
|
-
|
|
6291
|
-
outline: var(--ui-focus-width) solid Highlight;
|
|
6292
|
-
outline-offset: var(--ui-border-width);
|
|
6325
|
+
:scope:where([data-v-73881051]:scope):is([data-ui-image-state~="placement=center"]) {
|
|
6326
|
+
justify-content: center;
|
|
6293
6327
|
}
|
|
6328
|
+
:scope:where([data-v-73881051]:scope):is([data-ui-image-state~="placement=wrap-left"]) {
|
|
6329
|
+
float: left;
|
|
6330
|
+
padding-inline-end: var(--ui-space-4);
|
|
6294
6331
|
}
|
|
6295
|
-
:scope:where([data-v-
|
|
6296
|
-
|
|
6297
|
-
|
|
6298
|
-
box-shadow: none;
|
|
6299
|
-
cursor: not-allowed;
|
|
6332
|
+
:scope:where([data-v-73881051]:scope):is([data-ui-image-state~="placement=wrap-right"]) {
|
|
6333
|
+
float: right;
|
|
6334
|
+
padding-inline-start: var(--ui-space-4);
|
|
6300
6335
|
}
|
|
6301
|
-
|
|
6302
|
-
|
|
6303
|
-
flex: 1;
|
|
6304
|
-
min-inline-size: 0;
|
|
6336
|
+
:scope:where([data-v-73881051]:scope):is(:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])) {
|
|
6337
|
+
inline-size: calc(var(--_ui-image-width, calc(100% / 3)) + var(--ui-space-4));
|
|
6305
6338
|
}
|
|
6306
|
-
|
|
6307
|
-
|
|
6308
|
-
|
|
6309
|
-
align-items: center;
|
|
6310
|
-
padding-inline: var(--ui-space-2);
|
|
6311
|
-
color: var(--ui-text-muted);
|
|
6312
|
-
font-family: var(--ui-font-family-mono);
|
|
6313
|
-
font-size: var(--ui-font-size-sm);
|
|
6314
|
-
white-space: nowrap;
|
|
6339
|
+
:scope:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])
|
|
6340
|
+
.frame[data-v-73881051] {
|
|
6341
|
+
inline-size: 100%;
|
|
6315
6342
|
}
|
|
6316
|
-
|
|
6317
|
-
|
|
6343
|
+
:scope:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])
|
|
6344
|
+
.frame
|
|
6345
|
+
img[data-v-73881051],
|
|
6346
|
+
:scope:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])
|
|
6347
|
+
.frame
|
|
6348
|
+
img[data-v-73881051-s] {
|
|
6349
|
+
inline-size: 100%;
|
|
6318
6350
|
}
|
|
6319
|
-
.
|
|
6320
|
-
|
|
6351
|
+
.frame[data-v-73881051] {
|
|
6352
|
+
position: relative;
|
|
6353
|
+
flex: 0 1 auto;
|
|
6354
|
+
inline-size: var(--_ui-image-width, fit-content);
|
|
6355
|
+
max-inline-size: 100%;
|
|
6356
|
+
min-inline-size: 0;
|
|
6357
|
+
align-self: flex-start;
|
|
6358
|
+
border-radius: var(--ui-radius-md);
|
|
6321
6359
|
}
|
|
6322
|
-
.
|
|
6323
|
-
|
|
6360
|
+
.frame img[data-v-73881051], .frame img[data-v-73881051-s] {
|
|
6361
|
+
display: block;
|
|
6362
|
+
max-inline-size: 100%;
|
|
6363
|
+
block-size: auto;
|
|
6364
|
+
margin: 0;
|
|
6365
|
+
border-radius: inherit;
|
|
6324
6366
|
}
|
|
6325
|
-
:scope
|
|
6326
|
-
|
|
6367
|
+
:scope[data-resizing] .frame img[data-v-73881051], :scope[data-resizing] .frame img[data-v-73881051-s] {
|
|
6368
|
+
inline-size: 100%;
|
|
6327
6369
|
}
|
|
6328
|
-
:scope[data-ui-
|
|
6329
|
-
|
|
6330
|
-
|
|
6370
|
+
:scope[data-ui-image-state~="selected"] .frame[data-v-73881051] {
|
|
6371
|
+
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
6372
|
+
outline-offset: var(--ui-border-width);
|
|
6373
|
+
}
|
|
6374
|
+
.handle[data-v-73881051] {
|
|
6375
|
+
position: absolute;
|
|
6376
|
+
z-index: 1;
|
|
6377
|
+
inline-size: 24px;
|
|
6378
|
+
block-size: 24px;
|
|
6379
|
+
padding: 0;
|
|
6380
|
+
border: 0;
|
|
6331
6381
|
background: transparent;
|
|
6382
|
+
touch-action: none;
|
|
6332
6383
|
}
|
|
6333
|
-
.
|
|
6334
|
-
|
|
6335
|
-
|
|
6336
|
-
|
|
6337
|
-
|
|
6338
|
-
|
|
6339
|
-
|
|
6340
|
-
display: grid;
|
|
6341
|
-
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
6384
|
+
.handle[data-v-73881051]::after {
|
|
6385
|
+
content: "";
|
|
6386
|
+
position: absolute;
|
|
6387
|
+
inset: 8px;
|
|
6388
|
+
background: var(--ui-surface);
|
|
6389
|
+
border: var(--ui-border-width) solid var(--ui-focus-ring);
|
|
6390
|
+
border-radius: var(--ui-radius-sm);
|
|
6342
6391
|
}
|
|
6343
|
-
|
|
6344
|
-
|
|
6392
|
+
.handle[data-v-73881051]:focus-visible {
|
|
6393
|
+
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
6394
|
+
border-radius: var(--ui-radius-sm);
|
|
6345
6395
|
}
|
|
6346
|
-
|
|
6347
|
-
|
|
6348
|
-
|
|
6349
|
-
|
|
6350
|
-
padding-block-start: 0;
|
|
6396
|
+
.handle[data-corner="top-left"][data-v-73881051] {
|
|
6397
|
+
top: -12px;
|
|
6398
|
+
left: -12px;
|
|
6399
|
+
cursor: nwse-resize;
|
|
6351
6400
|
}
|
|
6352
|
-
|
|
6353
|
-
|
|
6354
|
-
|
|
6355
|
-
|
|
6401
|
+
.handle[data-corner="top-right"][data-v-73881051] {
|
|
6402
|
+
top: -12px;
|
|
6403
|
+
right: -12px;
|
|
6404
|
+
cursor: nesw-resize;
|
|
6356
6405
|
}
|
|
6357
|
-
|
|
6358
|
-
|
|
6359
|
-
|
|
6406
|
+
.handle[data-corner="bottom-left"][data-v-73881051] {
|
|
6407
|
+
bottom: -12px;
|
|
6408
|
+
left: -12px;
|
|
6409
|
+
cursor: nesw-resize;
|
|
6360
6410
|
}
|
|
6361
|
-
|
|
6362
|
-
|
|
6363
|
-
|
|
6364
|
-
|
|
6365
|
-
align-self: start;
|
|
6366
|
-
justify-self: end;
|
|
6367
|
-
padding: var(--ui-space-2);
|
|
6411
|
+
.handle[data-corner="bottom-right"][data-v-73881051] {
|
|
6412
|
+
bottom: -12px;
|
|
6413
|
+
right: -12px;
|
|
6414
|
+
cursor: nwse-resize;
|
|
6368
6415
|
}
|
|
6369
|
-
.
|
|
6416
|
+
.handles[hidden][data-v-73881051], :scope:where([data-v-73881051]:scope):is([hidden]) {
|
|
6370
6417
|
display: none;
|
|
6371
6418
|
}
|
|
6372
|
-
|
|
6373
|
-
|
|
6419
|
+
@media (max-width: 767px) {
|
|
6420
|
+
:scope:where([data-v-73881051]:scope):is(:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])) {
|
|
6421
|
+
float: none;
|
|
6422
|
+
inline-size: 100%;
|
|
6423
|
+
padding-inline: 0;
|
|
6374
6424
|
}
|
|
6425
|
+
:scope:is(:scope[data-ui-image-state~="placement=wrap-left"], :scope[data-ui-image-state~="placement=wrap-right"])
|
|
6426
|
+
.handles[data-v-73881051] {
|
|
6427
|
+
display: none;
|
|
6375
6428
|
}
|
|
6376
|
-
|
|
6377
|
-
/* This component's hooks style the element they are set on, and never a nested one. */
|
|
6378
|
-
@property --ui-list-gap {
|
|
6379
|
-
syntax: "*";
|
|
6380
|
-
inherits: false;
|
|
6381
6429
|
}
|
|
6382
|
-
@
|
|
6383
|
-
|
|
6384
|
-
|
|
6430
|
+
@media (pointer: coarse) {
|
|
6431
|
+
.handle[data-v-73881051] {
|
|
6432
|
+
inline-size: 44px;
|
|
6433
|
+
block-size: 44px;
|
|
6385
6434
|
}
|
|
6386
|
-
|
|
6387
|
-
|
|
6388
|
-
explicit list role keeps the list announced as one: some browsers drop it from a list with no
|
|
6389
|
-
markers. */
|
|
6390
|
-
|
|
6391
|
-
/* Compact passes its size to the items through private properties, which cross into each item. */
|
|
6392
|
-
|
|
6393
|
-
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
6394
|
-
@scope (.ui-list) {
|
|
6395
|
-
:scope:where([data-v-4ed3243c]:scope) {
|
|
6396
|
-
--_list-gap: var(--ui-list-gap, var(--ui-space-1));
|
|
6397
|
-
--_list-min-item-width: var(--ui-list-min-item-width, 14rem);
|
|
6398
|
-
display: flex;
|
|
6399
|
-
flex-direction: column;
|
|
6400
|
-
inline-size: 100%;
|
|
6401
|
-
gap: var(--_list-gap);
|
|
6402
|
-
min-inline-size: 0;
|
|
6403
|
-
margin: 0;
|
|
6404
|
-
padding: 0;
|
|
6405
|
-
list-style: none;
|
|
6435
|
+
.handle[data-v-73881051]::after {
|
|
6436
|
+
inset: 18px;
|
|
6406
6437
|
}
|
|
6407
|
-
|
|
6408
|
-
|
|
6409
|
-
|
|
6438
|
+
.handle[data-corner="top-left"][data-v-73881051] {
|
|
6439
|
+
top: -22px;
|
|
6440
|
+
left: -22px;
|
|
6410
6441
|
}
|
|
6411
|
-
|
|
6412
|
-
|
|
6442
|
+
.handle[data-corner="top-right"][data-v-73881051] {
|
|
6443
|
+
top: -22px;
|
|
6444
|
+
right: -22px;
|
|
6413
6445
|
}
|
|
6414
|
-
|
|
6415
|
-
|
|
6446
|
+
.handle[data-corner="bottom-left"][data-v-73881051] {
|
|
6447
|
+
bottom: -22px;
|
|
6448
|
+
left: -22px;
|
|
6416
6449
|
}
|
|
6417
|
-
|
|
6418
|
-
|
|
6419
|
-
|
|
6420
|
-
padding: var(--_ui-list-native-padding-block, var(--ui-space-2))
|
|
6421
|
-
var(--_ui-list-native-padding-inline, var(--ui-space-3));
|
|
6422
|
-
border-radius: var(--ui-radius-md);
|
|
6423
|
-
color: var(--ui-text-primary);
|
|
6424
|
-
list-style: inherit;
|
|
6450
|
+
.handle[data-corner="bottom-right"][data-v-73881051] {
|
|
6451
|
+
bottom: -22px;
|
|
6452
|
+
right: -22px;
|
|
6425
6453
|
}
|
|
6426
|
-
:scope > li.card[data-v-4ed3243c-s] {
|
|
6427
|
-
padding: var(--_ui-list-native-padding-block, var(--ui-space-3))
|
|
6428
|
-
var(--_ui-list-native-padding-inline, var(--ui-space-4));
|
|
6429
|
-
border: var(--ui-border-width) solid var(--ui-border-strong);
|
|
6430
|
-
border-radius: var(--ui-radius-lg);
|
|
6431
|
-
background: var(--ui-surface-raised);
|
|
6432
|
-
list-style: none;
|
|
6433
6454
|
}
|
|
6434
|
-
|
|
6435
|
-
|
|
6436
|
-
|
|
6437
|
-
--_ui-list-item-padding-block: 0;
|
|
6438
|
-
--_ui-list-item-padding-inline: 0;
|
|
6439
|
-
--_ui-list-item-title-weight: var(--ui-font-normal);
|
|
6440
|
-
--_ui-list-native-padding-block: 0;
|
|
6441
|
-
--_ui-list-native-padding-inline: 0;
|
|
6455
|
+
@media (forced-colors: active) {
|
|
6456
|
+
:scope[data-ui-image-state~="selected"] .frame[data-v-73881051], .handle[data-v-73881051]:focus-visible {
|
|
6457
|
+
outline-color: Highlight;
|
|
6442
6458
|
}
|
|
6443
|
-
|
|
6444
|
-
|
|
6445
|
-
|
|
6446
|
-
grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--_list-min-item-width)), 1fr));
|
|
6459
|
+
.handle[data-v-73881051]::after {
|
|
6460
|
+
border-color: Highlight;
|
|
6461
|
+
background: Canvas;
|
|
6447
6462
|
}
|
|
6448
|
-
:scope:where([data-v-4ed3243c]:scope):is([hidden]) {
|
|
6449
|
-
display: none;
|
|
6450
6463
|
}
|
|
6451
6464
|
}
|
|
6452
6465
|
|
|
6453
|
-
|
|
6454
|
-
@property --ui-list-item-gap {
|
|
6455
|
-
syntax: "*";
|
|
6456
|
-
inherits: false;
|
|
6457
|
-
}
|
|
6458
|
-
@property --ui-list-item-icon-size {
|
|
6466
|
+
@property --ui-input-group-radius {
|
|
6459
6467
|
syntax: "*";
|
|
6460
6468
|
inherits: false;
|
|
6461
6469
|
}
|
|
6462
|
-
@property --ui-
|
|
6470
|
+
@property --ui-input-group-invalid-border {
|
|
6463
6471
|
syntax: "*";
|
|
6464
6472
|
inherits: false;
|
|
6465
6473
|
}
|
|
6466
|
-
@property --ui-
|
|
6474
|
+
@property --ui-input-group-invalid-focus-shadow {
|
|
6467
6475
|
syntax: "*";
|
|
6468
6476
|
inherits: false;
|
|
6469
6477
|
}
|
|
6478
|
+
/* An input with fixed text before or after it, such as a domain after a site's name
|
|
6479
|
+
("acme" + ".example.com") or slashes around a path. The group draws the field's border and
|
|
6480
|
+
focus ring around the input and its affixes together; the input inside drops its own through
|
|
6481
|
+
its custom properties, so it is still the one ui-input, with its form behaviour intact. The
|
|
6482
|
+
affixes are plain text beside the input, so name the input with a label that says what the
|
|
6483
|
+
whole value is. The action slot takes one button at the end, inside the border, for the one
|
|
6484
|
+
thing the field is for ("Continue" after a site's address), so it reads as the field's action
|
|
6485
|
+
and not the form's. */
|
|
6470
6486
|
|
|
6471
|
-
/*
|
|
6472
|
-
slot), one line about it (description), and what it offers (trailing, such as a button or a
|
|
6473
|
-
badge). The title and description are one line each and end in an ellipsis, so every item in a
|
|
6474
|
-
list has the same height.
|
|
6487
|
+
/* The frame takes its input's size, so a small group lines up with small buttons and fields. */
|
|
6475
6488
|
|
|
6476
|
-
|
|
6477
|
-
|
|
6478
|
-
a router, a modified click, and "open in new tab" all work. Trailing controls sit above it and
|
|
6479
|
-
stay their own. */
|
|
6489
|
+
/* The ring shows when the field's input would show its own: when it is focus-visible, which a
|
|
6490
|
+
text input is for a pointer as well as a keyboard. A focused action button draws its own. */
|
|
6480
6491
|
|
|
6481
|
-
/*
|
|
6492
|
+
/* Forced colors drop box shadows, so the focus ring becomes an outline. */
|
|
6482
6493
|
|
|
6483
|
-
/*
|
|
6494
|
+
/* Fixed text is part of the value, but should not look editable. */
|
|
6484
6495
|
|
|
6485
|
-
/*
|
|
6496
|
+
/* Centred rather than padded above and below: the group is exactly a lone Input's height, so a
|
|
6497
|
+
small button sits inside it with the difference split evenly, and the field keeps its height. */
|
|
6486
6498
|
|
|
6487
|
-
/*
|
|
6499
|
+
/* Multiline text owns the first row; its action remains inside the same frame below it. */
|
|
6488
6500
|
|
|
6489
|
-
/*
|
|
6501
|
+
/* The same textarea keeps its full resizeable box. Its text reserves the action's live width,
|
|
6502
|
+
so a translated label or pending indicator cannot cover what the person types. */
|
|
6490
6503
|
|
|
6491
6504
|
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
6492
|
-
@scope (.ui-
|
|
6493
|
-
:scope:where([data-v-
|
|
6494
|
-
/*
|
|
6495
|
-
|
|
6505
|
+
@scope (.ui-input-group) {
|
|
6506
|
+
:scope:where([data-v-8b90cc23]:scope) {
|
|
6507
|
+
/* The group's own border and height stand for the input's, so the group is a lone Input's height.
|
|
6508
|
+
Hooks do not inherit, so these are defaults for the input; its own hooks still win. */
|
|
6509
|
+
--_ui-default-input-border-width: 0;
|
|
6510
|
+
--_ui-default-input-min-block-size: 0;
|
|
6511
|
+
--_ui-default-input-border: transparent;
|
|
6512
|
+
--_ui-default-input-border-hover: transparent;
|
|
6513
|
+
--_ui-default-input-focus-border: transparent;
|
|
6514
|
+
--_ui-default-input-invalid-border: transparent;
|
|
6515
|
+
--_ui-default-input-invalid-focus-shadow: none;
|
|
6516
|
+
--_ui-default-input-shadow: none;
|
|
6517
|
+
--_ui-default-input-focus-shadow: none;
|
|
6518
|
+
--_ui-default-input-focus-outline: none;
|
|
6519
|
+
--_ui-default-input-radius: 0;
|
|
6520
|
+
--_ui-default-input-surface: transparent;
|
|
6521
|
+
--_ui-default-textarea-border-width: 0;
|
|
6522
|
+
--_ui-default-textarea-border: transparent;
|
|
6523
|
+
--_ui-default-textarea-border-hover: transparent;
|
|
6524
|
+
--_ui-default-textarea-focus-border: transparent;
|
|
6525
|
+
--_ui-default-textarea-invalid-border: transparent;
|
|
6526
|
+
--_ui-default-textarea-invalid-focus-shadow: none;
|
|
6527
|
+
--_ui-default-textarea-shadow: none;
|
|
6528
|
+
--_ui-default-textarea-focus-shadow: none;
|
|
6529
|
+
--_ui-default-textarea-focus-outline: none;
|
|
6530
|
+
--_ui-default-textarea-radius: 0;
|
|
6531
|
+
--_ui-default-textarea-surface: transparent;
|
|
6496
6532
|
|
|
6497
|
-
position: relative;
|
|
6498
|
-
box-sizing: border-box;
|
|
6499
6533
|
display: flex;
|
|
6500
|
-
align-items:
|
|
6501
|
-
|
|
6534
|
+
align-items: stretch;
|
|
6535
|
+
box-sizing: border-box;
|
|
6536
|
+
inline-size: 100%;
|
|
6502
6537
|
min-inline-size: 0;
|
|
6503
|
-
min-block-size: var(--
|
|
6504
|
-
|
|
6505
|
-
|
|
6506
|
-
|
|
6507
|
-
);
|
|
6508
|
-
|
|
6509
|
-
|
|
6510
|
-
|
|
6511
|
-
|
|
6512
|
-
border-radius: var(--ui-selection-radius);
|
|
6513
|
-
color: var(--ui-text-primary);
|
|
6538
|
+
min-block-size: var(--ui-control-size-md);
|
|
6539
|
+
/* The frame reads the shared control tokens with a lone Input's fallbacks, so the two match. */
|
|
6540
|
+
border: var(--ui-border-width) solid var(--ui-control-border, var(--ui-border-strong));
|
|
6541
|
+
border-radius: var(--ui-input-group-radius, var(--ui-field-radius, var(--ui-radius-md)));
|
|
6542
|
+
background: var(--ui-control-surface, var(--ui-surface-elevated));
|
|
6543
|
+
box-shadow: var(--ui-control-inset);
|
|
6544
|
+
overflow: hidden;
|
|
6545
|
+
/* A press anywhere in the frame focuses the input. */
|
|
6546
|
+
cursor: text;
|
|
6514
6547
|
transition:
|
|
6515
|
-
|
|
6516
|
-
|
|
6548
|
+
border-color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
6549
|
+
box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
|
|
6517
6550
|
}
|
|
6518
|
-
:scope:where([data-v-
|
|
6519
|
-
|
|
6520
|
-
|
|
6521
|
-
|
|
6522
|
-
border-radius: var(--ui-radius-lg);
|
|
6523
|
-
background: var(--ui-surface-raised);
|
|
6551
|
+
:scope:where([data-v-8b90cc23]:scope):is([data-ui-input-group-state~="variant=subtle"]) {
|
|
6552
|
+
border-color: var(--ui-border);
|
|
6553
|
+
background: var(--ui-surface-muted);
|
|
6554
|
+
box-shadow: none;
|
|
6524
6555
|
}
|
|
6525
|
-
:scope:where([data-v-
|
|
6526
|
-
|
|
6527
|
-
:scope:where([data-v-8c851f73]:scope):is([data-ui-list-item-state~="current"]) {
|
|
6528
|
-
background: var(--_ui-selection-context-surface, var(--ui-selection-surface));
|
|
6529
|
-
box-shadow: inset 0 0 0 var(--ui-border-width)
|
|
6530
|
-
var(--_ui-selection-context-border, var(--ui-selection-border));
|
|
6556
|
+
:scope:where([data-v-8b90cc23]:scope):is(:has(.field [data-ui-input-state~="size=sm"])) {
|
|
6557
|
+
min-block-size: var(--ui-control-size-sm);
|
|
6531
6558
|
}
|
|
6532
|
-
:scope:where([data-v-
|
|
6533
|
-
|
|
6534
|
-
border-color: var(--ui-border-strong);
|
|
6559
|
+
:scope:where([data-v-8b90cc23]:scope):is(:has(.field [data-ui-input-state~="size=lg"])) {
|
|
6560
|
+
min-block-size: var(--ui-control-size-lg);
|
|
6535
6561
|
}
|
|
6536
|
-
|
|
6537
|
-
|
|
6562
|
+
@media (pointer: coarse) {
|
|
6563
|
+
:scope:where([data-v-8b90cc23]:scope) {
|
|
6564
|
+
min-block-size: max(var(--ui-control-size-md), var(--ui-control-min-block-size));
|
|
6538
6565
|
}
|
|
6539
|
-
:scope:where([data-v-
|
|
6540
|
-
|
|
6566
|
+
:scope:where([data-v-8b90cc23]:scope):is(:has(.field [data-ui-input-state~="size=sm"])) {
|
|
6567
|
+
min-block-size: var(--ui-control-min-block-size);
|
|
6541
6568
|
}
|
|
6542
|
-
:scope:where([data-v-8c851f73]:scope):is(:has(.title a[href]:focus-visible)) {
|
|
6543
|
-
box-shadow: 0 0 0 var(--ui-focus-width) var(--ui-focus-ring);
|
|
6544
6569
|
}
|
|
6545
|
-
|
|
6546
|
-
|
|
6547
|
-
flex: none;
|
|
6548
|
-
align-items: center;
|
|
6549
|
-
gap: var(--ui-space-2);
|
|
6570
|
+
:scope:where([data-v-8b90cc23]:scope):is(:hover:not(:has(:is(input, textarea):focus, :is(input, textarea):disabled, :is(input, textarea):read-only, [aria-invalid="true"], :is(:user-invalid, [data-user-invalid])))) {
|
|
6571
|
+
border-color: var(--ui-control-border-hover, var(--ui-text-secondary));
|
|
6550
6572
|
}
|
|
6551
|
-
|
|
6552
|
-
color: var(--ui-
|
|
6553
|
-
|
|
6573
|
+
:scope:where([data-v-8b90cc23]:scope):is(:has(.field :is(input, textarea):focus-visible)) {
|
|
6574
|
+
border-color: var(--ui-control-focus, var(--ui-accent-solid));
|
|
6575
|
+
box-shadow:
|
|
6576
|
+
var(--ui-control-inset),
|
|
6577
|
+
var(--ui-control-focus-halo-shadow);
|
|
6554
6578
|
}
|
|
6555
|
-
:scope[data-
|
|
6556
|
-
color: var(
|
|
6579
|
+
:scope:where([data-v-8b90cc23]:scope):is(:has([aria-invalid="true"], :is(:user-invalid, [data-user-invalid]))) {
|
|
6580
|
+
border-color: var(
|
|
6581
|
+
--ui-input-group-invalid-border,
|
|
6582
|
+
var(--ui-field-danger, var(--ui-danger-solid))
|
|
6583
|
+
);
|
|
6557
6584
|
}
|
|
6558
|
-
:scope[data-
|
|
6559
|
-
|
|
6560
|
-
|
|
6585
|
+
:scope:where([data-v-8b90cc23]:scope):is(:has(:is(input, textarea):is([aria-invalid="true"], :is(:user-invalid, [data-user-invalid])):focus-visible)) {
|
|
6586
|
+
box-shadow: var(
|
|
6587
|
+
--ui-input-group-invalid-focus-shadow,
|
|
6588
|
+
var(--ui-control-inset),
|
|
6589
|
+
0 0 0 calc(var(--ui-focus-width) * 1.5) color-mix(
|
|
6590
|
+
in srgb,
|
|
6591
|
+
var(--ui-input-group-invalid-border, var(--ui-field-danger, var(--ui-danger-solid))) 22%,
|
|
6592
|
+
transparent
|
|
6593
|
+
)
|
|
6594
|
+
);
|
|
6561
6595
|
}
|
|
6562
|
-
|
|
6563
|
-
|
|
6564
|
-
|
|
6565
|
-
|
|
6566
|
-
font-size: var(--ui-font-size-sm);
|
|
6596
|
+
@media (forced-colors: active) {
|
|
6597
|
+
:scope:where([data-v-8b90cc23]:scope):is(:has(:is(input, textarea):focus-visible)) {
|
|
6598
|
+
outline: var(--ui-focus-width) solid Highlight;
|
|
6599
|
+
outline-offset: var(--ui-border-width);
|
|
6567
6600
|
}
|
|
6568
|
-
|
|
6601
|
+
}
|
|
6602
|
+
:scope:where([data-v-8b90cc23]:scope):is([data-ui-input-group-state~="disabled"]),
|
|
6603
|
+
:scope:where([data-v-8b90cc23]:scope):is(:has(:is(input, textarea):disabled)) {
|
|
6604
|
+
background: var(--ui-control-surface-disabled, var(--ui-surface-muted));
|
|
6605
|
+
box-shadow: none;
|
|
6606
|
+
cursor: not-allowed;
|
|
6607
|
+
}
|
|
6608
|
+
.field[data-v-8b90cc23] {
|
|
6569
6609
|
display: flex;
|
|
6570
6610
|
flex: 1;
|
|
6571
|
-
flex-direction: column;
|
|
6572
|
-
gap: var(--ui-space-0-5, 2px);
|
|
6573
6611
|
min-inline-size: 0;
|
|
6574
6612
|
}
|
|
6575
|
-
.
|
|
6576
|
-
display:
|
|
6577
|
-
|
|
6578
|
-
|
|
6579
|
-
|
|
6613
|
+
.affix[data-v-8b90cc23] {
|
|
6614
|
+
display: inline-flex;
|
|
6615
|
+
flex: none;
|
|
6616
|
+
align-items: center;
|
|
6617
|
+
padding-inline: var(--ui-space-2);
|
|
6618
|
+
color: var(--ui-text-muted);
|
|
6619
|
+
font-family: var(--ui-font-family-mono);
|
|
6620
|
+
font-size: var(--ui-font-size-sm);
|
|
6580
6621
|
white-space: nowrap;
|
|
6581
6622
|
}
|
|
6582
|
-
|
|
6583
|
-
|
|
6584
|
-
white-space: normal;
|
|
6585
|
-
overflow-wrap: anywhere;
|
|
6623
|
+
.affix[data-v-8b90cc23]:has([slot="prefix"]), .affix[data-v-8b90cc23]:has([slot="suffix"]) {
|
|
6624
|
+
background: var(--ui-surface-muted);
|
|
6586
6625
|
}
|
|
6587
|
-
.
|
|
6588
|
-
|
|
6589
|
-
font-weight: var(--_ui-list-item-title-weight, var(--ui-font-medium));
|
|
6590
|
-
line-height: var(--ui-line-height-tight);
|
|
6626
|
+
.affix[data-v-8b90cc23]:has([slot="prefix"]) {
|
|
6627
|
+
border-inline-end: var(--ui-border-width) solid var(--ui-border-divider);
|
|
6591
6628
|
}
|
|
6592
|
-
|
|
6593
|
-
|
|
6629
|
+
.affix[data-v-8b90cc23]:has([slot="suffix"]) {
|
|
6630
|
+
border-inline-start: var(--ui-border-width) solid var(--ui-border-divider);
|
|
6594
6631
|
}
|
|
6595
|
-
:scope[data-ui-
|
|
6596
|
-
|
|
6597
|
-
min-block-size: calc(var(--ui-font-size-md) * var(--ui-line-height-tight));
|
|
6632
|
+
:scope:where([data-v-8b90cc23]:scope):is([data-ui-input-group-state~="prefixKind=icon"]) {
|
|
6633
|
+
--_ui-default-input-padding-inline-start: var(--ui-space-2);
|
|
6598
6634
|
}
|
|
6599
|
-
.
|
|
6600
|
-
|
|
6601
|
-
|
|
6602
|
-
|
|
6635
|
+
:scope[data-ui-input-group-state~="prefixKind=icon"] .affix[data-v-8b90cc23]:first-child {
|
|
6636
|
+
padding-inline-end: 0;
|
|
6637
|
+
border-inline-end: 0;
|
|
6638
|
+
background: transparent;
|
|
6603
6639
|
}
|
|
6604
|
-
.
|
|
6605
|
-
|
|
6606
|
-
|
|
6640
|
+
.action[data-v-8b90cc23] {
|
|
6641
|
+
display: flex;
|
|
6642
|
+
flex: none;
|
|
6643
|
+
align-items: center;
|
|
6644
|
+
padding-inline: var(--ui-space-1);
|
|
6607
6645
|
}
|
|
6608
|
-
|
|
6609
|
-
|
|
6610
|
-
|
|
6646
|
+
:scope:where([data-v-8b90cc23]:scope):is([data-ui-input-group-state~="multiline"]) {
|
|
6647
|
+
display: grid;
|
|
6648
|
+
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
6611
6649
|
}
|
|
6612
|
-
|
|
6613
|
-
|
|
6614
|
-
inset: 0;
|
|
6615
|
-
border-radius: inherit;
|
|
6616
|
-
content: "";
|
|
6650
|
+
:scope[data-ui-input-group-state~="multiline"] .field[data-v-8b90cc23] {
|
|
6651
|
+
grid-column: 2;
|
|
6617
6652
|
}
|
|
6618
|
-
|
|
6619
|
-
|
|
6653
|
+
:scope[data-ui-input-group-state~="multiline"] .action[data-v-8b90cc23] {
|
|
6654
|
+
grid-column: 1 / -1;
|
|
6655
|
+
justify-content: end;
|
|
6656
|
+
padding: var(--ui-space-2);
|
|
6657
|
+
padding-block-start: 0;
|
|
6620
6658
|
}
|
|
6621
|
-
|
|
6622
|
-
|
|
6623
|
-
|
|
6624
|
-
|
|
6659
|
+
:scope:where([data-v-8b90cc23]:scope):is([data-ui-input-group-state~="multiline"][data-ui-input-group-state~="actionPosition=top-end"]) {
|
|
6660
|
+
--_ui-default-textarea-padding-inline-end: calc(
|
|
6661
|
+
var(--_ui-input-group-action-inline-size, 7rem) + var(--ui-space-3)
|
|
6662
|
+
);
|
|
6625
6663
|
}
|
|
6626
|
-
:
|
|
6627
|
-
|
|
6628
|
-
|
|
6664
|
+
:scope[data-ui-input-group-state~="multiline"][data-ui-input-group-state~="actionPosition=top-end"]
|
|
6665
|
+
.field[data-v-8b90cc23] {
|
|
6666
|
+
grid-row: 1;
|
|
6629
6667
|
}
|
|
6668
|
+
:scope[data-ui-input-group-state~="multiline"][data-ui-input-group-state~="actionPosition=top-end"]
|
|
6669
|
+
.action[data-v-8b90cc23] {
|
|
6670
|
+
grid-column: 2;
|
|
6671
|
+
grid-row: 1;
|
|
6672
|
+
align-self: start;
|
|
6673
|
+
justify-self: end;
|
|
6674
|
+
padding: var(--ui-space-2);
|
|
6630
6675
|
}
|
|
6631
|
-
|
|
6676
|
+
.affix[data-v-8b90cc23]:empty, .action[data-v-8b90cc23]:empty {
|
|
6632
6677
|
display: none;
|
|
6633
6678
|
}
|
|
6679
|
+
:scope:where([data-v-8b90cc23]:scope):is([hidden]) {
|
|
6680
|
+
display: none;
|
|
6634
6681
|
}
|
|
6635
|
-
|
|
6636
|
-
@property --ui-listbox-radius {
|
|
6637
|
-
syntax: "*";
|
|
6638
|
-
inherits: false;
|
|
6639
|
-
}
|
|
6640
|
-
@property --ui-listbox-border {
|
|
6641
|
-
syntax: "*";
|
|
6642
|
-
inherits: false;
|
|
6643
|
-
}
|
|
6644
|
-
@property --ui-listbox-surface {
|
|
6645
|
-
syntax: "*";
|
|
6646
|
-
inherits: false;
|
|
6647
6682
|
}
|
|
6648
|
-
|
|
6683
|
+
|
|
6684
|
+
/* This component's hooks style the element they are set on, and never a nested one. */
|
|
6685
|
+
@property --ui-list-gap {
|
|
6649
6686
|
syntax: "*";
|
|
6650
6687
|
inherits: false;
|
|
6651
6688
|
}
|
|
6652
|
-
@property --ui-
|
|
6689
|
+
@property --ui-list-min-item-width {
|
|
6653
6690
|
syntax: "*";
|
|
6654
6691
|
inherits: false;
|
|
6655
6692
|
}
|
|
6656
6693
|
|
|
6657
|
-
/*
|
|
6658
|
-
|
|
6659
|
-
|
|
6660
|
-
|
|
6661
|
-
|
|
6662
|
-
|
|
6694
|
+
/* A list of native li elements or structured ui-list-item components. It owns the spacing between them, so a view never sets it. The
|
|
6695
|
+
explicit list role keeps the list announced as one: some browsers drop it from a list with no
|
|
6696
|
+
markers. */
|
|
6697
|
+
|
|
6698
|
+
/* Compact passes its size to the items through private properties, which cross into each item. */
|
|
6699
|
+
|
|
6700
|
+
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
6701
|
+
@scope (.ui-list) {
|
|
6702
|
+
:scope:where([data-v-4ed3243c]:scope) {
|
|
6703
|
+
--_list-gap: var(--ui-list-gap, var(--ui-space-1));
|
|
6704
|
+
--_list-min-item-width: var(--ui-list-min-item-width, 14rem);
|
|
6705
|
+
display: flex;
|
|
6706
|
+
flex-direction: column;
|
|
6663
6707
|
inline-size: 100%;
|
|
6708
|
+
gap: var(--_list-gap);
|
|
6664
6709
|
min-inline-size: 0;
|
|
6665
6710
|
margin: 0;
|
|
6666
|
-
padding:
|
|
6667
|
-
|
|
6668
|
-
border-radius: var(--ui-listbox-radius, var(--ui-field-radius, var(--ui-radius-md)));
|
|
6669
|
-
background: var(--ui-listbox-surface, var(--ui-control-surface));
|
|
6670
|
-
color: var(--ui-text-primary);
|
|
6671
|
-
font: inherit;
|
|
6672
|
-
line-height: var(--ui-line-height-md);
|
|
6673
|
-
box-shadow: var(--ui-control-inset);
|
|
6674
|
-
outline: none;
|
|
6711
|
+
padding: 0;
|
|
6712
|
+
list-style: none;
|
|
6675
6713
|
}
|
|
6676
|
-
|
|
6677
|
-
|
|
6678
|
-
|
|
6679
|
-
max-block-size: calc(max(2, var(--_rows, 5)) * var(--ui-control-size-md));
|
|
6714
|
+
:scope:where([data-v-4ed3243c]:scope):is([data-ui-list-state~="as=ol"]),
|
|
6715
|
+
:scope:where([data-v-4ed3243c]:scope):is([data-ui-list-state~="markers=disc"]) {
|
|
6716
|
+
padding-inline-start: var(--ui-space-5);
|
|
6680
6717
|
}
|
|
6681
|
-
:scope:where([data-v-
|
|
6682
|
-
|
|
6683
|
-
border: 0;
|
|
6684
|
-
background: transparent;
|
|
6685
|
-
box-shadow: none;
|
|
6718
|
+
:scope:where([data-v-4ed3243c]:scope):is([data-ui-list-state~="as=ol"]) {
|
|
6719
|
+
list-style: decimal;
|
|
6686
6720
|
}
|
|
6687
|
-
:scope:
|
|
6688
|
-
|
|
6721
|
+
:scope:where([data-v-4ed3243c]:scope):is([data-ui-list-state~="markers=disc"]) {
|
|
6722
|
+
list-style: disc;
|
|
6689
6723
|
}
|
|
6690
|
-
|
|
6724
|
+
:scope > li[data-v-4ed3243c-s] {
|
|
6691
6725
|
box-sizing: border-box;
|
|
6692
|
-
inline-size:
|
|
6693
|
-
|
|
6694
|
-
|
|
6695
|
-
|
|
6696
|
-
|
|
6697
|
-
|
|
6698
|
-
block-size: 1px;
|
|
6699
|
-
overflow: hidden;
|
|
6700
|
-
clip-path: inset(50%);
|
|
6701
|
-
opacity: 0;
|
|
6702
|
-
pointer-events: none;
|
|
6726
|
+
min-inline-size: 0;
|
|
6727
|
+
padding: var(--_ui-list-native-padding-block, var(--ui-space-2))
|
|
6728
|
+
var(--_ui-list-native-padding-inline, var(--ui-space-3));
|
|
6729
|
+
border-radius: var(--ui-radius-md);
|
|
6730
|
+
color: var(--ui-text-primary);
|
|
6731
|
+
list-style: inherit;
|
|
6703
6732
|
}
|
|
6704
|
-
:scope
|
|
6705
|
-
|
|
6706
|
-
|
|
6707
|
-
|
|
6708
|
-
|
|
6733
|
+
:scope > li.card[data-v-4ed3243c-s] {
|
|
6734
|
+
padding: var(--_ui-list-native-padding-block, var(--ui-space-3))
|
|
6735
|
+
var(--_ui-list-native-padding-inline, var(--ui-space-4));
|
|
6736
|
+
border: var(--ui-border-width) solid var(--ui-border-strong);
|
|
6737
|
+
border-radius: var(--ui-radius-lg);
|
|
6738
|
+
background: var(--ui-surface-raised);
|
|
6739
|
+
list-style: none;
|
|
6709
6740
|
}
|
|
6710
|
-
:scope:where([data-v-
|
|
6711
|
-
|
|
6741
|
+
:scope:where([data-v-4ed3243c]:scope):is([data-ui-list-state~="density=compact"]) {
|
|
6742
|
+
--_list-gap: var(--ui-list-gap, var(--ui-space-2));
|
|
6743
|
+
--_ui-list-item-min-size: 0;
|
|
6744
|
+
--_ui-list-item-padding-block: 0;
|
|
6745
|
+
--_ui-list-item-padding-inline: 0;
|
|
6746
|
+
--_ui-list-item-title-weight: var(--ui-font-normal);
|
|
6747
|
+
--_ui-list-native-padding-block: 0;
|
|
6748
|
+
--_ui-list-native-padding-inline: 0;
|
|
6712
6749
|
}
|
|
6713
|
-
:scope:where([data-v-
|
|
6714
|
-
|
|
6715
|
-
|
|
6716
|
-
|
|
6717
|
-
cursor: not-allowed;
|
|
6750
|
+
:scope:where([data-v-4ed3243c]:scope):is([data-ui-list-state~="layout=grid"]) {
|
|
6751
|
+
--_list-gap: var(--ui-list-gap, var(--ui-space-3));
|
|
6752
|
+
display: grid;
|
|
6753
|
+
grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--_list-min-item-width)), 1fr));
|
|
6718
6754
|
}
|
|
6719
|
-
:scope:where([data-v-
|
|
6755
|
+
:scope:where([data-v-4ed3243c]:scope):is([hidden]) {
|
|
6720
6756
|
display: none;
|
|
6721
6757
|
}
|
|
6722
6758
|
}
|
|
6723
6759
|
|
|
6724
6760
|
/* This component's hooks style the element they are set on, and never a nested one. */
|
|
6725
|
-
@property --ui-
|
|
6726
|
-
syntax: "*";
|
|
6727
|
-
inherits: false;
|
|
6728
|
-
}
|
|
6729
|
-
@property --ui-menu-border {
|
|
6761
|
+
@property --ui-list-item-gap {
|
|
6730
6762
|
syntax: "*";
|
|
6731
6763
|
inherits: false;
|
|
6732
6764
|
}
|
|
6733
|
-
@property --ui-
|
|
6765
|
+
@property --ui-list-item-icon-size {
|
|
6734
6766
|
syntax: "*";
|
|
6735
6767
|
inherits: false;
|
|
6736
6768
|
}
|
|
6737
|
-
@property --ui-
|
|
6769
|
+
@property --ui-list-item-padding-block {
|
|
6738
6770
|
syntax: "*";
|
|
6739
6771
|
inherits: false;
|
|
6740
6772
|
}
|
|
6741
|
-
@property --ui-
|
|
6773
|
+
@property --ui-list-item-padding-inline {
|
|
6742
6774
|
syntax: "*";
|
|
6743
6775
|
inherits: false;
|
|
6744
6776
|
}
|
|
6745
6777
|
|
|
6746
|
-
/*
|
|
6747
|
-
|
|
6778
|
+
/* One entry in a list: something to recognise (leading, usually an icon), its name (the default
|
|
6779
|
+
slot), one line about it (description), and what it offers (trailing, such as a button or a
|
|
6780
|
+
badge). The title and description are one line each and end in an ellipsis, so every item in a
|
|
6781
|
+
list has the same height.
|
|
6748
6782
|
|
|
6749
|
-
|
|
6750
|
-
|
|
6751
|
-
|
|
6752
|
-
|
|
6753
|
-
|
|
6754
|
-
|
|
6755
|
-
|
|
6756
|
-
|
|
6757
|
-
|
|
6783
|
+
A link in the title is the whole item: its hit area stretches over the item, so the icon and the
|
|
6784
|
+
padding follow it too, and the item takes the link's focus ring. The link stays a real link, so
|
|
6785
|
+
a router, a modified click, and "open in new tab" all work. Trailing controls sit above it and
|
|
6786
|
+
stay their own. */
|
|
6787
|
+
|
|
6788
|
+
/* Framed cards already have their own edge; the stronger focus ring stays separate. */
|
|
6789
|
+
|
|
6790
|
+
/* An explicitly independent leading control sits above the stretched row link. */
|
|
6791
|
+
|
|
6792
|
+
/* Trailing controls take their own clicks, above the title link's stretched hit area. */
|
|
6793
|
+
|
|
6794
|
+
/* Keep identity and disclosure marks beside the first line, even with a long description. */
|
|
6795
|
+
|
|
6796
|
+
/* An unused region takes no space. */
|
|
6797
|
+
|
|
6798
|
+
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
6799
|
+
@scope (.ui-list-item) {
|
|
6800
|
+
:scope:where([data-v-8c851f73]:scope) {
|
|
6801
|
+
/* Hooks do not inherit, so the parts below read them from the root. */
|
|
6802
|
+
--_ui-list-item-icon-size: var(--ui-list-item-icon-size);
|
|
6803
|
+
|
|
6804
|
+
position: relative;
|
|
6805
|
+
box-sizing: border-box;
|
|
6806
|
+
display: flex;
|
|
6807
|
+
align-items: center;
|
|
6808
|
+
gap: var(--ui-list-item-gap, var(--ui-space-3));
|
|
6809
|
+
min-inline-size: 0;
|
|
6810
|
+
min-block-size: var(--_ui-list-item-min-size, var(--ui-control-size, 2.5rem));
|
|
6811
|
+
padding-block: var(
|
|
6812
|
+
--ui-list-item-padding-block,
|
|
6813
|
+
var(--_ui-list-item-padding-block, var(--ui-space-2))
|
|
6814
|
+
);
|
|
6815
|
+
padding-inline: var(
|
|
6816
|
+
--ui-list-item-padding-inline,
|
|
6817
|
+
var(--_ui-list-item-padding-inline, var(--ui-space-3))
|
|
6818
|
+
);
|
|
6819
|
+
border-radius: var(--ui-selection-radius);
|
|
6820
|
+
color: var(--ui-text-primary);
|
|
6821
|
+
transition:
|
|
6822
|
+
background-color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
6823
|
+
border-color var(--ui-motion-fast) var(--ui-motion-ease);
|
|
6758
6824
|
}
|
|
6759
|
-
:scope:where([data-v-
|
|
6760
|
-
--
|
|
6761
|
-
--
|
|
6762
|
-
--
|
|
6763
|
-
|
|
6764
|
-
--
|
|
6765
|
-
--_ui-default-menu-indicator-size: 0.75rem;
|
|
6766
|
-
min-inline-size: min(8rem, calc(100vw - var(--ui-menu-viewport-gap, var(--ui-space-2)) * 2));
|
|
6767
|
-
padding: var(--ui-space-1);
|
|
6768
|
-
gap: 0;
|
|
6825
|
+
:scope:where([data-v-8c851f73]:scope):is([data-ui-list-item-state~="variant=card"]) {
|
|
6826
|
+
padding-block: var(--ui-list-item-padding-block, var(--ui-space-3));
|
|
6827
|
+
padding-inline: var(--ui-list-item-padding-inline, var(--ui-space-4));
|
|
6828
|
+
border: var(--ui-border-width) solid var(--ui-border-strong);
|
|
6829
|
+
border-radius: var(--ui-radius-lg);
|
|
6830
|
+
background: var(--ui-surface-raised);
|
|
6769
6831
|
}
|
|
6770
|
-
:scope:where([data-v-
|
|
6771
|
-
|
|
6832
|
+
:scope:where([data-v-8c851f73]:scope):is(:where(:has(.title a[href])):hover),
|
|
6833
|
+
:scope:where([data-v-8c851f73]:scope):is([data-ui-list-item-state~="highlighted"]),
|
|
6834
|
+
:scope:where([data-v-8c851f73]:scope):is([data-ui-list-item-state~="current"]) {
|
|
6835
|
+
background: var(--_ui-selection-context-surface, var(--ui-selection-surface));
|
|
6836
|
+
box-shadow: inset 0 0 0 var(--ui-border-width)
|
|
6837
|
+
var(--_ui-selection-context-border, var(--ui-selection-border));
|
|
6772
6838
|
}
|
|
6773
|
-
:scope:where([data-v-
|
|
6774
|
-
|
|
6775
|
-
|
|
6776
|
-
|
|
6777
|
-
|
|
6778
|
-
|
|
6779
|
-
|
|
6780
|
-
|
|
6781
|
-
--_ui-default-menu-item-font-size: initial;
|
|
6782
|
-
--_ui-default-menu-item-radius: initial;
|
|
6783
|
-
--_ui-default-menu-item-min-block-size: initial;
|
|
6784
|
-
--_ui-default-menu-indicator-size: initial;
|
|
6785
|
-
--_ui-default-menu-icon-display: none;
|
|
6786
|
-
display: flex;
|
|
6787
|
-
flex-direction: column;
|
|
6788
|
-
box-sizing: border-box;
|
|
6789
|
-
inline-size: max-content;
|
|
6790
|
-
min-inline-size: min(12rem, calc(100vw - var(--ui-menu-viewport-gap, var(--ui-space-2)) * 2));
|
|
6791
|
-
max-inline-size: calc(100vw - var(--ui-menu-viewport-gap, var(--ui-space-2)) * 2);
|
|
6792
|
-
padding: 0;
|
|
6793
|
-
border: 0;
|
|
6794
|
-
outline: 0;
|
|
6795
|
-
border-radius: 0;
|
|
6796
|
-
background: transparent;
|
|
6839
|
+
:scope:where([data-v-8c851f73]:scope):is([data-ui-list-item-state~="variant=card"]:where(:has(.title
|
|
6840
|
+
a[href])):hover) {
|
|
6841
|
+
border-color: var(--ui-border-strong);
|
|
6842
|
+
}
|
|
6843
|
+
:scope:where([data-v-8c851f73]:scope):is([data-ui-list-item-state~="current"]) {
|
|
6844
|
+
color: var(--_ui-selection-context-text, var(--ui-selection-text));
|
|
6845
|
+
}
|
|
6846
|
+
:scope:where([data-v-8c851f73]:scope):is([data-ui-list-item-state~="variant=card"]) {
|
|
6797
6847
|
box-shadow: none;
|
|
6798
|
-
overflow: visible;
|
|
6799
6848
|
}
|
|
6800
|
-
|
|
6849
|
+
:scope:where([data-v-8c851f73]:scope):is(:has(.title a[href]:focus-visible)) {
|
|
6850
|
+
box-shadow: 0 0 0 var(--ui-focus-width) var(--ui-focus-ring);
|
|
6851
|
+
}
|
|
6852
|
+
.leading[data-v-8c851f73], .trailing[data-v-8c851f73] {
|
|
6853
|
+
display: inline-flex;
|
|
6854
|
+
flex: none;
|
|
6855
|
+
align-items: center;
|
|
6856
|
+
gap: var(--ui-space-2);
|
|
6857
|
+
}
|
|
6858
|
+
.leading[data-v-8c851f73] {
|
|
6859
|
+
color: var(--ui-text-muted);
|
|
6860
|
+
font-size: var(--_ui-list-item-icon-size, var(--ui-font-size-lg));
|
|
6861
|
+
}
|
|
6862
|
+
:scope[data-ui-list-item-state~="current"] .leading[data-v-8c851f73] {
|
|
6863
|
+
color: var(--_ui-selection-context-text, var(--ui-selection-text));
|
|
6864
|
+
}
|
|
6865
|
+
:scope[data-ui-list-item-state~="leadingInteractive"] .leading[data-v-8c851f73] {
|
|
6866
|
+
position: relative;
|
|
6867
|
+
z-index: 1;
|
|
6868
|
+
}
|
|
6869
|
+
.trailing[data-v-8c851f73] {
|
|
6870
|
+
position: relative;
|
|
6871
|
+
z-index: 1;
|
|
6872
|
+
color: var(--ui-text-muted);
|
|
6873
|
+
font-size: var(--ui-font-size-sm);
|
|
6874
|
+
}
|
|
6875
|
+
.content[data-v-8c851f73] {
|
|
6801
6876
|
display: flex;
|
|
6877
|
+
flex: 1;
|
|
6802
6878
|
flex-direction: column;
|
|
6803
|
-
|
|
6804
|
-
|
|
6805
|
-
padding: var(--ui-space-1);
|
|
6806
|
-
background: var(--_ui-menu-surface, var(--ui-overlay-surface, var(--ui-surface-elevated)));
|
|
6807
|
-
border: var(--ui-border-width) solid
|
|
6808
|
-
var(--_ui-menu-border, var(--ui-overlay-border, var(--ui-border-strong)));
|
|
6809
|
-
border-radius: var(--_ui-menu-radius, var(--ui-overlay-radius, var(--ui-radius-lg)));
|
|
6810
|
-
box-shadow: var(
|
|
6811
|
-
--_ui-menu-shadow,
|
|
6812
|
-
var(--ui-overlay-shadow, var(--ui-elevation-overlay, var(--ui-shadow-lg)))
|
|
6813
|
-
);
|
|
6814
|
-
max-block-size: inherit;
|
|
6815
|
-
overflow: auto;
|
|
6816
|
-
}
|
|
6817
|
-
.surface hr[data-v-1ded0073] {
|
|
6818
|
-
align-self: stretch;
|
|
6819
|
-
block-size: 0;
|
|
6820
|
-
margin: var(--ui-space-1) 0;
|
|
6821
|
-
border: 0;
|
|
6822
|
-
border-block-start: var(--ui-border-width) solid var(--ui-border-divider);
|
|
6879
|
+
gap: var(--ui-space-0-5, 2px);
|
|
6880
|
+
min-inline-size: 0;
|
|
6823
6881
|
}
|
|
6824
|
-
|
|
6825
|
-
display:
|
|
6882
|
+
.title[data-v-8c851f73], .description[data-v-8c851f73] {
|
|
6883
|
+
display: block;
|
|
6884
|
+
min-inline-size: 0;
|
|
6885
|
+
overflow: hidden;
|
|
6886
|
+
text-overflow: ellipsis;
|
|
6887
|
+
white-space: nowrap;
|
|
6826
6888
|
}
|
|
6827
|
-
:scope
|
|
6828
|
-
|
|
6829
|
-
|
|
6830
|
-
|
|
6831
|
-
overflow: visible;
|
|
6832
|
-
max-block-size: calc(100dvh - var(--ui-menu-viewport-gap, var(--ui-space-2)) * 2);
|
|
6833
|
-
opacity: 0;
|
|
6834
|
-
transform: translateY(-4px) scale(0.99);
|
|
6835
|
-
transition:
|
|
6836
|
-
opacity var(--ui-motion-fast) var(--ui-motion-ease),
|
|
6837
|
-
transform var(--ui-motion-fast) var(--ui-motion-ease),
|
|
6838
|
-
display var(--ui-motion-fast) allow-discrete,
|
|
6839
|
-
overlay var(--ui-motion-fast) allow-discrete;
|
|
6889
|
+
:scope[data-ui-list-item-state~="wrap"] .title[data-v-8c851f73],
|
|
6890
|
+
:scope[data-ui-list-item-state~="wrap"] .description[data-v-8c851f73] {
|
|
6891
|
+
white-space: normal;
|
|
6892
|
+
overflow-wrap: anywhere;
|
|
6840
6893
|
}
|
|
6841
|
-
|
|
6842
|
-
|
|
6843
|
-
|
|
6894
|
+
.title[data-v-8c851f73] {
|
|
6895
|
+
font-size: var(--ui-font-size-md);
|
|
6896
|
+
font-weight: var(--_ui-list-item-title-weight, var(--ui-font-medium));
|
|
6897
|
+
line-height: var(--ui-line-height-tight);
|
|
6844
6898
|
}
|
|
6845
|
-
|
|
6846
|
-
|
|
6847
|
-
opacity: 0;
|
|
6848
|
-
transform: translateY(-4px) scale(0.99);
|
|
6899
|
+
:scope:where([data-v-8c851f73]:scope):is([data-ui-list-item-state~="align=title"]) {
|
|
6900
|
+
align-items: flex-start;
|
|
6849
6901
|
}
|
|
6902
|
+
:scope[data-ui-list-item-state~="align=title"] .leading[data-v-8c851f73],
|
|
6903
|
+
:scope[data-ui-list-item-state~="align=title"] .trailing[data-v-8c851f73] {
|
|
6904
|
+
min-block-size: calc(var(--ui-font-size-md) * var(--ui-line-height-tight));
|
|
6850
6905
|
}
|
|
6851
|
-
|
|
6852
|
-
|
|
6906
|
+
.description[data-v-8c851f73] {
|
|
6907
|
+
color: var(--ui-text-muted);
|
|
6908
|
+
font-size: var(--ui-font-size-sm);
|
|
6909
|
+
line-height: var(--ui-line-height-tight);
|
|
6853
6910
|
}
|
|
6854
|
-
|
|
6855
|
-
:
|
|
6856
|
-
|
|
6911
|
+
.title > a[data-v-8c851f73-s] {
|
|
6912
|
+
color: inherit;
|
|
6913
|
+
text-decoration: none;
|
|
6914
|
+
}
|
|
6915
|
+
.title > a[data-v-8c851f73-s]:focus-visible {
|
|
6916
|
+
outline: none;
|
|
6917
|
+
box-shadow: none;
|
|
6857
6918
|
}
|
|
6919
|
+
.title > a[href][data-v-8c851f73-s]::after {
|
|
6920
|
+
position: absolute;
|
|
6921
|
+
inset: 0;
|
|
6922
|
+
border-radius: inherit;
|
|
6923
|
+
content: "";
|
|
6858
6924
|
}
|
|
6925
|
+
.leading[data-v-8c851f73]:empty, .description[data-v-8c851f73]:empty, .trailing[data-v-8c851f73]:empty {
|
|
6926
|
+
display: none;
|
|
6859
6927
|
}
|
|
6860
|
-
|
|
6861
|
-
|
|
6862
|
-
:
|
|
6863
|
-
|
|
6864
|
-
flex-direction: column;
|
|
6865
|
-
min-inline-size: 0;
|
|
6928
|
+
@media (forced-colors: active) {
|
|
6929
|
+
:scope:where([data-v-8c851f73]:scope):is(:has(a:focus-visible)) {
|
|
6930
|
+
outline: var(--ui-focus-width) solid Highlight;
|
|
6931
|
+
outline-offset: calc(-1 * var(--ui-focus-width));
|
|
6866
6932
|
}
|
|
6867
|
-
|
|
6868
|
-
|
|
6869
|
-
|
|
6870
|
-
font-size: var(--ui-font-size-sm);
|
|
6871
|
-
font-weight: var(--ui-font-semibold);
|
|
6933
|
+
:is(:scope[data-ui-list-item-state~="current"][data-v-8c851f73], :scope[data-ui-list-item-state~="highlighted"][data-v-8c851f73]):not(:has(a:focus-visible)) {
|
|
6934
|
+
outline: var(--ui-border-width) solid Highlight;
|
|
6935
|
+
outline-offset: calc(-1 * var(--ui-border-width));
|
|
6872
6936
|
}
|
|
6873
|
-
|
|
6937
|
+
}
|
|
6938
|
+
:scope:where([data-v-8c851f73]:scope):is([hidden]) {
|
|
6874
6939
|
display: none;
|
|
6875
6940
|
}
|
|
6876
6941
|
}
|
|
6877
6942
|
|
|
6878
|
-
|
|
6879
|
-
@property --ui-menu-item-font-size {
|
|
6880
|
-
syntax: "*";
|
|
6881
|
-
inherits: false;
|
|
6882
|
-
}
|
|
6883
|
-
@property --ui-menu-item-hover-surface {
|
|
6943
|
+
@property --ui-listbox-radius {
|
|
6884
6944
|
syntax: "*";
|
|
6885
6945
|
inherits: false;
|
|
6886
6946
|
}
|
|
6887
|
-
@property --ui-
|
|
6947
|
+
@property --ui-listbox-border {
|
|
6888
6948
|
syntax: "*";
|
|
6889
6949
|
inherits: false;
|
|
6890
6950
|
}
|
|
6891
|
-
@property --ui-
|
|
6951
|
+
@property --ui-listbox-surface {
|
|
6892
6952
|
syntax: "*";
|
|
6893
6953
|
inherits: false;
|
|
6894
6954
|
}
|
|
6895
|
-
@property --ui-
|
|
6955
|
+
@property --ui-listbox-focus-shadow {
|
|
6896
6956
|
syntax: "*";
|
|
6897
6957
|
inherits: false;
|
|
6898
6958
|
}
|
|
6899
|
-
@property --ui-
|
|
6959
|
+
@property --ui-listbox-invalid-border {
|
|
6900
6960
|
syntax: "*";
|
|
6901
6961
|
inherits: false;
|
|
6902
6962
|
}
|
|
6903
6963
|
|
|
6904
|
-
/*
|
|
6905
|
-
|
|
6906
|
-
|
|
6907
|
-
|
|
6908
|
-
|
|
6909
|
-
/* A <kbd> takes the browser's monospace; the hint reads in the item's own type. */
|
|
6910
|
-
|
|
6911
|
-
/* Keep the text row at the shared control height where cap trimming is available. */
|
|
6912
|
-
|
|
6913
|
-
/* A component that sets its display still honours the hidden attribute on its root. */
|
|
6914
|
-
@scope (.ui-menu-item) to (.ui-icon) {
|
|
6915
|
-
:scope:where([data-v-50b6e1bc]:scope) {
|
|
6916
|
-
display: flex;
|
|
6917
|
-
align-items: center;
|
|
6918
|
-
gap: var(--ui-space-2);
|
|
6964
|
+
/* Its own box around the nested Scroll Area, which it shrinks into so the choices scroll. */
|
|
6965
|
+
@scope (.ui-listbox) to (.ui-scroll-area) {
|
|
6966
|
+
:scope:where([data-v-93820102]:scope) {
|
|
6967
|
+
position: relative;
|
|
6919
6968
|
box-sizing: border-box;
|
|
6920
|
-
|
|
6921
|
-
|
|
6922
|
-
|
|
6923
|
-
|
|
6924
|
-
)
|
|
6925
|
-
|
|
6926
|
-
|
|
6927
|
-
|
|
6928
|
-
);
|
|
6929
|
-
text-align: left;
|
|
6930
|
-
border-radius: var(
|
|
6931
|
-
--ui-menu-item-radius,
|
|
6932
|
-
var(--_ui-default-menu-item-radius, var(--ui-selection-radius))
|
|
6933
|
-
);
|
|
6969
|
+
display: block;
|
|
6970
|
+
inline-size: 100%;
|
|
6971
|
+
min-inline-size: 0;
|
|
6972
|
+
margin: 0;
|
|
6973
|
+
padding: var(--ui-space-1);
|
|
6974
|
+
border: var(--ui-border-width) solid var(--ui-listbox-border, var(--ui-control-border));
|
|
6975
|
+
border-radius: var(--ui-listbox-radius, var(--ui-field-radius, var(--ui-radius-md)));
|
|
6976
|
+
background: var(--ui-listbox-surface, var(--ui-control-surface));
|
|
6934
6977
|
color: var(--ui-text-primary);
|
|
6935
|
-
font
|
|
6936
|
-
|
|
6937
|
-
|
|
6938
|
-
);
|
|
6939
|
-
font-weight: var(--ui-font-medium);
|
|
6940
|
-
text-decoration: none;
|
|
6941
|
-
cursor: pointer;
|
|
6978
|
+
font: inherit;
|
|
6979
|
+
line-height: var(--ui-line-height-md);
|
|
6980
|
+
box-shadow: var(--ui-control-inset);
|
|
6942
6981
|
outline: none;
|
|
6943
|
-
transition:
|
|
6944
|
-
background-color var(--ui-motion-fast) var(--ui-motion-ease),
|
|
6945
|
-
color var(--ui-motion-fast) var(--ui-motion-ease);
|
|
6946
|
-
}
|
|
6947
|
-
.icon[data-v-50b6e1bc] {
|
|
6948
|
-
display: var(--_ui-default-menu-icon-display, none);
|
|
6949
|
-
align-items: center;
|
|
6950
|
-
justify-content: center;
|
|
6951
|
-
flex: none;
|
|
6952
|
-
inline-size: var(--ui-icon-size-sm);
|
|
6953
|
-
block-size: var(--ui-icon-size-sm);
|
|
6954
|
-
}
|
|
6955
|
-
.icon[data-v-50b6e1bc]:not(:empty) {
|
|
6956
|
-
display: inline-flex;
|
|
6957
|
-
}
|
|
6958
|
-
.icon svg[data-v-50b6e1bc-s] {
|
|
6959
|
-
inline-size: 100%;
|
|
6960
|
-
block-size: 100%;
|
|
6961
|
-
}
|
|
6962
|
-
:scope:where([data-v-50b6e1bc]:scope):is([data-ui-menu-item-state~="tone=danger"]) {
|
|
6963
|
-
color: var(--ui-danger);
|
|
6964
6982
|
}
|
|
6965
|
-
.
|
|
6983
|
+
.choices[data-v-93820102] {
|
|
6966
6984
|
display: flex;
|
|
6967
|
-
|
|
6968
|
-
|
|
6969
|
-
flex: 1;
|
|
6970
|
-
min-inline-size: 0;
|
|
6971
|
-
}
|
|
6972
|
-
.indicator[data-v-50b6e1bc] {
|
|
6973
|
-
display: inline-flex;
|
|
6974
|
-
align-items: center;
|
|
6975
|
-
justify-content: center;
|
|
6976
|
-
flex: none;
|
|
6977
|
-
box-sizing: border-box;
|
|
6978
|
-
inline-size: var(--_ui-default-menu-indicator-size, var(--ui-icon-size-sm));
|
|
6979
|
-
block-size: var(--_ui-default-menu-indicator-size, var(--ui-icon-size-sm));
|
|
6980
|
-
border: var(--ui-border-width) solid var(--ui-control-border);
|
|
6981
|
-
border-radius: var(--ui-radius-sm);
|
|
6982
|
-
color: var(--ui-surface);
|
|
6983
|
-
--_ui-default-icon-size: 0.75rem;
|
|
6984
|
-
}
|
|
6985
|
-
:scope[data-ui-menu-item-state~="type=action"] .indicator[data-v-50b6e1bc] {
|
|
6986
|
-
display: none;
|
|
6987
|
-
}
|
|
6988
|
-
:scope[data-ui-menu-item-state~="type=checkbox"][aria-checked="true"] .indicator[data-v-50b6e1bc] {
|
|
6989
|
-
border-color: var(--ui-accent);
|
|
6990
|
-
background: var(--ui-accent);
|
|
6991
|
-
}
|
|
6992
|
-
:scope[data-ui-menu-item-state~="type=radio"] .indicator[data-v-50b6e1bc] {
|
|
6993
|
-
border-color: transparent;
|
|
6994
|
-
color: var(--ui-text-secondary);
|
|
6985
|
+
flex-direction: column;
|
|
6986
|
+
max-block-size: calc(max(2, var(--_rows, 5)) * var(--ui-control-size-md));
|
|
6995
6987
|
}
|
|
6996
|
-
|
|
6997
|
-
|
|
6998
|
-
|
|
6999
|
-
|
|
7000
|
-
|
|
6988
|
+
:scope:where([data-v-93820102]:scope):is(:not([data-enhanced])) {
|
|
6989
|
+
padding: 0;
|
|
6990
|
+
border: 0;
|
|
6991
|
+
background: transparent;
|
|
6992
|
+
box-shadow: none;
|
|
7001
6993
|
}
|
|
7002
|
-
.
|
|
6994
|
+
:scope:not([data-enhanced]) .choices[data-v-93820102], :scope[data-enhanced] .fallback[data-v-93820102] {
|
|
7003
6995
|
display: none;
|
|
7004
6996
|
}
|
|
7005
|
-
.
|
|
6997
|
+
.fallback[data-v-93820102] {
|
|
6998
|
+
box-sizing: border-box;
|
|
6999
|
+
inline-size: 100%;
|
|
7006
7000
|
font: inherit;
|
|
7007
7001
|
}
|
|
7008
|
-
|
|
7009
|
-
:
|
|
7010
|
-
|
|
7011
|
-
|
|
7012
|
-
|
|
7013
|
-
|
|
7014
|
-
|
|
7015
|
-
|
|
7016
|
-
}
|
|
7017
|
-
}
|
|
7018
|
-
:scope:where([data-v-50b6e1bc]:scope):is(:is(:hover, :focus-visible):not([aria-disabled="true"])) {
|
|
7019
|
-
background: var(--ui-menu-item-hover-surface, var(--ui-surface-subtle));
|
|
7002
|
+
.validity[data-v-93820102] {
|
|
7003
|
+
position: absolute;
|
|
7004
|
+
inline-size: 1px;
|
|
7005
|
+
block-size: 1px;
|
|
7006
|
+
overflow: hidden;
|
|
7007
|
+
clip-path: inset(50%);
|
|
7008
|
+
opacity: 0;
|
|
7009
|
+
pointer-events: none;
|
|
7020
7010
|
}
|
|
7021
|
-
:scope:where([data-v-
|
|
7011
|
+
:scope:where([data-v-93820102]:scope):is(:focus-visible) {
|
|
7012
|
+
border-color: var(--ui-control-focus);
|
|
7022
7013
|
outline: var(--ui-focus-width) solid var(--ui-focus-ring);
|
|
7023
|
-
outline-offset:
|
|
7014
|
+
outline-offset: var(--ui-focus-width);
|
|
7015
|
+
box-shadow: var(--ui-listbox-focus-shadow, var(--ui-focus-halo));
|
|
7024
7016
|
}
|
|
7025
|
-
:scope:where([data-v-
|
|
7026
|
-
|
|
7017
|
+
:scope:where([data-v-93820102]:scope):is([aria-invalid="true"]) {
|
|
7018
|
+
border-color: var(--ui-listbox-invalid-border, var(--ui-field-danger, var(--ui-danger)));
|
|
7019
|
+
}
|
|
7020
|
+
:scope:where([data-v-93820102]:scope):is([aria-disabled="true"]) {
|
|
7021
|
+
background: var(--ui-control-surface-disabled);
|
|
7027
7022
|
color: var(--ui-disabled-text);
|
|
7023
|
+
box-shadow: none;
|
|
7028
7024
|
cursor: not-allowed;
|
|
7029
7025
|
}
|
|
7030
|
-
:scope[
|
|
7031
|
-
|
|
7032
|
-
background: transparent;
|
|
7033
|
-
color: var(--ui-disabled-text);
|
|
7026
|
+
:scope:where([data-v-93820102]:scope):is([hidden]) {
|
|
7027
|
+
display: none;
|
|
7034
7028
|
}
|
|
7035
|
-
:scope[aria-disabled="true"] .indicator[data-v-50b6e1bc]::after {
|
|
7036
|
-
background: var(--ui-disabled-text);
|
|
7037
7029
|
}
|
|
7038
|
-
|
|
7039
|
-
|
|
7040
|
-
|
|
7030
|
+
|
|
7031
|
+
@scope (.ui-menu-group) {
|
|
7032
|
+
:scope:where([data-v-d68e51f2]:scope) {
|
|
7033
|
+
display: flex;
|
|
7034
|
+
flex-direction: column;
|
|
7035
|
+
min-inline-size: 0;
|
|
7041
7036
|
}
|
|
7037
|
+
.heading[data-v-d68e51f2] {
|
|
7038
|
+
padding: var(--ui-space-2) var(--ui-space-3) var(--ui-space-1);
|
|
7039
|
+
color: var(--ui-text-muted);
|
|
7040
|
+
font-size: var(--ui-font-size-sm);
|
|
7041
|
+
font-weight: var(--ui-font-semibold);
|
|
7042
7042
|
}
|
|
7043
|
-
:scope:where([data-v-
|
|
7043
|
+
:scope:where([data-v-d68e51f2]:scope):is([hidden]) {
|
|
7044
7044
|
display: none;
|
|
7045
7045
|
}
|
|
7046
7046
|
}
|