Ir para o conteúdo
uiify

Dropdown menu

Menu de ações com itens de conteúdo rico, opções e submenus que abre antes da hidratação.

Navegadores
Chrome 151+
Por que esta versão?

CSS anchor positioning places this surface beside its trigger using position-anchor, and anchor(). Older Chrome versions may place the surface away from its trigger.

Firefox 151+
Por que esta versão?

CSS anchor positioning places this surface beside its trigger using position-anchor, and anchor(). Older Firefox versions may place the surface away from its trigger.

Safari 27+
Por que esta versão?

CSS anchor positioning places this surface beside its trigger using position-anchor, and anchor(). Older Safari versions may place the surface away from its trigger.

Nível
2
Tamanho compactado
6.43 kB
Limite de layout forçado
0 ms
Limite do axe
0
Compatível com SSR
Sim
Contrato publicado
Ambiente de teste

Experimentar

Dropdown menu

Menu simples

Menu complexo

Menu grande

Barra de menus

import { useState } from "react";
import { DropdownMenu } from "@gunkin/uiify";

function MenuBar() {
  const [openMenu, setOpenMenu] = useState<string>();

  return (
    <DropdownMenu.Bar className="">
      <DropdownMenu.Root open={openMenu === "file"} onOpenChange={(next) => setOpenMenu(next ? "file" : undefined)}>
        <DropdownMenu.Trigger className="" role="menuitem" openOnHover>
          File
        </DropdownMenu.Trigger>
        <DropdownMenu.Content className="">
          <DropdownMenu.Item className="">New</DropdownMenu.Item>
          <DropdownMenu.Separator className="" />
          <DropdownMenu.Item className="">Quit</DropdownMenu.Item>
        </DropdownMenu.Content>
      </DropdownMenu.Root>

      <DropdownMenu.Root open={openMenu === "edit"} onOpenChange={(next) => setOpenMenu(next ? "edit" : undefined)}>
        <DropdownMenu.Trigger className="" role="menuitem" openOnHover>
          Edit
        </DropdownMenu.Trigger>
        <DropdownMenu.Content className="">
          <DropdownMenu.Item className="">Undo</DropdownMenu.Item>
        </DropdownMenu.Content>
      </DropdownMenu.Root>
    </DropdownMenu.Bar>
  );
}

export default function Example() {
  return (
    <>
      <DropdownMenu.Root>
        <DropdownMenu.Trigger className="">Actions</DropdownMenu.Trigger>
        <DropdownMenu.Content className="">
          <DropdownMenu.Label className="">Workspace</DropdownMenu.Label>
          <DropdownMenu.Item className="">
            <DropdownMenu.ItemText>
              Open project
              <DropdownMenu.ItemDescription>Open in a new window</DropdownMenu.ItemDescription>
            </DropdownMenu.ItemText>
            <DropdownMenu.Shortcut>⌘O</DropdownMenu.Shortcut>
          </DropdownMenu.Item>
          <DropdownMenu.CheckboxItem className="" defaultChecked>
            <DropdownMenu.ItemIndicator>✓</DropdownMenu.ItemIndicator>
            <DropdownMenu.ItemText>Show toolbar</DropdownMenu.ItemText>
          </DropdownMenu.CheckboxItem>
          <DropdownMenu.Separator className="" />
          <DropdownMenu.RadioGroup defaultValue="comfortable" aria-label="Density">
            <DropdownMenu.RadioItem className="" value="comfortable">
              Comfortable
            </DropdownMenu.RadioItem>
            <DropdownMenu.RadioItem className="" value="compact">
              Compact
            </DropdownMenu.RadioItem>
          </DropdownMenu.RadioGroup>
          <DropdownMenu.Sub>
            <DropdownMenu.SubTrigger className="">Share</DropdownMenu.SubTrigger>
            <DropdownMenu.SubContent className="">
              <DropdownMenu.Item className="">Copy link</DropdownMenu.Item>
            </DropdownMenu.SubContent>
          </DropdownMenu.Sub>
        </DropdownMenu.Content>
      </DropdownMenu.Root>
      <MenuBar />
    </>
  );
}
/* Button — pill-shaped and monochrome: a filled foreground action by default, secondary for
   the tonal one, outline for the bordered one, ghost for a surface that only appears on
   hover, link for inline text actions.

   Filled variants are lit from above by two layers that sit between the fill and the label:
   - `::before`, the wash: a blurred copy of the shape raised by half its height, so only its
     soft lower edge glows inside the upper half. `filter` runs before `clip-path`, which lets
     one box blur itself and still be cut back to the button outline.
   - `::after`, the rim: a half-pixel ring whose colour fades out towards the bottom. A
     box-shadow cannot take a gradient and `border-image` ignores the radius, so the ring is
     a gradient box with its content box masked out. */

@layer components {
  :where([data-uiify-button]) {
    --uiify-button-rim: rgb(255 255 255 / 20%);
    --uiify-button-wash: light-dark(rgb(255 255 255 / 15%), rgb(255 255 255 / 30%));

    position: relative;
    isolation: isolate;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    min-block-size: 44px;

    /* Never narrower than tall: an icon size only has to drop the padding to be a circle. */
    min-inline-size: 44px;
    padding-block: 0;
    padding-inline: 1.25rem;
    border: var(--border-width) solid transparent;
    border-radius: var(--radius-full);
    background-color: var(--foreground);
    background-clip: padding-box;
    color: var(--background);
    font-size: var(--text-base);
    font-weight: var(--weight-medium);
    line-height: 1.5rem;
    text-decoration: none;
    cursor: pointer;
    transition: var(--transition-colors);
  }

  :where([data-uiify-button])::before,
  :where([data-uiify-button])::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    pointer-events: none;
  }

  :where([data-uiify-button])::before {
    background-color: var(--uiify-button-wash);
    filter: blur(10px);
    translate: 0 -50%;
    clip-path: inset(50% 0 -50% 0 round var(--radius-full));
  }

  :where([data-uiify-button])::after {
    padding: 0.5px;
    background-image: linear-gradient(to bottom, var(--uiify-button-rim), transparent 75%);
    mask:
      linear-gradient(#fff 0 0) content-box exclude,
      linear-gradient(#fff 0 0);
  }

  /* Sizes: md is the default metrics above. */
  [data-uiify-button]:is([data-size="sm"], [data-size="icon-sm"]) {
    min-block-size: 32px;
    min-inline-size: 32px;
    padding-inline: 0.75rem;
    gap: 0.25rem;
    font-size: var(--text-sm);
    line-height: 1.25rem;
  }

  [data-uiify-button]:is([data-size="lg"], [data-size="icon-lg"]) {
    min-block-size: 56px;
    min-inline-size: 56px;
    padding-inline: 1.75rem;
    font-size: var(--text-lg);
    line-height: 1.75rem;
  }

  /* Icon sizes: the same three heights with no padding, for a single icon. */
  [data-uiify-button][data-size^="icon"] {
    padding-inline: 0;
  }

  @media (any-hover: hover) and (any-pointer: fine) {
    [data-uiify-button]:hover:not(:disabled, [data-disabled]) {
      background-color: color-mix(in oklch, var(--foreground) 90%, var(--background));
    }
  }

  [data-uiify-button]:active:not(:disabled, [data-disabled]) {
    background-color: color-mix(in oklch, var(--foreground) 80%, var(--background));
  }

  [data-uiify-button]:disabled,
  [data-uiify-button][data-disabled] {
    opacity: 0.5;
    cursor: not-allowed;
  }

  /* Secondary: tonal low-emphasis fill. */
  [data-uiify-button][data-variant="secondary"] {
    --uiify-button-rim: light-dark(rgb(0 0 0 / 5%), rgb(255 255 255 / 10%));
    --uiify-button-wash: light-dark(rgb(255 255 255 / 20%), rgb(255 255 255 / 5%));

    background-color: color-mix(in oklch, var(--foreground) 10%, transparent);
    color: var(--foreground);
  }

  /* Outline: no fill and no wash, a hairline border in the text colour. Its rim is a full
     border-width ring laid over that border, so the top edge reads slightly stronger and
     fades into the plain border below. */
  [data-uiify-button][data-variant="outline"] {
    --uiify-button-rim: color-mix(in oklch, var(--foreground) 25%, transparent);

    border-color: color-mix(in oklch, var(--foreground) 20%, transparent);
    background-color: transparent;
    color: var(--foreground);
  }

  [data-uiify-button][data-variant="outline"]::before {
    content: none;
  }

  [data-uiify-button][data-variant="outline"]::after {
    inset: calc(-1 * var(--border-width));
    padding: var(--border-width);
  }

  [data-uiify-button][data-variant="outline"]:active:not(:disabled, [data-disabled]) {
    background-color: color-mix(in oklch, var(--foreground) 16%, transparent);
  }

  /* Ghost: text only; the tonal surface appears on hover. Flat, so no light layers. */
  [data-uiify-button][data-variant="ghost"] {
    background-color: transparent;
    color: var(--foreground);
  }

  [data-uiify-button][data-variant="ghost"]::before,
  [data-uiify-button][data-variant="ghost"]::after {
    content: none;
  }

  [data-uiify-button][data-variant="ghost"]:active:not(:disabled, [data-disabled]) {
    background-color: color-mix(in oklch, var(--foreground) 16%, transparent);
  }

  [data-uiify-button][data-variant="secondary"]:active:not(:disabled, [data-disabled]) {
    background-color: color-mix(in oklch, var(--foreground) 26%, transparent);
  }

  /* Destructive: irreversible or dangerous actions. */
  [data-uiify-button][data-variant="destructive"] {
    --uiify-button-wash: rgb(255 255 255 / 15%);

    background-color: var(--destructive);
    color: var(--destructive-foreground);
  }

  [data-uiify-button][data-variant="destructive"]:active:not(:disabled, [data-disabled]) {
    background-color: color-mix(in oklch, var(--destructive), black 20%);
  }

  @media (any-hover: hover) and (any-pointer: fine) {
    [data-uiify-button][data-variant="outline"]:hover:not(:disabled, [data-disabled]),
    [data-uiify-button][data-variant="ghost"]:hover:not(:disabled, [data-disabled]) {
      background-color: color-mix(in oklch, var(--foreground) 10%, transparent);
    }

    [data-uiify-button][data-variant="secondary"]:hover:not(:disabled, [data-disabled]) {
      background-color: color-mix(in oklch, var(--foreground) 20%, transparent);
    }

    [data-uiify-button][data-variant="destructive"]:hover:not(:disabled, [data-disabled]) {
      background-color: color-mix(in oklch, var(--destructive), black 12%);
    }
  }
}

@layer components {
  /* Selected: the chosen item of a set or a toggle that is on, filled with the brand colour.
     The state is read from whatever already carries it: the `selected` prop, a pressed toggle,
     the current page, or — for a label styled as a button — the checked native control right
     before it, so a toggle works with no JavaScript. */
  [data-uiify-button]:is([data-selected], [aria-pressed="true"], [aria-current="page"]),
  :checked + [data-uiify-button] {
    --uiify-button-rim: rgb(255 255 255 / 20%);
    --uiify-button-wash: rgb(255 255 255 / 15%);

    border-color: transparent;
    background-color: var(--primary);
    color: var(--primary-foreground);
  }

  @media (any-hover: hover) and (any-pointer: fine) {
    [data-uiify-button]:is([data-selected], [aria-pressed="true"], [aria-current="page"]):hover:not(
        :disabled,
        [data-disabled]
      ),
    :checked:not(:disabled) + [data-uiify-button]:hover {
      background-color: color-mix(in oklch, var(--primary) 88%, var(--primary-foreground));
    }
  }

  /* A label styled as a button follows the native control it belongs to. */
  :disabled + [data-uiify-button] {
    opacity: 0.5;
    cursor: not-allowed;
  }

  [data-uiify-button][hidden] {
    display: none;
  }
}

@layer components {
  /* Link: an inline text action with no surface, on a button or an anchor alike. */
  [data-uiify-button][data-variant="link"],
  [data-uiify-button][data-variant="link"]:active {
    padding-inline: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--primary);
    text-decoration: underline;
    text-underline-offset: 0.2em;
  }
  [data-uiify-button][data-variant="link"] {
    min-inline-size: 0;
  }

  @media (any-hover: hover) and (any-pointer: fine) {
    [data-uiify-button][data-variant="link"]:hover {
      padding-inline: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
      color: var(--primary);
      text-decoration: underline;
      text-underline-offset: 0.2em;
    }
  }

  [data-uiify-button][data-variant="link"]::before,
  [data-uiify-button][data-variant="link"]::after {
    content: none;
  }

  [data-uiify-button][data-variant="link"]:focus-visible {
    outline: 2px solid var(--ring);
    outline-offset: 3px;
  }
}

/* Dropdown menu — a compact command surface with explicit anatomy hooks. */

