.nano-copy {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);

  .nano-copy__value {
    flex: 1;
    min-width: 0;
    padding: var(--space-2) var(--space-3);
    font-family: var(--font-mono);
    font-size: var(--text-sm);
    color: hsl(var(--color-foreground));
    background-color: hsl(var(--color-muted));
    border: 1px solid hsl(var(--color-border));
    border-radius: var(--radius-md);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    user-select: all;
  }

  .nano-copy__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-1-5);
    padding: var(--space-2) var(--space-3);
    font-size: var(--text-sm);
    font-weight: var(--font-medium);
    color: hsl(var(--color-foreground));
    background-color: hsl(var(--color-background));
    border: 1px solid hsl(var(--color-border));
    border-radius: var(--radius-md);
    cursor: pointer;
    transition: background-color var(--duration-fast) var(--ease-default),
                color var(--duration-fast) var(--ease-default);

    svg {
      width: 0.875rem;
      height: 0.875rem;
    }

    &:hover {
      background-color: hsl(var(--color-muted));
    }

    &:focus-visible {
      outline: 2px solid hsl(var(--color-ring));
      outline-offset: 2px;
    }

    &[data-nanoui-copy-copied] {
      color: hsl(var(--color-success));
      border-color: hsl(var(--color-success) / 0.4);
      background-color: hsl(var(--color-success) / 0.08);
    }
  }

  &.nano-copy--block {
    display: flex;
    width: 100%;
  }

  &.nano-copy--inline {
    .nano-copy__value {
      padding: var(--space-0-5) var(--space-2);
      background-color: transparent;
      border: none;
    }
  }
}