@layer components {
  [data-uiify-menu-bar] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-xs);
    padding: var(--space-xs);
    border: var(--border-width) solid var(--border);
    border-radius: var(--radius-lg);
    corner-shape: squircle;
    background-color: var(--background);
  }

  :where(
    [data-uiify-menu] :is([data-part="content"], [data-part="sub-content"]),
    [data-uiify-menu]:is([data-part="content"], [data-part="sub-content"])
  ):where(:not([popover]), :popover-open) {
    display: flex;
  }

  :where(
    [data-uiify-menu] :is([data-part="content"], [data-part="sub-content"]),
    [data-uiify-menu]:is([data-part="content"], [data-part="sub-content"])
  ) {
    flex-direction: column;
    min-inline-size: 12rem;
    max-block-size: min(24rem, calc(100dvb - 2rem));
    overflow-block: auto;
    overscroll-behavior: contain;
    padding: var(--space-xs);
    border: var(--border-width) solid var(--border);
    border-radius: var(--radius-lg);
    corner-shape: squircle;
    background-color: var(--popover);
    color: var(--popover-foreground);
    box-shadow: var(--shadow-popover);
    transform-origin: var(--transform-origin, top);
  }

  :where(
    [data-uiify-menu] :is([data-part="content"], [data-part="sub-content"]),
    [data-uiify-menu]:is([data-part="content"], [data-part="sub-content"])
  )[data-state="closed"] {
    display: none;
  }

  [data-uiify-menu]
    :is(
      [data-part="item"],
      [data-part="checkbox-item"],
      [data-part="radio-item"],
      [data-part="sub-trigger"]
    ) {
    display: flex;
    align-items: center;
    column-gap: var(--space-md);
    padding-block: var(--space-sm);
    padding-inline: var(--space-md);
    border-radius: calc(var(--radius-lg) - var(--space-xs));
    corner-shape: squircle;
    cursor: pointer;
    user-select: none;
    inline-size: 100%;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    font-size: var(--text-sm) !important;
    line-height: var(--leading-normal);
    text-align: start;
    appearance: none;
  }

  [data-uiify-menu]
    :is(
      [data-part="item"],
      [data-part="checkbox-item"],
      [data-part="radio-item"],
      [data-part="sub-trigger"]
    ):is(:hover, :focus-visible, [data-highlighted]) {
    background-color: var(--accent);
    color: var(--accent-foreground);
    outline: none;
  }

  [data-uiify-menu]
    [data-part="radio-item"]:hover[role="menuitemradio"][data-state="checked"]
    [data-part="item-indicator"],
  [data-uiify-menu]
    [data-part="radio-item"]:focus-visible[role="menuitemradio"][data-state="checked"]
    [data-part="item-indicator"],
  [data-uiify-menu]
    [data-part="radio-item"][data-highlighted][role="menuitemradio"][data-state="checked"]
    [data-part="item-indicator"] {
    border-color: var(--accent-foreground);
  }

  [data-uiify-menu]
    :is(
      [data-part="item"],
      [data-part="checkbox-item"],
      [data-part="radio-item"],
      [data-part="sub-trigger"]
    ):is([aria-disabled="true"], [data-disabled]) {
    opacity: 0.5;
    pointer-events: none;
  }

  [data-uiify-menu]
    :is(
      [data-part="item"],
      [data-part="checkbox-item"],
      [data-part="radio-item"],
      [data-part="sub-trigger"]
    )[data-danger] {
    color: var(--destructive, var(--foreground));
  }

  [data-uiify-menu]
    :is(
      [data-part="item"],
      [data-part="checkbox-item"],
      [data-part="radio-item"],
      [data-part="sub-trigger"]
    )[data-danger]:is(:hover, :focus-visible, [data-highlighted]) {
    background-color: var(--destructive);
    color: var(--destructive-foreground);
  }

  [data-uiify-menu] [data-part="item-icon"],
  [data-uiify-menu] [data-part="item-indicator"] {
    display: inline-grid;
    place-items: center;
    inline-size: 1.25rem;
    block-size: 1.25rem;
    flex: 0 0 1.25rem;
  }

  [data-uiify-menu] [data-part="item-indicator"] {
    border: var(--border-width) solid var(--input);
    border-radius: var(--radius-xs);
    corner-shape: squircle;
    color: transparent;
  }

  [role="menuitemcheckbox"][data-state="checked"] [data-part="item-indicator"],
  [role="menuitemcheckbox"][data-state="indeterminate"] [data-part="item-indicator"] {
    border-color: var(--primary);
    background: var(--primary);
    color: var(--primary-foreground);
  }

  [role="menuitemcheckbox"][data-state="checked"] [data-part="item-indicator"]::before {
    inline-size: 0.65rem;
    block-size: 0.65rem;
    background-color: currentcolor;
    clip-path: polygon(14% 44%, 0 65%, 38% 100%, 100% 22%, 84% 6%, 38% 68%);
    content: "";
  }

  [role="menuitemcheckbox"][data-state="indeterminate"] [data-part="item-indicator"]::before {
    inline-size: 0.65rem;
    block-size: 0.12rem;
    background: currentcolor;
    content: "";
  }

  [role="menuitemradio"] [data-part="item-indicator"] {
    border-radius: 50%;
  }

  [role="menuitemradio"][data-state="checked"] [data-part="item-indicator"] {
    border-width: 5px;
    border-color: var(--primary);
    background: var(--card);
  }

  [role="menuitemradio"][data-state="checked"] [data-part="item-indicator"]::before {
    content: none;
  }

  [data-uiify-menu] [data-part="item-icon"] > svg,
  [data-uiify-menu] [data-part="item-indicator"] > svg {
    display: block;
    inline-size: 100%;
    block-size: 100%;
  }

  [data-uiify-menu] [data-part="item-text"] {
    display: grid;
    flex: 1 1 auto;
    min-inline-size: 0;
  }

  [data-uiify-menu] [data-part="item-description"] {
    color: var(--muted-foreground);
    font-size: var(--text-xs);
    line-height: var(--leading-normal);
  }

  [data-uiify-menu]
    :is(
      [data-part="item"],
      [data-part="checkbox-item"],
      [data-part="radio-item"],
      [data-part="sub-trigger"]
    ):is(:hover, :focus-visible, [data-highlighted])
    [data-part="item-description"] {
    color: inherit;
    opacity: 0.8;
  }

  [data-uiify-menu] [data-part="shortcut"] {
    margin-inline-start: auto;
    color: var(--muted-foreground);
    font-size: var(--text-xs);
    font-family: inherit;
    font-weight: inherit;
    line-height: 1;
    white-space: nowrap;
  }

  [data-uiify-menu]
    :is(
      [data-part="item"],
      [data-part="checkbox-item"],
      [data-part="radio-item"],
      [data-part="sub-trigger"]
    ):is(:hover, :focus-visible, [data-highlighted])
    [data-part="shortcut"] {
    color: inherit;
    opacity: 0.85;
  }

  [data-uiify-menu] [data-part="label"] {
    padding-block: var(--space-xs);
    padding-inline: var(--space-md);
    color: var(--muted-foreground);
    font-size: var(--text-xs);
    font-weight: var(--weight-semibold);
  }

  [data-uiify-menu] [data-part="separator"] {
    block-size: var(--border-width);
    margin-block: var(--space-xs);
    margin-inline: calc(-1 * var(--space-xs));
    background-color: var(--border);
  }

  [data-uiify-menu] [data-part="sub-content"] {
    min-inline-size: 11rem;
  }

  [data-uiify-menu] [data-part="sub-content"][data-side="right"] {
    --uiify-anchor-offset: 0;

    inset-block-start: calc(anchor(start) - var(--space-xs));
  }

  @media (prefers-reduced-motion: no-preference) {
    :where(
      [data-uiify-menu] :is([data-part="content"], [data-part="sub-content"]),
      [data-uiify-menu]:is([data-part="content"], [data-part="sub-content"])
    ) {
      transition: var(--transition-presence);
    }

    :where(
        [data-uiify-menu] :is([data-part="content"], [data-part="sub-content"]),
        [data-uiify-menu]:is([data-part="content"], [data-part="sub-content"])
      )[popover]:not(:popover-open) {
      opacity: 0;
      scale: var(--presence-scale);
    }

    @starting-style {
      :where(
        [data-uiify-menu] :is([data-part="content"], [data-part="sub-content"]),
        [data-uiify-menu]:is([data-part="content"], [data-part="sub-content"])
      ):popover-open {
        opacity: 0;
        scale: var(--presence-scale);
      }
    }
  }
}

@layer components {
  :is([data-uiify-dropdown-menu], [data-uiify-context-menu])
    [role="menuitemradio"]
    [data-part="item-indicator"] {
    border-radius: 50%;
    corner-shape: round;
  }
}
import { useState } from "react";
import { DropdownMenu } from "@gunkin/uiify";

function MenuBar() {
  const [openMenu, setOpenMenu] = useState<string>();

  return (
    <DropdownMenu.Bar
      className="
        inline-flex items-center gap-xs p-xs border-[length:var(--border-width)] border-solid border-border rounded-lg
        [corner-shape:squircle] bg-background
      "
    >
      <DropdownMenu.Root open={openMenu === "file"} onOpenChange={(next) => setOpenMenu(next ? "file" : undefined)}>
        <DropdownMenu.Trigger
          className={
            "focus-visible:[outline:none] focus-visible:[box-shadow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(" +
            "--ring)_16%,_transparent)] [--uiify-button-rim:rgb(255_255_255_/_20%)] [--uiify-button-wash:light-dark(" +
            "rgb(255_255_255_/_15%),_rgb(255_255_255_/_30%))] relative isolate inline-flex items-center justify-cent" +
            "er [gap:0.375rem] [min-block-size:44px] [min-inline-size:44px] py-0 [padding-inline:1.25rem] border-[le" +
            "ngth:var(--border-width)] border-solid border-transparent rounded-[var(--radius-full)] bg-foreground bg" +
            "-clip-padding text-background text-base font-[number:var(--weight-medium)] leading-6 no-underline curso" +
            "r-pointer [transition:var(--transition-colors)] before:content-[''] before:absolute before:inset-0 befo" +
            "re:z-[-1] before:[border-radius:inherit] before:pointer-events-none after:content-[''] after:absolute a" +
            "fter:inset-0 after:z-[-1] after:[border-radius:inherit] after:pointer-events-none before:[background-co" +
            "lor:var(--uiify-button-wash)] before:[filter:blur(10px)] before:[translate:0_-50%] before:[clip-path:in" +
            "set(50%_0_-50%_0_round_var(--radius-full))] after:[padding:0.5px] after:[background-image:linear-gradie" +
            "nt(to_bottom,_var(--uiify-button-rim),_transparent_75%)] after:[mask:linear-gradient(#fff_0_0)_content-" +
            "box_exclude,_linear-gradient(#fff_0_0)] [&:is([data-size=sm],[data-size=icon-sm])]:[min-block-size:32px" +
            "] [&:is([data-size=sm],[data-size=icon-sm])]:[min-inline-size:32px] [&:is([data-size=sm],[data-size=ico" +
            "n-sm])]:[padding-inline:0.75rem] [&:is([data-size=sm],[data-size=icon-sm])]:[gap:0.25rem] [&:is([data-s" +
            "ize=sm],[data-size=icon-sm])]:text-sm [&:is([data-size=sm],[data-size=icon-sm])]:leading-5 [&:is([data-" +
            "size=lg],[data-size=icon-lg])]:[min-block-size:56px] [&:is([data-size=lg],[data-size=icon-lg])]:[min-in" +
            "line-size:56px] [&:is([data-size=lg],[data-size=icon-lg])]:[padding-inline:1.75rem] [&:is([data-size=lg" +
            "],[data-size=icon-lg])]:text-lg [&:is([data-size=lg],[data-size=icon-lg])]:leading-7 [&[data-size^=icon" +
            "]]:px-0 [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:hover:[&:not(:disabled,[data-disabled])]:[b" +
            "ackground-color:color-mix(in_oklch,_var(--foreground)_90%,_var(--background))] active:[&:not(:disabled," +
            "[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_80%,_var(--background))] disa" +
            "bled:opacity-50 disabled:cursor-not-allowed data-[disabled]:opacity-50 data-[disabled]:cursor-not-allow" +
            "ed data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=" +
            "page]))]:[--uiify-button-rim:light-dark(rgb(0_0_0_/_5%),_rgb(255_255_255_/_10%))] data-[variant=seconda" +
            "ry]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-button" +
            "-wash:light-dark(rgb(255_255_255_/_20%),_rgb(255_255_255_/_5%))] data-[variant=secondary]:[&:where(:not" +
            "(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[background-color:color-mix(in_o" +
            "klch,_var(--foreground)_10%,_transparent)] data-[variant=secondary]:[&:where(:not(:checked+*,[data-sele" +
            "cted],[aria-pressed=true],[aria-current=page]))]:text-foreground data-[variant=outline]:[&:where(:not(:" +
            "checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-button-rim:color-mix(in_o" +
            "klch,_var(--foreground)_25%,_transparent)] data-[variant=outline]:[&:where(:not(:checked+*,[data-select" +
            "ed],[aria-pressed=true],[aria-current=page]))]:[border-color:color-mix(in_oklch,_var(--foreground)_20%," +
            "_transparent)] data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[ari" +
            "a-current=page]))]:bg-transparent data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria" +
            "-pressed=true],[aria-current=page]))]:text-foreground data-[variant=outline]:before:content-none data-[" +
            "variant=outline]:after:[inset:calc(-1_*_var(--border-width))] data-[variant=outline]:after:[padding:var" +
            "(--border-width)] data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[" +
            "aria-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_v" +
            "ar(--foreground)_16%,_transparent)] data-[variant=ghost]:[&:where(:not(:checked+*,[data-selected],[aria" +
            "-pressed=true],[aria-current=page]))]:bg-transparent data-[variant=ghost]:[&:where(:not(:checked+*,[dat" +
            "a-selected],[aria-pressed=true],[aria-current=page]))]:text-foreground data-[variant=ghost]:before:cont" +
            "ent-none data-[variant=ghost]:after:content-none data-[variant=ghost]:[&:where(:not(:checked+*,[data-se" +
            "lected],[aria-pressed=true],[aria-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[backgroun" +
            "d-color:color-mix(in_oklch,_var(--foreground)_16%,_transparent)] data-[variant=secondary]:[&:where(:not" +
            "(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:active:[&:not(:disabled,[data-di" +
            "sabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_26%,_transparent)] data-[variant=dest" +
            "ructive]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-b" +
            "utton-wash:rgb(255_255_255_/_15%)] data-[variant=destructive]:[&:where(:not(:checked+*,[data-selected]," +
            "[aria-pressed=true],[aria-current=page]))]:bg-destructive data-[variant=destructive]:text-destructive-f" +
            "oreground data-[variant=destructive]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria" +
            "-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(-" +
            "-destructive),_black_20%)] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=outline]:[" +
            "&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:disabl" +
            "ed,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_10%,_transparent)] [@media" +
            "_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=ghost]:[&:where(:not(:checked+*,[data-select" +
            "ed],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:disabled,[data-disabled])]:[background-col" +
            "or:color-mix(in_oklch,_var(--foreground)_10%,_transparent)] [@media_(any-hover:_hover)_and_(any-pointer" +
            ":_fine)]:data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-cu" +
            "rrent=page]))]:hover:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--for" +
            "eground)_20%,_transparent)] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=destructi" +
            "ve]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:d" +
            "isabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--destructive),_black_12%)] [&:is([" +
            "data-selected],[aria-pressed=true],[aria-current=page])]:[--uiify-button-rim:rgb(255_255_255_/_20%)] [&" +
            ":is([data-selected],[aria-pressed=true],[aria-current=page])]:[--uiify-button-wash:rgb(255_255_255_/_15" +
            "%)] [&:is([data-selected],[aria-pressed=true],[aria-current=page])]:border-transparent [&:is([data-sele" +
            "cted],[aria-pressed=true],[aria-current=page])]:bg-primary [&:is([data-selected],[aria-pressed=true],[a" +
            "ria-current=page])]:text-primary-foreground [:checked+&]:[--uiify-button-rim:rgb(255_255_255_/_20%)] [:" +
            "checked+&]:[--uiify-button-wash:rgb(255_255_255_/_15%)] [:checked+&]:border-transparent [:checked+&]:bg" +
            "-primary [:checked+&]:text-primary-foreground [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:[&:is" +
            "([data-selected],[aria-pressed=true],[aria-current=page]):hover:not(:disabled,[data-disabled])]:[backgr" +
            "ound-color:color-mix(in_oklch,_var(--primary)_88%,_var(--primary-foreground))] [@media_(any-hover:_hove" +
            "r)_and_(any-pointer:_fine)]:[:checked:not(:disabled)+&:hover]:[background-color:color-mix(in_oklch,_var" +
            "(--primary)_88%,_var(--primary-foreground))] [:disabled+&]:opacity-50 [:disabled+&]:cursor-not-allowed " +
            "[&[hidden]]:hidden data-[variant=link]:px-0 data-[variant=link]:border-0 data-[variant=link]:border-cur" +
            "rent data-[variant=link]:border-none data-[variant=link]:rounded-none data-[variant=link]:bg-transparen" +
            "t data-[variant=link]:text-primary data-[variant=link]:underline data-[variant=link]:[text-underline-of" +
            "fset:0.2em] data-[variant=link]:active:px-0 data-[variant=link]:active:border-0 data-[variant=link]:act" +
            "ive:border-current data-[variant=link]:active:border-none data-[variant=link]:active:rounded-none data-" +
            "[variant=link]:active:bg-transparent data-[variant=link]:active:text-primary data-[variant=link]:active" +
            ":underline data-[variant=link]:active:[text-underline-offset:0.2em] data-[variant=link]:[min-inline-siz" +
            "e:0] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:px-0 [@media_(any-ho" +
            "ver:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:border-0 [@media_(any-hover:_hover)_and_" +
            "(any-pointer:_fine)]:data-[variant=link]:hover:border-current [@media_(any-hover:_hover)_and_(any-point" +
            "er:_fine)]:data-[variant=link]:hover:border-none [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:da" +
            "ta-[variant=link]:hover:rounded-none [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=" +
            "link]:hover:bg-transparent [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hove" +
            "r:text-primary [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:underline " +
            "[@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:[text-underline-offset:0." +
            "2em] data-[variant=link]:before:content-none data-[variant=link]:after:content-none data-[variant=link]" +
            ":focus-visible:[outline:2px_solid_var(--ring)] data-[variant=link]:focus-visible:[outline-offset:3px] [" +
            "[data-uiify-toggle]>input:focus-visible+&]:[box-shadow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(" +
            "--ring)_16%,_transparent)] [[data-uiify-toggle-group]_[data-part=item]>input:focus-visible+&]:[box-shad" +
            "ow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(--ring)_16%,_transparent)] [[data-uiify-modal][data-" +
            "part=close]&]:border-transparent [[data-uiify-modal][data-part=close]&]:[background-color:color-mix(in_" +
            "oklch,_var(--foreground)_8%,_transparent)] [[data-uiify-modal][data-part=close]&]:text-foreground [[dat" +
            "a-uiify-modal][data-part=close]&:hover]:[background-color:color-mix(in_oklch,_var(--foreground)_14%,_tr" +
            "ansparent)] [[data-uiify-modal][data-part=close]&:active]:[background-color:color-mix(in_oklch,_var(--f" +
            "oreground)_20%,_transparent)] [[data-uiify-pagination]_span&:not([data-disabled])]:cursor-default [[dat" +
            "a-uiify-input-group]>[data-part=addon]>&]:[min-inline-size:0] [[data-uiify-input-group]>[data-part=addo" +
            "n]>&]:[max-inline-size:100%] [[data-uiify-input-group]>[data-part=addon]>&]:whitespace-normal [[data-ui" +
            "ify-input-group]>[data-part=addon]>&]:[overflow-wrap:anywhere] [[data-uiify-item-content]>&]:[justify-s" +
            "elf:start]"
          }
          role="menuitem"
          openOnHover
        >
          File
        </DropdownMenu.Trigger>
        <DropdownMenu.Content
          className="
            [&[data-positioning=native]]:[--uiify-anchor-offset:var(--space-sm)]
            [&_[data-positioning=native]]:[--uiify-anchor-offset:var(--space-sm)]
            [&[popover]:popover-open:not([data-positioning=native])]:[margin:revert]
            [&_[popover]:popover-open:not([data-positioning=native])]:[margin:revert] flex-col [min-inline-size:12rem]
            [max-block-size:min(24rem,calc(100dvb_-_2rem))] overflow-y-auto overscroll-contain p-xs
            border-[length:var(--border-width)] border-solid border-border rounded-lg [corner-shape:squircle] bg-popover
            text-popover-foreground shadow-popover [transform-origin:var(--transform-origin,top)]
            data-[state=closed]:hidden [&:where(:not([popover]),:popover-open)]:flex
            [&[data-part=sub-content]]:[min-inline-size:11rem]
            [&[data-part=sub-content][data-side=right]]:[--uiify-anchor-offset:0]
            [&[data-part=sub-content][data-side=right]]:[inset-block-start:calc(anchor(start)_-_var(--space-xs))]
            motion-safe:[transition:var(--transition-presence)] motion-safe:[&:not(:popover-open)]:opacity-0
            motion-safe:[&:not(:popover-open)]:[scale:var(--presence-scale)]
            motion-safe:starting:[&:popover-open]:opacity-0
            motion-safe:starting:[&:popover-open]:[scale:var(--presence-scale)]
          "
        >
          <DropdownMenu.Item
            className={
              "flex items-center gap-md w-full py-sm px-md border-0 rounded-[calc(var(--radius-lg)_-_var(--space-xs)" +
              ")] [corner-shape:squircle] bg-transparent text-inherit [font-family:inherit] [font-weight:inherit] te" +
              "xt-sm [line-height:var(--leading-normal)] text-start cursor-pointer select-none appearance-none hover" +
              ":bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground " +
              "focus-visible:outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground ari" +
              "a-[disabled=true]:opacity-50 aria-[disabled=true]:pointer-events-none data-[disabled]:opacity-50 data" +
              "-[disabled]:pointer-events-none data-[danger]:text-destructive data-[danger]:hover:bg-destructive dat" +
              "a-[danger]:hover:text-destructive-foreground data-[danger]:focus-visible:bg-destructive data-[danger]" +
              ":focus-visible:text-destructive-foreground data-[danger]:data-[highlighted]:bg-destructive data-[dang" +
              "er]:data-[highlighted]:text-destructive-foreground [&_[data-part=item-icon]]:inline-grid [&_[data-par" +
              "t=item-icon]]:place-items-center [&_[data-part=item-icon]]:size-5 [&_[data-part=item-icon]]:flex-[0_0" +
              "_1.25rem] [&_[data-part=item-indicator]]:inline-grid [&_[data-part=item-indicator]]:place-items-cente" +
              "r [&_[data-part=item-indicator]]:size-5 [&_[data-part=item-indicator]]:flex-[0_0_1.25rem] [&_[data-pa" +
              "rt=item-indicator]>svg]:block [&_[data-part=item-indicator]>svg]:size-full [&[role=menuitemcheckbox]_" +
              "[data-part=item-indicator]]:border-[length:var(--border-width)] [&[role=menuitemcheckbox]_[data-part=" +
              "item-indicator]]:border-input [&[role=menuitemcheckbox]_[data-part=item-indicator]]:rounded-xs [&[rol" +
              "e=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:border-primary [&[role=menuitemch" +
              "eckbox][data-state=checked]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckbox][data-sta" +
              "te=checked]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemcheckbox][data-state=" +
              "checked]_[data-part=item-indicator]::before]:content-[''] [&[role=menuitemcheckbox][data-state=checke" +
              "d]_[data-part=item-indicator]::before]:size-[0.65rem] [&[role=menuitemcheckbox][data-state=checked]_[" +
              "data-part=item-indicator]::before]:bg-current [&[role=menuitemcheckbox][data-state=checked]_[data-par" +
              "t=item-indicator]::before]:[clip-path:polygon(14%_44%,0_65%,38%_100%,100%_22%,84%_6%,38%_68%)] [&[rol" +
              "e=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:border-primary [&[role=menu" +
              "itemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckb" +
              "ox][data-state=indeterminate]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemche" +
              "ckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:content-[''] [&[role=menuitemche" +
              "ckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:w-[0.65rem] [&[role=menuitemchec" +
              "kbox][data-state=indeterminate]_[data-part=item-indicator]::before]:h-[0.12rem] [&[role=menuitemcheck" +
              "box][data-state=indeterminate]_[data-part=item-indicator]::before]:bg-current [&[role=menuitemradio]_" +
              "[data-part=item-indicator]]:rounded-full [&[role=menuitemradio][data-state=checked]_[data-part=item-i" +
              "ndicator]]:border-[5px] [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:border" +
              "-primary [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:bg-card [&_[data-part" +
              "=item-text]]:grid [&_[data-part=item-text]]:flex-auto [&_[data-part=item-text]]:[min-inline-size:0] [" +
              "&_[data-part=item-description]]:text-muted-foreground [&_[data-part=item-description]]:text-xs [&_[da" +
              "ta-part=item-description]]:[line-height:var(--leading-normal)] [&_[data-part=shortcut]]:ms-auto [&_[d" +
              "ata-part=shortcut]]:text-muted-foreground [&_[data-part=shortcut]]:text-xs [&_[data-part=shortcut]]:l" +
              "eading-none [&_[data-part=shortcut]]:whitespace-nowrap"
            }
          >
            New
          </DropdownMenu.Item>
          <DropdownMenu.Separator
            className="
              [block-size:var(--border-width)] [margin-block:var(--space-xs)] [margin-inline:calc(-1_*var(--space-xs))]
              bg-border
            "
          />
          <DropdownMenu.Item
            className={
              "flex items-center gap-md w-full py-sm px-md border-0 rounded-[calc(var(--radius-lg)_-_var(--space-xs)" +
              ")] [corner-shape:squircle] bg-transparent text-inherit [font-family:inherit] [font-weight:inherit] te" +
              "xt-sm [line-height:var(--leading-normal)] text-start cursor-pointer select-none appearance-none hover" +
              ":bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground " +
              "focus-visible:outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground ari" +
              "a-[disabled=true]:opacity-50 aria-[disabled=true]:pointer-events-none data-[disabled]:opacity-50 data" +
              "-[disabled]:pointer-events-none data-[danger]:text-destructive data-[danger]:hover:bg-destructive dat" +
              "a-[danger]:hover:text-destructive-foreground data-[danger]:focus-visible:bg-destructive data-[danger]" +
              ":focus-visible:text-destructive-foreground data-[danger]:data-[highlighted]:bg-destructive data-[dang" +
              "er]:data-[highlighted]:text-destructive-foreground [&_[data-part=item-icon]]:inline-grid [&_[data-par" +
              "t=item-icon]]:place-items-center [&_[data-part=item-icon]]:size-5 [&_[data-part=item-icon]]:flex-[0_0" +
              "_1.25rem] [&_[data-part=item-indicator]]:inline-grid [&_[data-part=item-indicator]]:place-items-cente" +
              "r [&_[data-part=item-indicator]]:size-5 [&_[data-part=item-indicator]]:flex-[0_0_1.25rem] [&_[data-pa" +
              "rt=item-indicator]>svg]:block [&_[data-part=item-indicator]>svg]:size-full [&[role=menuitemcheckbox]_" +
              "[data-part=item-indicator]]:border-[length:var(--border-width)] [&[role=menuitemcheckbox]_[data-part=" +
              "item-indicator]]:border-input [&[role=menuitemcheckbox]_[data-part=item-indicator]]:rounded-xs [&[rol" +
              "e=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:border-primary [&[role=menuitemch" +
              "eckbox][data-state=checked]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckbox][data-sta" +
              "te=checked]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemcheckbox][data-state=" +
              "checked]_[data-part=item-indicator]::before]:content-[''] [&[role=menuitemcheckbox][data-state=checke" +
              "d]_[data-part=item-indicator]::before]:size-[0.65rem] [&[role=menuitemcheckbox][data-state=checked]_[" +
              "data-part=item-indicator]::before]:bg-current [&[role=menuitemcheckbox][data-state=checked]_[data-par" +
              "t=item-indicator]::before]:[clip-path:polygon(14%_44%,0_65%,38%_100%,100%_22%,84%_6%,38%_68%)] [&[rol" +
              "e=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:border-primary [&[role=menu" +
              "itemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckb" +
              "ox][data-state=indeterminate]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemche" +
              "ckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:content-[''] [&[role=menuitemche" +
              "ckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:w-[0.65rem] [&[role=menuitemchec" +
              "kbox][data-state=indeterminate]_[data-part=item-indicator]::before]:h-[0.12rem] [&[role=menuitemcheck" +
              "box][data-state=indeterminate]_[data-part=item-indicator]::before]:bg-current [&[role=menuitemradio]_" +
              "[data-part=item-indicator]]:rounded-full [&[role=menuitemradio][data-state=checked]_[data-part=item-i" +
              "ndicator]]:border-[5px] [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:border" +
              "-primary [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:bg-card [&_[data-part" +
              "=item-text]]:grid [&_[data-part=item-text]]:flex-auto [&_[data-part=item-text]]:[min-inline-size:0] [" +
              "&_[data-part=item-description]]:text-muted-foreground [&_[data-part=item-description]]:text-xs [&_[da" +
              "ta-part=item-description]]:[line-height:var(--leading-normal)] [&_[data-part=shortcut]]:ms-auto [&_[d" +
              "ata-part=shortcut]]:text-muted-foreground [&_[data-part=shortcut]]:text-xs [&_[data-part=shortcut]]:l" +
              "eading-none [&_[data-part=shortcut]]:whitespace-nowrap"
            }
          >
            Quit
          </DropdownMenu.Item>
        </DropdownMenu.Content>
      </DropdownMenu.Root>

      <DropdownMenu.Root open={openMenu === "edit"} onOpenChange={(next) => setOpenMenu(next ? "edit" : undefined)}>
        <DropdownMenu.Trigger
          className={
            "focus-visible:[outline:none] focus-visible:[box-shadow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(" +
            "--ring)_16%,_transparent)] [--uiify-button-rim:rgb(255_255_255_/_20%)] [--uiify-button-wash:light-dark(" +
            "rgb(255_255_255_/_15%),_rgb(255_255_255_/_30%))] relative isolate inline-flex items-center justify-cent" +
            "er [gap:0.375rem] [min-block-size:44px] [min-inline-size:44px] py-0 [padding-inline:1.25rem] border-[le" +
            "ngth:var(--border-width)] border-solid border-transparent rounded-[var(--radius-full)] bg-foreground bg" +
            "-clip-padding text-background text-base font-[number:var(--weight-medium)] leading-6 no-underline curso" +
            "r-pointer [transition:var(--transition-colors)] before:content-[''] before:absolute before:inset-0 befo" +
            "re:z-[-1] before:[border-radius:inherit] before:pointer-events-none after:content-[''] after:absolute a" +
            "fter:inset-0 after:z-[-1] after:[border-radius:inherit] after:pointer-events-none before:[background-co" +
            "lor:var(--uiify-button-wash)] before:[filter:blur(10px)] before:[translate:0_-50%] before:[clip-path:in" +
            "set(50%_0_-50%_0_round_var(--radius-full))] after:[padding:0.5px] after:[background-image:linear-gradie" +
            "nt(to_bottom,_var(--uiify-button-rim),_transparent_75%)] after:[mask:linear-gradient(#fff_0_0)_content-" +
            "box_exclude,_linear-gradient(#fff_0_0)] [&:is([data-size=sm],[data-size=icon-sm])]:[min-block-size:32px" +
            "] [&:is([data-size=sm],[data-size=icon-sm])]:[min-inline-size:32px] [&:is([data-size=sm],[data-size=ico" +
            "n-sm])]:[padding-inline:0.75rem] [&:is([data-size=sm],[data-size=icon-sm])]:[gap:0.25rem] [&:is([data-s" +
            "ize=sm],[data-size=icon-sm])]:text-sm [&:is([data-size=sm],[data-size=icon-sm])]:leading-5 [&:is([data-" +
            "size=lg],[data-size=icon-lg])]:[min-block-size:56px] [&:is([data-size=lg],[data-size=icon-lg])]:[min-in" +
            "line-size:56px] [&:is([data-size=lg],[data-size=icon-lg])]:[padding-inline:1.75rem] [&:is([data-size=lg" +
            "],[data-size=icon-lg])]:text-lg [&:is([data-size=lg],[data-size=icon-lg])]:leading-7 [&[data-size^=icon" +
            "]]:px-0 [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:hover:[&:not(:disabled,[data-disabled])]:[b" +
            "ackground-color:color-mix(in_oklch,_var(--foreground)_90%,_var(--background))] active:[&:not(:disabled," +
            "[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_80%,_var(--background))] disa" +
            "bled:opacity-50 disabled:cursor-not-allowed data-[disabled]:opacity-50 data-[disabled]:cursor-not-allow" +
            "ed data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=" +
            "page]))]:[--uiify-button-rim:light-dark(rgb(0_0_0_/_5%),_rgb(255_255_255_/_10%))] data-[variant=seconda" +
            "ry]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-button" +
            "-wash:light-dark(rgb(255_255_255_/_20%),_rgb(255_255_255_/_5%))] data-[variant=secondary]:[&:where(:not" +
            "(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[background-color:color-mix(in_o" +
            "klch,_var(--foreground)_10%,_transparent)] data-[variant=secondary]:[&:where(:not(:checked+*,[data-sele" +
            "cted],[aria-pressed=true],[aria-current=page]))]:text-foreground data-[variant=outline]:[&:where(:not(:" +
            "checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-button-rim:color-mix(in_o" +
            "klch,_var(--foreground)_25%,_transparent)] data-[variant=outline]:[&:where(:not(:checked+*,[data-select" +
            "ed],[aria-pressed=true],[aria-current=page]))]:[border-color:color-mix(in_oklch,_var(--foreground)_20%," +
            "_transparent)] data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[ari" +
            "a-current=page]))]:bg-transparent data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria" +
            "-pressed=true],[aria-current=page]))]:text-foreground data-[variant=outline]:before:content-none data-[" +
            "variant=outline]:after:[inset:calc(-1_*_var(--border-width))] data-[variant=outline]:after:[padding:var" +
            "(--border-width)] data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[" +
            "aria-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_v" +
            "ar(--foreground)_16%,_transparent)] data-[variant=ghost]:[&:where(:not(:checked+*,[data-selected],[aria" +
            "-pressed=true],[aria-current=page]))]:bg-transparent data-[variant=ghost]:[&:where(:not(:checked+*,[dat" +
            "a-selected],[aria-pressed=true],[aria-current=page]))]:text-foreground data-[variant=ghost]:before:cont" +
            "ent-none data-[variant=ghost]:after:content-none data-[variant=ghost]:[&:where(:not(:checked+*,[data-se" +
            "lected],[aria-pressed=true],[aria-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[backgroun" +
            "d-color:color-mix(in_oklch,_var(--foreground)_16%,_transparent)] data-[variant=secondary]:[&:where(:not" +
            "(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:active:[&:not(:disabled,[data-di" +
            "sabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_26%,_transparent)] data-[variant=dest" +
            "ructive]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-b" +
            "utton-wash:rgb(255_255_255_/_15%)] data-[variant=destructive]:[&:where(:not(:checked+*,[data-selected]," +
            "[aria-pressed=true],[aria-current=page]))]:bg-destructive data-[variant=destructive]:text-destructive-f" +
            "oreground data-[variant=destructive]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria" +
            "-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(-" +
            "-destructive),_black_20%)] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=outline]:[" +
            "&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:disabl" +
            "ed,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_10%,_transparent)] [@media" +
            "_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=ghost]:[&:where(:not(:checked+*,[data-select" +
            "ed],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:disabled,[data-disabled])]:[background-col" +
            "or:color-mix(in_oklch,_var(--foreground)_10%,_transparent)] [@media_(any-hover:_hover)_and_(any-pointer" +
            ":_fine)]:data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-cu" +
            "rrent=page]))]:hover:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--for" +
            "eground)_20%,_transparent)] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=destructi" +
            "ve]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:d" +
            "isabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--destructive),_black_12%)] [&:is([" +
            "data-selected],[aria-pressed=true],[aria-current=page])]:[--uiify-button-rim:rgb(255_255_255_/_20%)] [&" +
            ":is([data-selected],[aria-pressed=true],[aria-current=page])]:[--uiify-button-wash:rgb(255_255_255_/_15" +
            "%)] [&:is([data-selected],[aria-pressed=true],[aria-current=page])]:border-transparent [&:is([data-sele" +
            "cted],[aria-pressed=true],[aria-current=page])]:bg-primary [&:is([data-selected],[aria-pressed=true],[a" +
            "ria-current=page])]:text-primary-foreground [:checked+&]:[--uiify-button-rim:rgb(255_255_255_/_20%)] [:" +
            "checked+&]:[--uiify-button-wash:rgb(255_255_255_/_15%)] [:checked+&]:border-transparent [:checked+&]:bg" +
            "-primary [:checked+&]:text-primary-foreground [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:[&:is" +
            "([data-selected],[aria-pressed=true],[aria-current=page]):hover:not(:disabled,[data-disabled])]:[backgr" +
            "ound-color:color-mix(in_oklch,_var(--primary)_88%,_var(--primary-foreground))] [@media_(any-hover:_hove" +
            "r)_and_(any-pointer:_fine)]:[:checked:not(:disabled)+&:hover]:[background-color:color-mix(in_oklch,_var" +
            "(--primary)_88%,_var(--primary-foreground))] [:disabled+&]:opacity-50 [:disabled+&]:cursor-not-allowed " +
            "[&[hidden]]:hidden data-[variant=link]:px-0 data-[variant=link]:border-0 data-[variant=link]:border-cur" +
            "rent data-[variant=link]:border-none data-[variant=link]:rounded-none data-[variant=link]:bg-transparen" +
            "t data-[variant=link]:text-primary data-[variant=link]:underline data-[variant=link]:[text-underline-of" +
            "fset:0.2em] data-[variant=link]:active:px-0 data-[variant=link]:active:border-0 data-[variant=link]:act" +
            "ive:border-current data-[variant=link]:active:border-none data-[variant=link]:active:rounded-none data-" +
            "[variant=link]:active:bg-transparent data-[variant=link]:active:text-primary data-[variant=link]:active" +
            ":underline data-[variant=link]:active:[text-underline-offset:0.2em] data-[variant=link]:[min-inline-siz" +
            "e:0] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:px-0 [@media_(any-ho" +
            "ver:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:border-0 [@media_(any-hover:_hover)_and_" +
            "(any-pointer:_fine)]:data-[variant=link]:hover:border-current [@media_(any-hover:_hover)_and_(any-point" +
            "er:_fine)]:data-[variant=link]:hover:border-none [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:da" +
            "ta-[variant=link]:hover:rounded-none [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=" +
            "link]:hover:bg-transparent [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hove" +
            "r:text-primary [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:underline " +
            "[@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:[text-underline-offset:0." +
            "2em] data-[variant=link]:before:content-none data-[variant=link]:after:content-none data-[variant=link]" +
            ":focus-visible:[outline:2px_solid_var(--ring)] data-[variant=link]:focus-visible:[outline-offset:3px] [" +
            "[data-uiify-toggle]>input:focus-visible+&]:[box-shadow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(" +
            "--ring)_16%,_transparent)] [[data-uiify-toggle-group]_[data-part=item]>input:focus-visible+&]:[box-shad" +
            "ow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(--ring)_16%,_transparent)] [[data-uiify-modal][data-" +
            "part=close]&]:border-transparent [[data-uiify-modal][data-part=close]&]:[background-color:color-mix(in_" +
            "oklch,_var(--foreground)_8%,_transparent)] [[data-uiify-modal][data-part=close]&]:text-foreground [[dat" +
            "a-uiify-modal][data-part=close]&:hover]:[background-color:color-mix(in_oklch,_var(--foreground)_14%,_tr" +
            "ansparent)] [[data-uiify-modal][data-part=close]&:active]:[background-color:color-mix(in_oklch,_var(--f" +
            "oreground)_20%,_transparent)] [[data-uiify-pagination]_span&:not([data-disabled])]:cursor-default [[dat" +
            "a-uiify-input-group]>[data-part=addon]>&]:[min-inline-size:0] [[data-uiify-input-group]>[data-part=addo" +
            "n]>&]:[max-inline-size:100%] [[data-uiify-input-group]>[data-part=addon]>&]:whitespace-normal [[data-ui" +
            "ify-input-group]>[data-part=addon]>&]:[overflow-wrap:anywhere] [[data-uiify-item-content]>&]:[justify-s" +
            "elf:start]"
          }
          role="menuitem"
          openOnHover
        >
          Edit
        </DropdownMenu.Trigger>
        <DropdownMenu.Content
          className="
            [&[data-positioning=native]]:[--uiify-anchor-offset:var(--space-sm)]
            [&_[data-positioning=native]]:[--uiify-anchor-offset:var(--space-sm)]
            [&[popover]:popover-open:not([data-positioning=native])]:[margin:revert]
            [&_[popover]:popover-open:not([data-positioning=native])]:[margin:revert] flex-col [min-inline-size:12rem]
            [max-block-size:min(24rem,calc(100dvb_-_2rem))] overflow-y-auto overscroll-contain p-xs
            border-[length:var(--border-width)] border-solid border-border rounded-lg [corner-shape:squircle] bg-popover
            text-popover-foreground shadow-popover [transform-origin:var(--transform-origin,top)]
            data-[state=closed]:hidden [&:where(:not([popover]),:popover-open)]:flex
            [&[data-part=sub-content]]:[min-inline-size:11rem]
            [&[data-part=sub-content][data-side=right]]:[--uiify-anchor-offset:0]
            [&[data-part=sub-content][data-side=right]]:[inset-block-start:calc(anchor(start)_-_var(--space-xs))]
            motion-safe:[transition:var(--transition-presence)] motion-safe:[&:not(:popover-open)]:opacity-0
            motion-safe:[&:not(:popover-open)]:[scale:var(--presence-scale)]
            motion-safe:starting:[&:popover-open]:opacity-0
            motion-safe:starting:[&:popover-open]:[scale:var(--presence-scale)]
          "
        >
          <DropdownMenu.Item
            className={
              "flex items-center gap-md w-full py-sm px-md border-0 rounded-[calc(var(--radius-lg)_-_var(--space-xs)" +
              ")] [corner-shape:squircle] bg-transparent text-inherit [font-family:inherit] [font-weight:inherit] te" +
              "xt-sm [line-height:var(--leading-normal)] text-start cursor-pointer select-none appearance-none hover" +
              ":bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground " +
              "focus-visible:outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground ari" +
              "a-[disabled=true]:opacity-50 aria-[disabled=true]:pointer-events-none data-[disabled]:opacity-50 data" +
              "-[disabled]:pointer-events-none data-[danger]:text-destructive data-[danger]:hover:bg-destructive dat" +
              "a-[danger]:hover:text-destructive-foreground data-[danger]:focus-visible:bg-destructive data-[danger]" +
              ":focus-visible:text-destructive-foreground data-[danger]:data-[highlighted]:bg-destructive data-[dang" +
              "er]:data-[highlighted]:text-destructive-foreground [&_[data-part=item-icon]]:inline-grid [&_[data-par" +
              "t=item-icon]]:place-items-center [&_[data-part=item-icon]]:size-5 [&_[data-part=item-icon]]:flex-[0_0" +
              "_1.25rem] [&_[data-part=item-indicator]]:inline-grid [&_[data-part=item-indicator]]:place-items-cente" +
              "r [&_[data-part=item-indicator]]:size-5 [&_[data-part=item-indicator]]:flex-[0_0_1.25rem] [&_[data-pa" +
              "rt=item-indicator]>svg]:block [&_[data-part=item-indicator]>svg]:size-full [&[role=menuitemcheckbox]_" +
              "[data-part=item-indicator]]:border-[length:var(--border-width)] [&[role=menuitemcheckbox]_[data-part=" +
              "item-indicator]]:border-input [&[role=menuitemcheckbox]_[data-part=item-indicator]]:rounded-xs [&[rol" +
              "e=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:border-primary [&[role=menuitemch" +
              "eckbox][data-state=checked]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckbox][data-sta" +
              "te=checked]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemcheckbox][data-state=" +
              "checked]_[data-part=item-indicator]::before]:content-[''] [&[role=menuitemcheckbox][data-state=checke" +
              "d]_[data-part=item-indicator]::before]:size-[0.65rem] [&[role=menuitemcheckbox][data-state=checked]_[" +
              "data-part=item-indicator]::before]:bg-current [&[role=menuitemcheckbox][data-state=checked]_[data-par" +
              "t=item-indicator]::before]:[clip-path:polygon(14%_44%,0_65%,38%_100%,100%_22%,84%_6%,38%_68%)] [&[rol" +
              "e=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:border-primary [&[role=menu" +
              "itemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckb" +
              "ox][data-state=indeterminate]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemche" +
              "ckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:content-[''] [&[role=menuitemche" +
              "ckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:w-[0.65rem] [&[role=menuitemchec" +
              "kbox][data-state=indeterminate]_[data-part=item-indicator]::before]:h-[0.12rem] [&[role=menuitemcheck" +
              "box][data-state=indeterminate]_[data-part=item-indicator]::before]:bg-current [&[role=menuitemradio]_" +
              "[data-part=item-indicator]]:rounded-full [&[role=menuitemradio][data-state=checked]_[data-part=item-i" +
              "ndicator]]:border-[5px] [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:border" +
              "-primary [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:bg-card [&_[data-part" +
              "=item-text]]:grid [&_[data-part=item-text]]:flex-auto [&_[data-part=item-text]]:[min-inline-size:0] [" +
              "&_[data-part=item-description]]:text-muted-foreground [&_[data-part=item-description]]:text-xs [&_[da" +
              "ta-part=item-description]]:[line-height:var(--leading-normal)] [&_[data-part=shortcut]]:ms-auto [&_[d" +
              "ata-part=shortcut]]:text-muted-foreground [&_[data-part=shortcut]]:text-xs [&_[data-part=shortcut]]:l" +
              "eading-none [&_[data-part=shortcut]]:whitespace-nowrap"
            }
          >
            Undo
          </DropdownMenu.Item>
        </DropdownMenu.Content>
      </DropdownMenu.Root>
    </DropdownMenu.Bar>
  );
}

export default function Example() {
  return (
    <>
      <DropdownMenu.Root>
        <DropdownMenu.Trigger
          className={
            "focus-visible:[outline:none] focus-visible:[box-shadow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(" +
            "--ring)_16%,_transparent)] [--uiify-button-rim:rgb(255_255_255_/_20%)] [--uiify-button-wash:light-dark(" +
            "rgb(255_255_255_/_15%),_rgb(255_255_255_/_30%))] relative isolate inline-flex items-center justify-cent" +
            "er [gap:0.375rem] [min-block-size:44px] [min-inline-size:44px] py-0 [padding-inline:1.25rem] border-[le" +
            "ngth:var(--border-width)] border-solid border-transparent rounded-[var(--radius-full)] bg-foreground bg" +
            "-clip-padding text-background text-base font-[number:var(--weight-medium)] leading-6 no-underline curso" +
            "r-pointer [transition:var(--transition-colors)] before:content-[''] before:absolute before:inset-0 befo" +
            "re:z-[-1] before:[border-radius:inherit] before:pointer-events-none after:content-[''] after:absolute a" +
            "fter:inset-0 after:z-[-1] after:[border-radius:inherit] after:pointer-events-none before:[background-co" +
            "lor:var(--uiify-button-wash)] before:[filter:blur(10px)] before:[translate:0_-50%] before:[clip-path:in" +
            "set(50%_0_-50%_0_round_var(--radius-full))] after:[padding:0.5px] after:[background-image:linear-gradie" +
            "nt(to_bottom,_var(--uiify-button-rim),_transparent_75%)] after:[mask:linear-gradient(#fff_0_0)_content-" +
            "box_exclude,_linear-gradient(#fff_0_0)] [&:is([data-size=sm],[data-size=icon-sm])]:[min-block-size:32px" +
            "] [&:is([data-size=sm],[data-size=icon-sm])]:[min-inline-size:32px] [&:is([data-size=sm],[data-size=ico" +
            "n-sm])]:[padding-inline:0.75rem] [&:is([data-size=sm],[data-size=icon-sm])]:[gap:0.25rem] [&:is([data-s" +
            "ize=sm],[data-size=icon-sm])]:text-sm [&:is([data-size=sm],[data-size=icon-sm])]:leading-5 [&:is([data-" +
            "size=lg],[data-size=icon-lg])]:[min-block-size:56px] [&:is([data-size=lg],[data-size=icon-lg])]:[min-in" +
            "line-size:56px] [&:is([data-size=lg],[data-size=icon-lg])]:[padding-inline:1.75rem] [&:is([data-size=lg" +
            "],[data-size=icon-lg])]:text-lg [&:is([data-size=lg],[data-size=icon-lg])]:leading-7 [&[data-size^=icon" +
            "]]:px-0 [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:hover:[&:not(:disabled,[data-disabled])]:[b" +
            "ackground-color:color-mix(in_oklch,_var(--foreground)_90%,_var(--background))] active:[&:not(:disabled," +
            "[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_80%,_var(--background))] disa" +
            "bled:opacity-50 disabled:cursor-not-allowed data-[disabled]:opacity-50 data-[disabled]:cursor-not-allow" +
            "ed data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=" +
            "page]))]:[--uiify-button-rim:light-dark(rgb(0_0_0_/_5%),_rgb(255_255_255_/_10%))] data-[variant=seconda" +
            "ry]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-button" +
            "-wash:light-dark(rgb(255_255_255_/_20%),_rgb(255_255_255_/_5%))] data-[variant=secondary]:[&:where(:not" +
            "(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[background-color:color-mix(in_o" +
            "klch,_var(--foreground)_10%,_transparent)] data-[variant=secondary]:[&:where(:not(:checked+*,[data-sele" +
            "cted],[aria-pressed=true],[aria-current=page]))]:text-foreground data-[variant=outline]:[&:where(:not(:" +
            "checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-button-rim:color-mix(in_o" +
            "klch,_var(--foreground)_25%,_transparent)] data-[variant=outline]:[&:where(:not(:checked+*,[data-select" +
            "ed],[aria-pressed=true],[aria-current=page]))]:[border-color:color-mix(in_oklch,_var(--foreground)_20%," +
            "_transparent)] data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[ari" +
            "a-current=page]))]:bg-transparent data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria" +
            "-pressed=true],[aria-current=page]))]:text-foreground data-[variant=outline]:before:content-none data-[" +
            "variant=outline]:after:[inset:calc(-1_*_var(--border-width))] data-[variant=outline]:after:[padding:var" +
            "(--border-width)] data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[" +
            "aria-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_v" +
            "ar(--foreground)_16%,_transparent)] data-[variant=ghost]:[&:where(:not(:checked+*,[data-selected],[aria" +
            "-pressed=true],[aria-current=page]))]:bg-transparent data-[variant=ghost]:[&:where(:not(:checked+*,[dat" +
            "a-selected],[aria-pressed=true],[aria-current=page]))]:text-foreground data-[variant=ghost]:before:cont" +
            "ent-none data-[variant=ghost]:after:content-none data-[variant=ghost]:[&:where(:not(:checked+*,[data-se" +
            "lected],[aria-pressed=true],[aria-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[backgroun" +
            "d-color:color-mix(in_oklch,_var(--foreground)_16%,_transparent)] data-[variant=secondary]:[&:where(:not" +
            "(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:active:[&:not(:disabled,[data-di" +
            "sabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_26%,_transparent)] data-[variant=dest" +
            "ructive]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-b" +
            "utton-wash:rgb(255_255_255_/_15%)] data-[variant=destructive]:[&:where(:not(:checked+*,[data-selected]," +
            "[aria-pressed=true],[aria-current=page]))]:bg-destructive data-[variant=destructive]:text-destructive-f" +
            "oreground data-[variant=destructive]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria" +
            "-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(-" +
            "-destructive),_black_20%)] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=outline]:[" +
            "&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:disabl" +
            "ed,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_10%,_transparent)] [@media" +
            "_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=ghost]:[&:where(:not(:checked+*,[data-select" +
            "ed],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:disabled,[data-disabled])]:[background-col" +
            "or:color-mix(in_oklch,_var(--foreground)_10%,_transparent)] [@media_(any-hover:_hover)_and_(any-pointer" +
            ":_fine)]:data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-cu" +
            "rrent=page]))]:hover:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--for" +
            "eground)_20%,_transparent)] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=destructi" +
            "ve]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:d" +
            "isabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--destructive),_black_12%)] [&:is([" +
            "data-selected],[aria-pressed=true],[aria-current=page])]:[--uiify-button-rim:rgb(255_255_255_/_20%)] [&" +
            ":is([data-selected],[aria-pressed=true],[aria-current=page])]:[--uiify-button-wash:rgb(255_255_255_/_15" +
            "%)] [&:is([data-selected],[aria-pressed=true],[aria-current=page])]:border-transparent [&:is([data-sele" +
            "cted],[aria-pressed=true],[aria-current=page])]:bg-primary [&:is([data-selected],[aria-pressed=true],[a" +
            "ria-current=page])]:text-primary-foreground [:checked+&]:[--uiify-button-rim:rgb(255_255_255_/_20%)] [:" +
            "checked+&]:[--uiify-button-wash:rgb(255_255_255_/_15%)] [:checked+&]:border-transparent [:checked+&]:bg" +
            "-primary [:checked+&]:text-primary-foreground [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:[&:is" +
            "([data-selected],[aria-pressed=true],[aria-current=page]):hover:not(:disabled,[data-disabled])]:[backgr" +
            "ound-color:color-mix(in_oklch,_var(--primary)_88%,_var(--primary-foreground))] [@media_(any-hover:_hove" +
            "r)_and_(any-pointer:_fine)]:[:checked:not(:disabled)+&:hover]:[background-color:color-mix(in_oklch,_var" +
            "(--primary)_88%,_var(--primary-foreground))] [:disabled+&]:opacity-50 [:disabled+&]:cursor-not-allowed " +
            "[&[hidden]]:hidden data-[variant=link]:px-0 data-[variant=link]:border-0 data-[variant=link]:border-cur" +
            "rent data-[variant=link]:border-none data-[variant=link]:rounded-none data-[variant=link]:bg-transparen" +
            "t data-[variant=link]:text-primary data-[variant=link]:underline data-[variant=link]:[text-underline-of" +
            "fset:0.2em] data-[variant=link]:active:px-0 data-[variant=link]:active:border-0 data-[variant=link]:act" +
            "ive:border-current data-[variant=link]:active:border-none data-[variant=link]:active:rounded-none data-" +
            "[variant=link]:active:bg-transparent data-[variant=link]:active:text-primary data-[variant=link]:active" +
            ":underline data-[variant=link]:active:[text-underline-offset:0.2em] data-[variant=link]:[min-inline-siz" +
            "e:0] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:px-0 [@media_(any-ho" +
            "ver:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:border-0 [@media_(any-hover:_hover)_and_" +
            "(any-pointer:_fine)]:data-[variant=link]:hover:border-current [@media_(any-hover:_hover)_and_(any-point" +
            "er:_fine)]:data-[variant=link]:hover:border-none [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:da" +
            "ta-[variant=link]:hover:rounded-none [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=" +
            "link]:hover:bg-transparent [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hove" +
            "r:text-primary [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:underline " +
            "[@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:[text-underline-offset:0." +
            "2em] data-[variant=link]:before:content-none data-[variant=link]:after:content-none data-[variant=link]" +
            ":focus-visible:[outline:2px_solid_var(--ring)] data-[variant=link]:focus-visible:[outline-offset:3px] [" +
            "[data-uiify-toggle]>input:focus-visible+&]:[box-shadow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(" +
            "--ring)_16%,_transparent)] [[data-uiify-toggle-group]_[data-part=item]>input:focus-visible+&]:[box-shad" +
            "ow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(--ring)_16%,_transparent)] [[data-uiify-modal][data-" +
            "part=close]&]:border-transparent [[data-uiify-modal][data-part=close]&]:[background-color:color-mix(in_" +
            "oklch,_var(--foreground)_8%,_transparent)] [[data-uiify-modal][data-part=close]&]:text-foreground [[dat" +
            "a-uiify-modal][data-part=close]&:hover]:[background-color:color-mix(in_oklch,_var(--foreground)_14%,_tr" +
            "ansparent)] [[data-uiify-modal][data-part=close]&:active]:[background-color:color-mix(in_oklch,_var(--f" +
            "oreground)_20%,_transparent)] [[data-uiify-pagination]_span&:not([data-disabled])]:cursor-default [[dat" +
            "a-uiify-input-group]>[data-part=addon]>&]:[min-inline-size:0] [[data-uiify-input-group]>[data-part=addo" +
            "n]>&]:[max-inline-size:100%] [[data-uiify-input-group]>[data-part=addon]>&]:whitespace-normal [[data-ui" +
            "ify-input-group]>[data-part=addon]>&]:[overflow-wrap:anywhere] [[data-uiify-item-content]>&]:[justify-s" +
            "elf:start]"
          }
        >
          Actions
        </DropdownMenu.Trigger>
        <DropdownMenu.Content
          className="
            [&[data-positioning=native]]:[--uiify-anchor-offset:var(--space-sm)]
            [&_[data-positioning=native]]:[--uiify-anchor-offset:var(--space-sm)]
            [&[popover]:popover-open:not([data-positioning=native])]:[margin:revert]
            [&_[popover]:popover-open:not([data-positioning=native])]:[margin:revert] flex-col [min-inline-size:12rem]
            [max-block-size:min(24rem,calc(100dvb_-_2rem))] overflow-y-auto overscroll-contain p-xs
            border-[length:var(--border-width)] border-solid border-border rounded-lg [corner-shape:squircle] bg-popover
            text-popover-foreground shadow-popover [transform-origin:var(--transform-origin,top)]
            data-[state=closed]:hidden [&:where(:not([popover]),:popover-open)]:flex
            [&[data-part=sub-content]]:[min-inline-size:11rem]
            [&[data-part=sub-content][data-side=right]]:[--uiify-anchor-offset:0]
            [&[data-part=sub-content][data-side=right]]:[inset-block-start:calc(anchor(start)_-_var(--space-xs))]
            motion-safe:[transition:var(--transition-presence)] motion-safe:[&:not(:popover-open)]:opacity-0
            motion-safe:[&:not(:popover-open)]:[scale:var(--presence-scale)]
            motion-safe:starting:[&:popover-open]:opacity-0
            motion-safe:starting:[&:popover-open]:[scale:var(--presence-scale)]
          "
        >
          <DropdownMenu.Label className="py-xs px-md text-muted-foreground text-xs font-[number:var(--weight-semibold)]">
            Workspace
          </DropdownMenu.Label>
          <DropdownMenu.Item
            className={
              "flex items-center gap-md w-full py-sm px-md border-0 rounded-[calc(var(--radius-lg)_-_var(--space-xs)" +
              ")] [corner-shape:squircle] bg-transparent text-inherit [font-family:inherit] [font-weight:inherit] te" +
              "xt-sm [line-height:var(--leading-normal)] text-start cursor-pointer select-none appearance-none hover" +
              ":bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground " +
              "focus-visible:outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground ari" +
              "a-[disabled=true]:opacity-50 aria-[disabled=true]:pointer-events-none data-[disabled]:opacity-50 data" +
              "-[disabled]:pointer-events-none data-[danger]:text-destructive data-[danger]:hover:bg-destructive dat" +
              "a-[danger]:hover:text-destructive-foreground data-[danger]:focus-visible:bg-destructive data-[danger]" +
              ":focus-visible:text-destructive-foreground data-[danger]:data-[highlighted]:bg-destructive data-[dang" +
              "er]:data-[highlighted]:text-destructive-foreground [&_[data-part=item-icon]]:inline-grid [&_[data-par" +
              "t=item-icon]]:place-items-center [&_[data-part=item-icon]]:size-5 [&_[data-part=item-icon]]:flex-[0_0" +
              "_1.25rem] [&_[data-part=item-indicator]]:inline-grid [&_[data-part=item-indicator]]:place-items-cente" +
              "r [&_[data-part=item-indicator]]:size-5 [&_[data-part=item-indicator]]:flex-[0_0_1.25rem] [&_[data-pa" +
              "rt=item-indicator]>svg]:block [&_[data-part=item-indicator]>svg]:size-full [&[role=menuitemcheckbox]_" +
              "[data-part=item-indicator]]:border-[length:var(--border-width)] [&[role=menuitemcheckbox]_[data-part=" +
              "item-indicator]]:border-input [&[role=menuitemcheckbox]_[data-part=item-indicator]]:rounded-xs [&[rol" +
              "e=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:border-primary [&[role=menuitemch" +
              "eckbox][data-state=checked]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckbox][data-sta" +
              "te=checked]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemcheckbox][data-state=" +
              "checked]_[data-part=item-indicator]::before]:content-[''] [&[role=menuitemcheckbox][data-state=checke" +
              "d]_[data-part=item-indicator]::before]:size-[0.65rem] [&[role=menuitemcheckbox][data-state=checked]_[" +
              "data-part=item-indicator]::before]:bg-current [&[role=menuitemcheckbox][data-state=checked]_[data-par" +
              "t=item-indicator]::before]:[clip-path:polygon(14%_44%,0_65%,38%_100%,100%_22%,84%_6%,38%_68%)] [&[rol" +
              "e=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:border-primary [&[role=menu" +
              "itemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckb" +
              "ox][data-state=indeterminate]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemche" +
              "ckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:content-[''] [&[role=menuitemche" +
              "ckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:w-[0.65rem] [&[role=menuitemchec" +
              "kbox][data-state=indeterminate]_[data-part=item-indicator]::before]:h-[0.12rem] [&[role=menuitemcheck" +
              "box][data-state=indeterminate]_[data-part=item-indicator]::before]:bg-current [&[role=menuitemradio]_" +
              "[data-part=item-indicator]]:rounded-full [&[role=menuitemradio][data-state=checked]_[data-part=item-i" +
              "ndicator]]:border-[5px] [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:border" +
              "-primary [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:bg-card [&_[data-part" +
              "=item-text]]:grid [&_[data-part=item-text]]:flex-auto [&_[data-part=item-text]]:[min-inline-size:0] [" +
              "&_[data-part=item-description]]:text-muted-foreground [&_[data-part=item-description]]:text-xs [&_[da" +
              "ta-part=item-description]]:[line-height:var(--leading-normal)] [&_[data-part=shortcut]]:ms-auto [&_[d" +
              "ata-part=shortcut]]:text-muted-foreground [&_[data-part=shortcut]]:text-xs [&_[data-part=shortcut]]:l" +
              "eading-none [&_[data-part=shortcut]]:whitespace-nowrap"
            }
          >
            <DropdownMenu.ItemText>
              Open project
              <DropdownMenu.ItemDescription>Open in a new window</DropdownMenu.ItemDescription>
            </DropdownMenu.ItemText>
            <DropdownMenu.Shortcut>⌘O</DropdownMenu.Shortcut>
          </DropdownMenu.Item>
          <DropdownMenu.CheckboxItem
            className={
              "flex items-center gap-md w-full py-sm px-md border-0 rounded-[calc(var(--radius-lg)_-_var(--space-xs)" +
              ")] [corner-shape:squircle] bg-transparent text-inherit [font-family:inherit] [font-weight:inherit] te" +
              "xt-sm [line-height:var(--leading-normal)] text-start cursor-pointer select-none appearance-none hover" +
              ":bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground " +
              "focus-visible:outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground ari" +
              "a-[disabled=true]:opacity-50 aria-[disabled=true]:pointer-events-none data-[disabled]:opacity-50 data" +
              "-[disabled]:pointer-events-none data-[danger]:text-destructive data-[danger]:hover:bg-destructive dat" +
              "a-[danger]:hover:text-destructive-foreground data-[danger]:focus-visible:bg-destructive data-[danger]" +
              ":focus-visible:text-destructive-foreground data-[danger]:data-[highlighted]:bg-destructive data-[dang" +
              "er]:data-[highlighted]:text-destructive-foreground [&_[data-part=item-icon]]:inline-grid [&_[data-par" +
              "t=item-icon]]:place-items-center [&_[data-part=item-icon]]:size-5 [&_[data-part=item-icon]]:flex-[0_0" +
              "_1.25rem] [&_[data-part=item-indicator]]:inline-grid [&_[data-part=item-indicator]]:place-items-cente" +
              "r [&_[data-part=item-indicator]]:size-5 [&_[data-part=item-indicator]]:flex-[0_0_1.25rem] [&_[data-pa" +
              "rt=item-indicator]>svg]:block [&_[data-part=item-indicator]>svg]:size-full [&[role=menuitemcheckbox]_" +
              "[data-part=item-indicator]]:border-[length:var(--border-width)] [&[role=menuitemcheckbox]_[data-part=" +
              "item-indicator]]:border-input [&[role=menuitemcheckbox]_[data-part=item-indicator]]:rounded-xs [&[rol" +
              "e=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:border-primary [&[role=menuitemch" +
              "eckbox][data-state=checked]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckbox][data-sta" +
              "te=checked]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemcheckbox][data-state=" +
              "checked]_[data-part=item-indicator]::before]:content-[''] [&[role=menuitemcheckbox][data-state=checke" +
              "d]_[data-part=item-indicator]::before]:size-[0.65rem] [&[role=menuitemcheckbox][data-state=checked]_[" +
              "data-part=item-indicator]::before]:bg-current [&[role=menuitemcheckbox][data-state=checked]_[data-par" +
              "t=item-indicator]::before]:[clip-path:polygon(14%_44%,0_65%,38%_100%,100%_22%,84%_6%,38%_68%)] [&[rol" +
              "e=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:border-primary [&[role=menu" +
              "itemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckb" +
              "ox][data-state=indeterminate]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemche" +
              "ckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:content-[''] [&[role=menuitemche" +
              "ckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:w-[0.65rem] [&[role=menuitemchec" +
              "kbox][data-state=indeterminate]_[data-part=item-indicator]::before]:h-[0.12rem] [&[role=menuitemcheck" +
              "box][data-state=indeterminate]_[data-part=item-indicator]::before]:bg-current [&[role=menuitemradio]_" +
              "[data-part=item-indicator]]:rounded-full [&[role=menuitemradio][data-state=checked]_[data-part=item-i" +
              "ndicator]]:border-[5px] [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:border" +
              "-primary [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:bg-card [&_[data-part" +
              "=item-text]]:grid [&_[data-part=item-text]]:flex-auto [&_[data-part=item-text]]:[min-inline-size:0] [" +
              "&_[data-part=item-description]]:text-muted-foreground [&_[data-part=item-description]]:text-xs [&_[da" +
              "ta-part=item-description]]:[line-height:var(--leading-normal)] [&_[data-part=shortcut]]:ms-auto [&_[d" +
              "ata-part=shortcut]]:text-muted-foreground [&_[data-part=shortcut]]:text-xs [&_[data-part=shortcut]]:l" +
              "eading-none [&_[data-part=shortcut]]:whitespace-nowrap"
            }
            defaultChecked
          >
            <DropdownMenu.ItemIndicator>✓</DropdownMenu.ItemIndicator>
            <DropdownMenu.ItemText>Show toolbar</DropdownMenu.ItemText>
          </DropdownMenu.CheckboxItem>
          <DropdownMenu.Separator
            className="
              [block-size:var(--border-width)] [margin-block:var(--space-xs)] [margin-inline:calc(-1_*var(--space-xs))]
              bg-border
            "
          />
          <DropdownMenu.RadioGroup defaultValue="comfortable" aria-label="Density">
            <DropdownMenu.RadioItem
              className={
                "flex items-center gap-md w-full py-sm px-md border-0 rounded-[calc(var(--radius-lg)_-_var(--space-x" +
                "s))] [corner-shape:squircle] bg-transparent text-inherit [font-family:inherit] [font-weight:inherit" +
                "] text-sm [line-height:var(--leading-normal)] text-start cursor-pointer select-none appearance-none" +
                " hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-for" +
                "eground focus-visible:outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-fore" +
                "ground aria-[disabled=true]:opacity-50 aria-[disabled=true]:pointer-events-none data-[disabled]:opa" +
                "city-50 data-[disabled]:pointer-events-none data-[danger]:text-destructive data-[danger]:hover:bg-d" +
                "estructive data-[danger]:hover:text-destructive-foreground data-[danger]:focus-visible:bg-destructi" +
                "ve data-[danger]:focus-visible:text-destructive-foreground data-[danger]:data-[highlighted]:bg-dest" +
                "ructive data-[danger]:data-[highlighted]:text-destructive-foreground [&_[data-part=item-icon]]:inli" +
                "ne-grid [&_[data-part=item-icon]]:place-items-center [&_[data-part=item-icon]]:size-5 [&_[data-part" +
                "=item-icon]]:flex-[0_0_1.25rem] [&_[data-part=item-indicator]]:inline-grid [&_[data-part=item-indic" +
                "ator]]:place-items-center [&_[data-part=item-indicator]]:size-5 [&_[data-part=item-indicator]]:flex" +
                "-[0_0_1.25rem] [&_[data-part=item-indicator]>svg]:block [&_[data-part=item-indicator]>svg]:size-ful" +
                "l [&[role=menuitemcheckbox]_[data-part=item-indicator]]:border-[length:var(--border-width)] [&[role" +
                "=menuitemcheckbox]_[data-part=item-indicator]]:border-input [&[role=menuitemcheckbox]_[data-part=it" +
                "em-indicator]]:rounded-xs [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]" +
                ":border-primary [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:bg-primar" +
                "y [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:text-primary-foreground" +
                " [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:content-[''] [&[" +
                "role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:size-[0.65rem] [&[ro" +
                "le=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:bg-current [&[role=men" +
                "uitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:[clip-path:polygon(14%_44%,0" +
                "_65%,38%_100%,100%_22%,84%_6%,38%_68%)] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-p" +
                "art=item-indicator]]:border-primary [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=" +
                "item-indicator]]:bg-primary [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=item-ind" +
                "icator]]:text-primary-foreground [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=ite" +
                "m-indicator]::before]:content-[''] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=i" +
                "tem-indicator]::before]:w-[0.65rem] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=" +
                "item-indicator]::before]:h-[0.12rem] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part" +
                "=item-indicator]::before]:bg-current [&[role=menuitemradio]_[data-part=item-indicator]]:rounded-ful" +
                "l [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:border-[5px] [&[role=menui" +
                "temradio][data-state=checked]_[data-part=item-indicator]]:border-primary [&[role=menuitemradio][dat" +
                "a-state=checked]_[data-part=item-indicator]]:bg-card [&_[data-part=item-text]]:grid [&_[data-part=i" +
                "tem-text]]:flex-auto [&_[data-part=item-text]]:[min-inline-size:0] [&_[data-part=item-description]]" +
                ":text-muted-foreground [&_[data-part=item-description]]:text-xs [&_[data-part=item-description]]:[l" +
                "ine-height:var(--leading-normal)] [&_[data-part=shortcut]]:ms-auto [&_[data-part=shortcut]]:text-mu" +
                "ted-foreground [&_[data-part=shortcut]]:text-xs [&_[data-part=shortcut]]:leading-none [&_[data-part" +
                "=shortcut]]:whitespace-nowrap"
              }
              value="comfortable"
            >
              Comfortable
            </DropdownMenu.RadioItem>
            <DropdownMenu.RadioItem
              className={
                "flex items-center gap-md w-full py-sm px-md border-0 rounded-[calc(var(--radius-lg)_-_var(--space-x" +
                "s))] [corner-shape:squircle] bg-transparent text-inherit [font-family:inherit] [font-weight:inherit" +
                "] text-sm [line-height:var(--leading-normal)] text-start cursor-pointer select-none appearance-none" +
                " hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-for" +
                "eground focus-visible:outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-fore" +
                "ground aria-[disabled=true]:opacity-50 aria-[disabled=true]:pointer-events-none data-[disabled]:opa" +
                "city-50 data-[disabled]:pointer-events-none data-[danger]:text-destructive data-[danger]:hover:bg-d" +
                "estructive data-[danger]:hover:text-destructive-foreground data-[danger]:focus-visible:bg-destructi" +
                "ve data-[danger]:focus-visible:text-destructive-foreground data-[danger]:data-[highlighted]:bg-dest" +
                "ructive data-[danger]:data-[highlighted]:text-destructive-foreground [&_[data-part=item-icon]]:inli" +
                "ne-grid [&_[data-part=item-icon]]:place-items-center [&_[data-part=item-icon]]:size-5 [&_[data-part" +
                "=item-icon]]:flex-[0_0_1.25rem] [&_[data-part=item-indicator]]:inline-grid [&_[data-part=item-indic" +
                "ator]]:place-items-center [&_[data-part=item-indicator]]:size-5 [&_[data-part=item-indicator]]:flex" +
                "-[0_0_1.25rem] [&_[data-part=item-indicator]>svg]:block [&_[data-part=item-indicator]>svg]:size-ful" +
                "l [&[role=menuitemcheckbox]_[data-part=item-indicator]]:border-[length:var(--border-width)] [&[role" +
                "=menuitemcheckbox]_[data-part=item-indicator]]:border-input [&[role=menuitemcheckbox]_[data-part=it" +
                "em-indicator]]:rounded-xs [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]" +
                ":border-primary [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:bg-primar" +
                "y [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:text-primary-foreground" +
                " [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:content-[''] [&[" +
                "role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:size-[0.65rem] [&[ro" +
                "le=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:bg-current [&[role=men" +
                "uitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:[clip-path:polygon(14%_44%,0" +
                "_65%,38%_100%,100%_22%,84%_6%,38%_68%)] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-p" +
                "art=item-indicator]]:border-primary [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=" +
                "item-indicator]]:bg-primary [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=item-ind" +
                "icator]]:text-primary-foreground [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=ite" +
                "m-indicator]::before]:content-[''] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=i" +
                "tem-indicator]::before]:w-[0.65rem] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=" +
                "item-indicator]::before]:h-[0.12rem] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part" +
                "=item-indicator]::before]:bg-current [&[role=menuitemradio]_[data-part=item-indicator]]:rounded-ful" +
                "l [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:border-[5px] [&[role=menui" +
                "temradio][data-state=checked]_[data-part=item-indicator]]:border-primary [&[role=menuitemradio][dat" +
                "a-state=checked]_[data-part=item-indicator]]:bg-card [&_[data-part=item-text]]:grid [&_[data-part=i" +
                "tem-text]]:flex-auto [&_[data-part=item-text]]:[min-inline-size:0] [&_[data-part=item-description]]" +
                ":text-muted-foreground [&_[data-part=item-description]]:text-xs [&_[data-part=item-description]]:[l" +
                "ine-height:var(--leading-normal)] [&_[data-part=shortcut]]:ms-auto [&_[data-part=shortcut]]:text-mu" +
                "ted-foreground [&_[data-part=shortcut]]:text-xs [&_[data-part=shortcut]]:leading-none [&_[data-part" +
                "=shortcut]]:whitespace-nowrap"
              }
              value="compact"
            >
              Compact
            </DropdownMenu.RadioItem>
          </DropdownMenu.RadioGroup>
          <DropdownMenu.Sub>
            <DropdownMenu.SubTrigger
              className={
                "flex items-center gap-md w-full py-sm px-md border-0 rounded-[calc(var(--radius-lg)_-_var(--space-x" +
                "s))] [corner-shape:squircle] bg-transparent text-inherit [font-family:inherit] [font-weight:inherit" +
                "] text-sm [line-height:var(--leading-normal)] text-start cursor-pointer select-none appearance-none" +
                " hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-for" +
                "eground focus-visible:outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-fore" +
                "ground aria-[disabled=true]:opacity-50 aria-[disabled=true]:pointer-events-none data-[disabled]:opa" +
                "city-50 data-[disabled]:pointer-events-none data-[danger]:text-destructive data-[danger]:hover:bg-d" +
                "estructive data-[danger]:hover:text-destructive-foreground data-[danger]:focus-visible:bg-destructi" +
                "ve data-[danger]:focus-visible:text-destructive-foreground data-[danger]:data-[highlighted]:bg-dest" +
                "ructive data-[danger]:data-[highlighted]:text-destructive-foreground [&_[data-part=item-icon]]:inli" +
                "ne-grid [&_[data-part=item-icon]]:place-items-center [&_[data-part=item-icon]]:size-5 [&_[data-part" +
                "=item-icon]]:flex-[0_0_1.25rem] [&_[data-part=item-indicator]]:inline-grid [&_[data-part=item-indic" +
                "ator]]:place-items-center [&_[data-part=item-indicator]]:size-5 [&_[data-part=item-indicator]]:flex" +
                "-[0_0_1.25rem] [&_[data-part=item-indicator]>svg]:block [&_[data-part=item-indicator]>svg]:size-ful" +
                "l [&[role=menuitemcheckbox]_[data-part=item-indicator]]:border-[length:var(--border-width)] [&[role" +
                "=menuitemcheckbox]_[data-part=item-indicator]]:border-input [&[role=menuitemcheckbox]_[data-part=it" +
                "em-indicator]]:rounded-xs [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]" +
                ":border-primary [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:bg-primar" +
                "y [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:text-primary-foreground" +
                " [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:content-[''] [&[" +
                "role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:size-[0.65rem] [&[ro" +
                "le=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:bg-current [&[role=men" +
                "uitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:[clip-path:polygon(14%_44%,0" +
                "_65%,38%_100%,100%_22%,84%_6%,38%_68%)] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-p" +
                "art=item-indicator]]:border-primary [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=" +
                "item-indicator]]:bg-primary [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=item-ind" +
                "icator]]:text-primary-foreground [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=ite" +
                "m-indicator]::before]:content-[''] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=i" +
                "tem-indicator]::before]:w-[0.65rem] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=" +
                "item-indicator]::before]:h-[0.12rem] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part" +
                "=item-indicator]::before]:bg-current [&[role=menuitemradio]_[data-part=item-indicator]]:rounded-ful" +
                "l [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:border-[5px] [&[role=menui" +
                "temradio][data-state=checked]_[data-part=item-indicator]]:border-primary [&[role=menuitemradio][dat" +
                "a-state=checked]_[data-part=item-indicator]]:bg-card [&_[data-part=item-text]]:grid [&_[data-part=i" +
                "tem-text]]:flex-auto [&_[data-part=item-text]]:[min-inline-size:0] [&_[data-part=item-description]]" +
                ":text-muted-foreground [&_[data-part=item-description]]:text-xs [&_[data-part=item-description]]:[l" +
                "ine-height:var(--leading-normal)] [&_[data-part=shortcut]]:ms-auto [&_[data-part=shortcut]]:text-mu" +
                "ted-foreground [&_[data-part=shortcut]]:text-xs [&_[data-part=shortcut]]:leading-none [&_[data-part" +
                "=shortcut]]:whitespace-nowrap"
              }
            >
              Share
            </DropdownMenu.SubTrigger>
            <DropdownMenu.SubContent
              className="
                [&[data-positioning=native]]:[--uiify-anchor-offset:var(--space-sm)]
                [&_[data-positioning=native]]:[--uiify-anchor-offset:var(--space-sm)]
                [&[popover]:popover-open:not([data-positioning=native])]:[margin:revert]
                [&_[popover]:popover-open:not([data-positioning=native])]:[margin:revert] flex-col
                [min-inline-size:12rem] [max-block-size:min(24rem,calc(100dvb_-_2rem))] overflow-y-auto
                overscroll-contain p-xs border-[length:var(--border-width)] border-solid border-border rounded-lg
                [corner-shape:squircle] bg-popover text-popover-foreground shadow-popover
                [transform-origin:var(--transform-origin,top)] data-[state=closed]:hidden
                [&:where(:not([popover]),:popover-open)]:flex [&[data-part=sub-content]]:[min-inline-size:11rem]
                [&[data-part=sub-content][data-side=right]]:[--uiify-anchor-offset:0]
                [&[data-part=sub-content][data-side=right]]:[inset-block-start:calc(anchor(start)_-_var(--space-xs))]
                motion-safe:[transition:var(--transition-presence)] motion-safe:[&:not(:popover-open)]:opacity-0
                motion-safe:[&:not(:popover-open)]:[scale:var(--presence-scale)]
                motion-safe:starting:[&:popover-open]:opacity-0
                motion-safe:starting:[&:popover-open]:[scale:var(--presence-scale)]
              "
            >
              <DropdownMenu.Item
                className={
                  "flex items-center gap-md w-full py-sm px-md border-0 rounded-[calc(var(--radius-lg)_-_var(--space" +
                  "-xs))] [corner-shape:squircle] bg-transparent text-inherit [font-family:inherit] [font-weight:inh" +
                  "erit] text-sm [line-height:var(--leading-normal)] text-start cursor-pointer select-none appearanc" +
                  "e-none hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-ac" +
                  "cent-foreground focus-visible:outline-none data-[highlighted]:bg-accent data-[highlighted]:text-a" +
                  "ccent-foreground aria-[disabled=true]:opacity-50 aria-[disabled=true]:pointer-events-none data-[d" +
                  "isabled]:opacity-50 data-[disabled]:pointer-events-none data-[danger]:text-destructive data-[dang" +
                  "er]:hover:bg-destructive data-[danger]:hover:text-destructive-foreground data-[danger]:focus-visi" +
                  "ble:bg-destructive data-[danger]:focus-visible:text-destructive-foreground data-[danger]:data-[hi" +
                  "ghlighted]:bg-destructive data-[danger]:data-[highlighted]:text-destructive-foreground [&_[data-p" +
                  "art=item-icon]]:inline-grid [&_[data-part=item-icon]]:place-items-center [&_[data-part=item-icon]" +
                  "]:size-5 [&_[data-part=item-icon]]:flex-[0_0_1.25rem] [&_[data-part=item-indicator]]:inline-grid " +
                  "[&_[data-part=item-indicator]]:place-items-center [&_[data-part=item-indicator]]:size-5 [&_[data-" +
                  "part=item-indicator]]:flex-[0_0_1.25rem] [&_[data-part=item-indicator]>svg]:block [&_[data-part=i" +
                  "tem-indicator]>svg]:size-full [&[role=menuitemcheckbox]_[data-part=item-indicator]]:border-[lengt" +
                  "h:var(--border-width)] [&[role=menuitemcheckbox]_[data-part=item-indicator]]:border-input [&[role" +
                  "=menuitemcheckbox]_[data-part=item-indicator]]:rounded-xs [&[role=menuitemcheckbox][data-state=ch" +
                  "ecked]_[data-part=item-indicator]]:border-primary [&[role=menuitemcheckbox][data-state=checked]_[" +
                  "data-part=item-indicator]]:bg-primary [&[role=menuitemcheckbox][data-state=checked]_[data-part=it" +
                  "em-indicator]]:text-primary-foreground [&[role=menuitemcheckbox][data-state=checked]_[data-part=i" +
                  "tem-indicator]::before]:content-[''] [&[role=menuitemcheckbox][data-state=checked]_[data-part=ite" +
                  "m-indicator]::before]:size-[0.65rem] [&[role=menuitemcheckbox][data-state=checked]_[data-part=ite" +
                  "m-indicator]::before]:bg-current [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-in" +
                  "dicator]::before]:[clip-path:polygon(14%_44%,0_65%,38%_100%,100%_22%,84%_6%,38%_68%)] [&[role=men" +
                  "uitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:border-primary [&[role=menui" +
                  "temcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:bg-primary [&[role=menuitemche" +
                  "ckbox][data-state=indeterminate]_[data-part=item-indicator]]:text-primary-foreground [&[role=menu" +
                  "itemcheckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:content-[''] [&[role=" +
                  "menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:w-[0.65rem] [&[ro" +
                  "le=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:h-[0.12rem] [&" +
                  "[role=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:bg-current " +
                  "[&[role=menuitemradio]_[data-part=item-indicator]]:rounded-full [&[role=menuitemradio][data-state" +
                  "=checked]_[data-part=item-indicator]]:border-[5px] [&[role=menuitemradio][data-state=checked]_[da" +
                  "ta-part=item-indicator]]:border-primary [&[role=menuitemradio][data-state=checked]_[data-part=ite" +
                  "m-indicator]]:bg-card [&_[data-part=item-text]]:grid [&_[data-part=item-text]]:flex-auto [&_[data" +
                  "-part=item-text]]:[min-inline-size:0] [&_[data-part=item-description]]:text-muted-foreground [&_[" +
                  "data-part=item-description]]:text-xs [&_[data-part=item-description]]:[line-height:var(--leading-" +
                  "normal)] [&_[data-part=shortcut]]:ms-auto [&_[data-part=shortcut]]:text-muted-foreground [&_[data" +
                  "-part=shortcut]]:text-xs [&_[data-part=shortcut]]:leading-none [&_[data-part=shortcut]]:whitespac" +
                  "e-nowrap"
                }
              >
                Copy link
              </DropdownMenu.Item>
            </DropdownMenu.SubContent>
          </DropdownMenu.Sub>
        </DropdownMenu.Content>
      </DropdownMenu.Root>
      <MenuBar />
    </>
  );
}
/* app.css */

@layer reset, ui, app, tokens, base, demo, components, utilities, theme;

@import "@gunkin/uiify/styles/reset";

@import "@gunkin/uiify/components/behavior.css";

@import "@gunkin/uiify/styles/tokens";

@import "@gunkin/uiify/styles/tailwind";

@import "tailwindcss/utilities.css";

@theme { --spacing: 0.25rem; --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; }

@source inline('inline-flex items-center gap-xs p-xs border-[length:var(--border-width)] border-solid border-border rounded-lg [corner-shape:squircle] bg-background focus-visible:[outline:none] focus-visible:[box-shadow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(--ring)_16%,_transparent)] [--uiify-button-rim:rgb(255_255_255_/_20%)] [--uiify-button-wash:light-dark(rgb(255_255_255_/_15%),_rgb(255_255_255_/_30%))] relative isolate justify-center [gap:0.375rem] [min-block-size:44px] [min-inline-size:44px] py-0 [padding-inline:1.25rem] border-transparent rounded-[var(--radius-full)] bg-foreground bg-clip-padding text-background text-base font-[number:var(--weight-medium)] leading-6 no-underline cursor-pointer [transition:var(--transition-colors)] before:absolute before:inset-0 before:z-[-1] before:[border-radius:inherit] before:pointer-events-none after:absolute after:inset-0 after:z-[-1] after:[border-radius:inherit] after:pointer-events-none before:[background-color:var(--uiify-button-wash)] before:[filter:blur(10px)] before:[translate:0_-50%] before:[clip-path:inset(50%_0_-50%_0_round_var(--radius-full))] after:[padding:0.5px] after:[background-image:linear-gradient(to_bottom,_var(--uiify-button-rim),_transparent_75%)] after:[mask:linear-gradient(#fff_0_0)_content-box_exclude,_linear-gradient(#fff_0_0)] [&:is([data-size=sm],[data-size=icon-sm])]:[min-block-size:32px] [&:is([data-size=sm],[data-size=icon-sm])]:[min-inline-size:32px] [&:is([data-size=sm],[data-size=icon-sm])]:[padding-inline:0.75rem] [&:is([data-size=sm],[data-size=icon-sm])]:[gap:0.25rem] [&:is([data-size=sm],[data-size=icon-sm])]:text-sm [&:is([data-size=sm],[data-size=icon-sm])]:leading-5 [&:is([data-size=lg],[data-size=icon-lg])]:[min-block-size:56px] [&:is([data-size=lg],[data-size=icon-lg])]:[min-inline-size:56px] [&:is([data-size=lg],[data-size=icon-lg])]:[padding-inline:1.75rem] [&:is([data-size=lg],[data-size=icon-lg])]:text-lg [&:is([data-size=lg],[data-size=icon-lg])]:leading-7 [&[data-size^=icon]]:px-0 [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:hover:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_90%,_var(--background))] active:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_80%,_var(--background))] disabled:opacity-50 disabled:cursor-not-allowed data-[disabled]:opacity-50 data-[disabled]:cursor-not-allowed data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-button-rim:light-dark(rgb(0_0_0_/_5%),_rgb(255_255_255_/_10%))] data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-button-wash:light-dark(rgb(255_255_255_/_20%),_rgb(255_255_255_/_5%))] data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[background-color:color-mix(in_oklch,_var(--foreground)_10%,_transparent)] data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:text-foreground data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-button-rim:color-mix(in_oklch,_var(--foreground)_25%,_transparent)] data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[border-color:color-mix(in_oklch,_var(--foreground)_20%,_transparent)] data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:bg-transparent data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:text-foreground data-[variant=outline]:before:content-none data-[variant=outline]:after:[inset:calc(-1_*_var(--border-width))] data-[variant=outline]:after:[padding:var(--border-width)] data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_16%,_transparent)] data-[variant=ghost]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:bg-transparent data-[variant=ghost]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:text-foreground data-[variant=ghost]:before:content-none data-[variant=ghost]:after:content-none data-[variant=ghost]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_16%,_transparent)] data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_26%,_transparent)] data-[variant=destructive]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:[--uiify-button-wash:rgb(255_255_255_/_15%)] data-[variant=destructive]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:bg-destructive data-[variant=destructive]:text-destructive-foreground data-[variant=destructive]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:active:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--destructive),_black_20%)] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=outline]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_10%,_transparent)] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=ghost]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_10%,_transparent)] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=secondary]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--foreground)_20%,_transparent)] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=destructive]:[&:where(:not(:checked+*,[data-selected],[aria-pressed=true],[aria-current=page]))]:hover:[&:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--destructive),_black_12%)] [&:is([data-selected],[aria-pressed=true],[aria-current=page])]:[--uiify-button-rim:rgb(255_255_255_/_20%)] [&:is([data-selected],[aria-pressed=true],[aria-current=page])]:[--uiify-button-wash:rgb(255_255_255_/_15%)] [&:is([data-selected],[aria-pressed=true],[aria-current=page])]:border-transparent [&:is([data-selected],[aria-pressed=true],[aria-current=page])]:bg-primary [&:is([data-selected],[aria-pressed=true],[aria-current=page])]:text-primary-foreground [:checked+&]:[--uiify-button-rim:rgb(255_255_255_/_20%)] [:checked+&]:[--uiify-button-wash:rgb(255_255_255_/_15%)] [:checked+&]:border-transparent [:checked+&]:bg-primary [:checked+&]:text-primary-foreground [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:[&:is([data-selected],[aria-pressed=true],[aria-current=page]):hover:not(:disabled,[data-disabled])]:[background-color:color-mix(in_oklch,_var(--primary)_88%,_var(--primary-foreground))] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:[:checked:not(:disabled)+&:hover]:[background-color:color-mix(in_oklch,_var(--primary)_88%,_var(--primary-foreground))] [:disabled+&]:opacity-50 [:disabled+&]:cursor-not-allowed [&[hidden]]:hidden data-[variant=link]:px-0 data-[variant=link]:border-0 data-[variant=link]:border-current data-[variant=link]:border-none data-[variant=link]:rounded-none data-[variant=link]:bg-transparent data-[variant=link]:text-primary data-[variant=link]:underline data-[variant=link]:[text-underline-offset:0.2em] data-[variant=link]:active:px-0 data-[variant=link]:active:border-0 data-[variant=link]:active:border-current data-[variant=link]:active:border-none data-[variant=link]:active:rounded-none data-[variant=link]:active:bg-transparent data-[variant=link]:active:text-primary data-[variant=link]:active:underline data-[variant=link]:active:[text-underline-offset:0.2em] data-[variant=link]:[min-inline-size:0] [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:px-0 [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:border-0 [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:border-current [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:border-none [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:rounded-none [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:bg-transparent [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:text-primary [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:underline [@media_(any-hover:_hover)_and_(any-pointer:_fine)]:data-[variant=link]:hover:[text-underline-offset:0.2em] data-[variant=link]:before:content-none data-[variant=link]:after:content-none data-[variant=link]:focus-visible:[outline:2px_solid_var(--ring)] data-[variant=link]:focus-visible:[outline-offset:3px] [[data-uiify-toggle]>input:focus-visible+&]:[box-shadow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(--ring)_16%,_transparent)] [[data-uiify-toggle-group]_[data-part=item]>input:focus-visible+&]:[box-shadow:0_0_0_var(--ring-width)_color-mix(in_oklch,_var(--ring)_16%,_transparent)] [[data-uiify-modal][data-part=close]&]:border-transparent [[data-uiify-modal][data-part=close]&]:[background-color:color-mix(in_oklch,_var(--foreground)_8%,_transparent)] [[data-uiify-modal][data-part=close]&]:text-foreground [[data-uiify-modal][data-part=close]&:hover]:[background-color:color-mix(in_oklch,_var(--foreground)_14%,_transparent)] [[data-uiify-modal][data-part=close]&:active]:[background-color:color-mix(in_oklch,_var(--foreground)_20%,_transparent)] [[data-uiify-pagination]_span&:not([data-disabled])]:cursor-default [[data-uiify-input-group]>[data-part=addon]>&]:[min-inline-size:0] [[data-uiify-input-group]>[data-part=addon]>&]:[max-inline-size:100%] [[data-uiify-input-group]>[data-part=addon]>&]:whitespace-normal [[data-uiify-input-group]>[data-part=addon]>&]:[overflow-wrap:anywhere] [[data-uiify-item-content]>&]:[justify-self:start] [&[data-positioning=native]]:[--uiify-anchor-offset:var(--space-sm)] [&_[data-positioning=native]]:[--uiify-anchor-offset:var(--space-sm)] [&[popover]:popover-open:not([data-positioning=native])]:[margin:revert] [&_[popover]:popover-open:not([data-positioning=native])]:[margin:revert] flex-col [min-inline-size:12rem] [max-block-size:min(24rem,calc(100dvb_-_2rem))] overflow-y-auto overscroll-contain bg-popover text-popover-foreground shadow-popover [transform-origin:var(--transform-origin,top)] data-[state=closed]:hidden [&:where(:not([popover]),:popover-open)]:flex [&[data-part=sub-content]]:[min-inline-size:11rem] [&[data-part=sub-content][data-side=right]]:[--uiify-anchor-offset:0] [&[data-part=sub-content][data-side=right]]:[inset-block-start:calc(anchor(start)_-_var(--space-xs))] motion-safe:[transition:var(--transition-presence)] motion-safe:[&:not(:popover-open)]:opacity-0 motion-safe:[&:not(:popover-open)]:[scale:var(--presence-scale)] motion-safe:starting:[&:popover-open]:opacity-0 motion-safe:starting:[&:popover-open]:[scale:var(--presence-scale)] flex gap-md w-full py-sm px-md border-0 rounded-[calc(var(--radius-lg)_-_var(--space-xs))] bg-transparent text-inherit [font-family:inherit] [font-weight:inherit] text-sm [line-height:var(--leading-normal)] text-start select-none appearance-none hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground focus-visible:outline-none data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground aria-[disabled=true]:opacity-50 aria-[disabled=true]:pointer-events-none data-[disabled]:pointer-events-none data-[danger]:text-destructive data-[danger]:hover:bg-destructive data-[danger]:hover:text-destructive-foreground data-[danger]:focus-visible:bg-destructive data-[danger]:focus-visible:text-destructive-foreground data-[danger]:data-[highlighted]:bg-destructive data-[danger]:data-[highlighted]:text-destructive-foreground [&_[data-part=item-icon]]:inline-grid [&_[data-part=item-icon]]:place-items-center [&_[data-part=item-icon]]:size-5 [&_[data-part=item-icon]]:flex-[0_0_1.25rem] [&_[data-part=item-indicator]]:inline-grid [&_[data-part=item-indicator]]:place-items-center [&_[data-part=item-indicator]]:size-5 [&_[data-part=item-indicator]]:flex-[0_0_1.25rem] [&_[data-part=item-indicator]>svg]:block [&_[data-part=item-indicator]>svg]:size-full [&[role=menuitemcheckbox]_[data-part=item-indicator]]:border-[length:var(--border-width)] [&[role=menuitemcheckbox]_[data-part=item-indicator]]:border-input [&[role=menuitemcheckbox]_[data-part=item-indicator]]:rounded-xs [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:border-primary [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:size-[0.65rem] [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:bg-current [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:[clip-path:polygon(14%_44%,0_65%,38%_100%,100%_22%,84%_6%,38%_68%)] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:border-primary [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:bg-primary [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]]:text-primary-foreground [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:w-[0.65rem] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:h-[0.12rem] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:bg-current [&[role=menuitemradio]_[data-part=item-indicator]]:rounded-full [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:border-[5px] [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:border-primary [&[role=menuitemradio][data-state=checked]_[data-part=item-indicator]]:bg-card [&_[data-part=item-text]]:grid [&_[data-part=item-text]]:flex-auto [&_[data-part=item-text]]:[min-inline-size:0] [&_[data-part=item-description]]:text-muted-foreground [&_[data-part=item-description]]:text-xs [&_[data-part=item-description]]:[line-height:var(--leading-normal)] [&_[data-part=shortcut]]:ms-auto [&_[data-part=shortcut]]:text-muted-foreground [&_[data-part=shortcut]]:text-xs [&_[data-part=shortcut]]:leading-none [&_[data-part=shortcut]]:whitespace-nowrap [block-size:var(--border-width)] [margin-block:var(--space-xs)] [margin-inline:calc(-1_*var(--space-xs))] bg-border py-xs text-muted-foreground text-xs font-[number:var(--weight-semibold)]');

@source inline("before:content-[''] after:content-[''] [&[role=menuitemcheckbox][data-state=checked]_[data-part=item-indicator]::before]:content-[''] [&[role=menuitemcheckbox][data-state=indeterminate]_[data-part=item-indicator]::before]:content-['']");

@layer base { :root { --uiify-control-text: var(--text-sm); } @media (pointer: coarse) { :root { --uiify-control-text: var(--text-base); } } }

/* Authored animation and registered properties used by the Tailwind skin.
 * Visual rules belong in utility recipes; only at-rule definitions live here. */
@layer components {
  @keyframes uiify-presence-in {
    from {
      opacity: 0;
      scale: var(--presence-scale);
    }
  }
}

@layer components {
  @keyframes uiify-presence-out {
    to {
      opacity: 0;
      scale: var(--presence-scale);
    }
  }
}

@property --uiify-spinner-tail {
  syntax: "<angle>";
  inherits: false;
  initial-value: 0deg;
}

@property --uiify-spinner-length {
  syntax: "<angle>";
  inherits: false;
  initial-value: 36deg;
}

@layer components {
  @keyframes uiify-spinner-rotate {
    to {
      transform: rotate(360deg);
    }
  }
}

@layer components {
  @keyframes uiify-spinner-orbit {
    0% {
      --uiify-spinner-tail: 0deg;
      --uiify-spinner-length: 36deg;
    }

    50% {
      --uiify-spinner-tail: 90deg;
      --uiify-spinner-length: 324deg;
    }

    100% {
      --uiify-spinner-tail: 360deg;
      --uiify-spinner-length: 36deg;
    }
  }
}

@layer components {
  @keyframes uiify-skeleton-pulse {
    50% {
      opacity: 0.45;
    }
  }
}

@layer components {
  @keyframes uiify-skeleton-shimmer {
    to {
      background-position: -200% 0;
    }
  }
}

@layer components {
  @keyframes uiify-skeleton-reveal {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
}

@property --candle-body-height {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 0%;
}

@property --candle-body-top {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 50%;
}

@property --candle-slot {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 100%;
}

@property --candle-wick-height {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 0%;
}

@property --candle-wick-top {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 50%;
}

@property --candle-x {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 0%;
}

@property --candle-scale {
  syntax: "<number>";
  inherits: true;
  initial-value: 1;
}

@property --line-y {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 50%;
}

@property --line-prev-y {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 50%;
}

@property --line-count {
  syntax: "<integer>";
  inherits: false;
  initial-value: 1;
}

@property --line-scale {
  syntax: "<number>";
  inherits: true;
  initial-value: 1;
}

@layer components {
  @keyframes uiify-otp-input-caret-blink {
    50% {
      opacity: 0;
    }
  }
}

API

DropdownMenu.Bar

DropdownMenu.Root

DropdownMenu.Trigger

DropdownMenu.Content

DropdownMenu.Group

DropdownMenu.Label

DropdownMenu.Item

DropdownMenu.ItemIcon

DropdownMenu.ItemText

DropdownMenu.ItemDescription

DropdownMenu.Shortcut

DropdownMenu.ItemIndicator

DropdownMenu.Separator

DropdownMenu.CheckboxItem

DropdownMenu.RadioGroup

DropdownMenu.RadioItem

DropdownMenu.Sub

DropdownMenu.SubTrigger

DropdownMenu.SubContent

Teclado

TeclaAção
Enter / Space / ↓Abra o menu e foque o primeiro item
↑ / ↓Mova o foco entre itens, voltando ao início ou ao fim ao atingir uma extremidade
EscapeFeche e devolva o foco ao acionador
Home / EndVá para o primeiro / último item
a–zDigite para encontrar o item correspondente
→ / ←Abra / feche um submenu (invertido em RTL)

Acessibilidade

A janela flutuante nativa abre por clique antes da hidratação; navegação aprimorada por teclado, busca por digitação, itens checkbox/radio e submenus por clique, ponteiro ou setas são ativados após a hidratação. Itens comuns fecham por padrão; itens de escolha ficam abertos. O posicionamento usa âncoras CSS nativas sem tratamento de colisões.

Pontos de integração de estilos

data-partdata-statedata-disableddata-highlighteddata-sidedata-aligndata-checkeddata-indeterminate
Esta página foi traduzida automaticamente e ainda não foi revisada.